git.y1.nz

gbdk-2020

GameBoy Development Kit
download: https://git.y1.nz/archives/gbdk.tar.gz
README | Files | Log | Refs | LICENSE

docs/api/msx_8h.html

      1 <!-- HTML header for doxygen 1.8.14-->
      2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      3 <html xmlns="http://www.w3.org/1999/xhtml">
      4 <head>
      5 <meta http-equiv="cache-control" content="max-age=86400"/>
      6 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
      7 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
      8 <meta name="generator" content="Doxygen 1.9.2"/>
      9 <meta name="viewport" content="width=device-width, initial-scale=1"/>
     10 <title>GBDK 2020 Docs: gbdk-lib/include/msx/msx.h File Reference</title>
     11 <link href="tabs.css" rel="stylesheet" type="text/css"/>
     12 <script type="text/javascript" src="jquery.js"></script>
     13 <script type="text/javascript" src="dynsections.js"></script>
     14 <link href="navtree.css" rel="stylesheet" type="text/css"/>
     15 <script type="text/javascript" src="resize.js"></script>
     16 <script type="text/javascript" src="navtreedata.js"></script>
     17 <script type="text/javascript" src="navtree.js"></script>
     18 <link href="search/search.css" rel="stylesheet" type="text/css"/>
     19 <script type="text/javascript" src="search/searchdata.js"></script>
     20 <script type="text/javascript" src="search/search.js"></script>
     21 <link href="doxygen.css" rel="stylesheet" type="text/css" />
     22 <link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
     23 <link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
     24 <link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
     25 <!-- BEGIN: doxygen-awesome-css -->
     26         <script type="text/javascript" src="doxygen-awesome-darkmode-toggle.js"></script>
     27         <script type="text/javascript">
     28             DoxygenAwesomeDarkModeToggle.init()
     29         </script>
     30         <script type="text/javascript" src="doxygen-awesome-paragraph-link.js"></script>
     31         <script type="text/javascript">
     32             DoxygenAwesomeParagraphLink.init()
     33         </script>        
     34 <!-- END: doxygen-awesome-css -->
     35 </head>
     36 <body>
     37 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
     38 <div id="titlearea">
     39 <table cellspacing="0" cellpadding="0">
     40  <tbody>
     41  <tr style="height: 56px;">
     42   <td id="projectalign" style="padding-left: 0.5em;">
     43    <div id="projectname">GBDK 2020 Docs
     44    &#160;<span id="projectnumber">4.5.0</span>
     45    </div>
     46    <div id="projectbrief">API Documentation for GBDK 2020</div>
     47   </td>
     48  </tr>
     49  </tbody>
     50 </table>
     51 </div>
     52 <!-- end header part -->
     53 <!-- Generated by Doxygen 1.9.2 -->
     54 <script type="text/javascript">
     55 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     56 var searchBox = new SearchBox("searchBox", "search",'Search','.html');
     57 /* @license-end */
     58 </script>
     59 <script type="text/javascript" src="menudata.js"></script>
     60 <script type="text/javascript" src="menu.js"></script>
     61 <script type="text/javascript">
     62 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     63 $(function() {
     64   initMenu('',true,false,'search.php','Search');
     65   $(document).ready(function() { init_search(); });
     66 });
     67 /* @license-end */
     68 </script>
     69 <div id="main-nav"></div>
     70 </div><!-- top -->
     71 <div id="side-nav" class="ui-resizable side-nav-resizable">
     72   <div id="nav-tree">
     73     <div id="nav-tree-contents">
     74       <div id="nav-sync" class="sync"></div>
     75     </div>
     76   </div>
     77   <div id="splitbar" style="-moz-user-select:none;" 
     78        class="ui-resizable-handle">
     79   </div>
     80 </div>
     81 <script type="text/javascript">
     82 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     83 $(document).ready(function(){initNavTree('msx_8h.html',''); initResizable(); });
     84 /* @license-end */
     85 </script>
     86 <div id="doc-content">
     87 <!-- window showing the filter options -->
     88 <div id="MSearchSelectWindow"
     89      onmouseover="return searchBox.OnSearchSelectShow()"
     90      onmouseout="return searchBox.OnSearchSelectHide()"
     91      onkeydown="return searchBox.OnSearchSelectKey(event)">
     92 </div>
     93 
     94 <!-- iframe showing the search results (closed by default) -->
     95 <div id="MSearchResultsWindow">
     96 <iframe src="javascript:void(0)" frameborder="0" 
     97         name="MSearchResults" id="MSearchResults">
     98 </iframe>
     99 </div>
    100 
    101 <div class="header">
    102   <div class="summary">
    103 <a href="#nested-classes">Data Structures</a> &#124;
    104 <a href="#define-members">Macros</a> &#124;
    105 <a href="#typedef-members">Typedefs</a> &#124;
    106 <a href="#func-members">Functions</a> &#124;
    107 <a href="#var-members">Variables</a>  </div>
    108   <div class="headertitle"><div class="title">msx.h File Reference</div></div>
    109 </div><!--header-->
    110 <div class="contents">
    111 <div class="textblock"><code>#include &lt;types.h&gt;</code><br />
    112 <code>#include &lt;<a class="el" href="stdint_8h_source.html">stdint.h</a>&gt;</code><br />
    113 <code>#include &lt;<a class="el" href="version_8h_source.html">gbdk/version.h</a>&gt;</code><br />
    114 <code>#include &lt;<a class="el" href="msx_2hardware_8h_source.html">msx/hardware.h</a>&gt;</code><br />
    115 </div>
    116 <p><a href="msx_8h_source.html">Go to the source code of this file.</a></p>
    117 <table class="memberdecls">
    118 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
    119 Data Structures</h2></td></tr>
    120 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjoypads__t.html">joypads_t</a></td></tr>
    121 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
    122 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_o_a_m__item__t.html">OAM_item_t</a></td></tr>
    123 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
    124 </table><table class="memberdecls">
    125 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
    126 Macros</h2></td></tr>
    127 <tr class="memitem:MSX"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#MSX">MSX</a></td></tr>
    128 <tr class="separator:MSX"><td class="memSeparator" colspan="2">&#160;</td></tr>
    129 <tr class="memitem:SYSTEM_60HZ"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SYSTEM_60HZ">SYSTEM_60HZ</a>&#160;&#160;&#160;0x00</td></tr>
    130 <tr class="separator:SYSTEM_60HZ"><td class="memSeparator" colspan="2">&#160;</td></tr>
    131 <tr class="memitem:SYSTEM_50HZ"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SYSTEM_50HZ">SYSTEM_50HZ</a>&#160;&#160;&#160;0x01</td></tr>
    132 <tr class="separator:SYSTEM_50HZ"><td class="memSeparator" colspan="2">&#160;</td></tr>
    133 <tr class="memitem:VBK_REG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#VBK_REG">VBK_REG</a>&#160;&#160;&#160;<a class="el" href="sms_2hardware_8h.html#VDP_ATTR_SHIFT">VDP_ATTR_SHIFT</a></td></tr>
    134 <tr class="separator:VBK_REG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    135 <tr class="memitem:J_UP"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_UP">J_UP</a>&#160;&#160;&#160;0b00100000</td></tr>
    136 <tr class="separator:J_UP"><td class="memSeparator" colspan="2">&#160;</td></tr>
    137 <tr class="memitem:J_DOWN"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_DOWN">J_DOWN</a>&#160;&#160;&#160;0b01000000</td></tr>
    138 <tr class="separator:J_DOWN"><td class="memSeparator" colspan="2">&#160;</td></tr>
    139 <tr class="memitem:J_LEFT"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_LEFT">J_LEFT</a>&#160;&#160;&#160;0b00010000</td></tr>
    140 <tr class="separator:J_LEFT"><td class="memSeparator" colspan="2">&#160;</td></tr>
    141 <tr class="memitem:J_RIGHT"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_RIGHT">J_RIGHT</a>&#160;&#160;&#160;0b10000000</td></tr>
    142 <tr class="separator:J_RIGHT"><td class="memSeparator" colspan="2">&#160;</td></tr>
    143 <tr class="memitem:J_A"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_A">J_A</a>&#160;&#160;&#160;0b00000001</td></tr>
    144 <tr class="separator:J_A"><td class="memSeparator" colspan="2">&#160;</td></tr>
    145 <tr class="memitem:J_B"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_B">J_B</a>&#160;&#160;&#160;0b00000100</td></tr>
    146 <tr class="separator:J_B"><td class="memSeparator" colspan="2">&#160;</td></tr>
    147 <tr class="memitem:J_SELECT"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_SELECT">J_SELECT</a>&#160;&#160;&#160;0b00001000</td></tr>
    148 <tr class="separator:J_SELECT"><td class="memSeparator" colspan="2">&#160;</td></tr>
    149 <tr class="memitem:J_START"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#J_START">J_START</a>&#160;&#160;&#160;0b00000010</td></tr>
    150 <tr class="separator:J_START"><td class="memSeparator" colspan="2">&#160;</td></tr>
    151 <tr class="memitem:M_TEXT_OUT"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#M_TEXT_OUT">M_TEXT_OUT</a>&#160;&#160;&#160;0x02U</td></tr>
    152 <tr class="separator:M_TEXT_OUT"><td class="memSeparator" colspan="2">&#160;</td></tr>
    153 <tr class="memitem:M_TEXT_INOUT"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#M_TEXT_INOUT">M_TEXT_INOUT</a>&#160;&#160;&#160;0x03U</td></tr>
    154 <tr class="separator:M_TEXT_INOUT"><td class="memSeparator" colspan="2">&#160;</td></tr>
    155 <tr class="memitem:M_NO_SCROLL"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#M_NO_SCROLL">M_NO_SCROLL</a>&#160;&#160;&#160;0x04U</td></tr>
    156 <tr class="separator:M_NO_SCROLL"><td class="memSeparator" colspan="2">&#160;</td></tr>
    157 <tr class="memitem:M_NO_INTERP"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#M_NO_INTERP">M_NO_INTERP</a>&#160;&#160;&#160;0x08U</td></tr>
    158 <tr class="separator:M_NO_INTERP"><td class="memSeparator" colspan="2">&#160;</td></tr>
    159 <tr class="memitem:S_BANK"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#S_BANK">S_BANK</a>&#160;&#160;&#160;0x01U</td></tr>
    160 <tr class="separator:S_BANK"><td class="memSeparator" colspan="2">&#160;</td></tr>
    161 <tr class="memitem:S_FLIPX"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#S_FLIPX">S_FLIPX</a>&#160;&#160;&#160;0x02U</td></tr>
    162 <tr class="separator:S_FLIPX"><td class="memSeparator" colspan="2">&#160;</td></tr>
    163 <tr class="memitem:S_FLIPY"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#S_FLIPY">S_FLIPY</a>&#160;&#160;&#160;0x04U</td></tr>
    164 <tr class="separator:S_FLIPY"><td class="memSeparator" colspan="2">&#160;</td></tr>
    165 <tr class="memitem:S_PALETTE"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#S_PALETTE">S_PALETTE</a>&#160;&#160;&#160;0x08U</td></tr>
    166 <tr class="separator:S_PALETTE"><td class="memSeparator" colspan="2">&#160;</td></tr>
    167 <tr class="memitem:S_PRIORITY"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#S_PRIORITY">S_PRIORITY</a>&#160;&#160;&#160;0x10U</td></tr>
    168 <tr class="separator:S_PRIORITY"><td class="memSeparator" colspan="2">&#160;</td></tr>
    169 <tr class="memitem:S_PAL"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#S_PAL">S_PAL</a>(n)&#160;&#160;&#160;(((n) &amp; 0x01U) &lt;&lt; 3)</td></tr>
    170 <tr class="separator:S_PAL"><td class="memSeparator" colspan="2">&#160;</td></tr>
    171 <tr class="memitem:__WRITE_VDP_REG_UNSAFE"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#__WRITE_VDP_REG_UNSAFE">__WRITE_VDP_REG_UNSAFE</a>(REG,  v)&#160;&#160;&#160;shadow_##REG=(v),VDP_CMD=(shadow_##REG),VDP_CMD=REG</td></tr>
    172 <tr class="separator:__WRITE_VDP_REG_UNSAFE"><td class="memSeparator" colspan="2">&#160;</td></tr>
    173 <tr class="memitem:__WRITE_VDP_REG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(REG,  v)&#160;&#160;&#160;shadow_##REG=(v);__asm__(&quot;di&quot;);VDP_CMD=(shadow_##REG);VDP_CMD=REG;__asm__(&quot;ei&quot;)</td></tr>
    174 <tr class="separator:__WRITE_VDP_REG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    175 <tr class="memitem:__READ_VDP_REG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(REG)&#160;&#160;&#160;shadow_##REG</td></tr>
    176 <tr class="separator:__READ_VDP_REG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    177 <tr class="memitem:EMPTY_IFLAG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#EMPTY_IFLAG">EMPTY_IFLAG</a>&#160;&#160;&#160;0x00U</td></tr>
    178 <tr class="separator:EMPTY_IFLAG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    179 <tr class="memitem:VBL_IFLAG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#VBL_IFLAG">VBL_IFLAG</a>&#160;&#160;&#160;0x01U</td></tr>
    180 <tr class="separator:VBL_IFLAG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    181 <tr class="memitem:LCD_IFLAG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#LCD_IFLAG">LCD_IFLAG</a>&#160;&#160;&#160;0x02U</td></tr>
    182 <tr class="separator:LCD_IFLAG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    183 <tr class="memitem:TIM_IFLAG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#TIM_IFLAG">TIM_IFLAG</a>&#160;&#160;&#160;0x04U</td></tr>
    184 <tr class="separator:TIM_IFLAG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    185 <tr class="memitem:SIO_IFLAG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SIO_IFLAG">SIO_IFLAG</a>&#160;&#160;&#160;0x08U</td></tr>
    186 <tr class="separator:SIO_IFLAG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    187 <tr class="memitem:JOY_IFLAG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#JOY_IFLAG">JOY_IFLAG</a>&#160;&#160;&#160;0x10U</td></tr>
    188 <tr class="separator:JOY_IFLAG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    189 <tr class="memitem:SCREENWIDTH"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SCREENWIDTH">SCREENWIDTH</a>&#160;&#160;&#160;<a class="el" href="sms_2hardware_8h.html#DEVICE_SCREEN_PX_WIDTH">DEVICE_SCREEN_PX_WIDTH</a></td></tr>
    190 <tr class="separator:SCREENWIDTH"><td class="memSeparator" colspan="2">&#160;</td></tr>
    191 <tr class="memitem:SCREENHEIGHT"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SCREENHEIGHT">SCREENHEIGHT</a>&#160;&#160;&#160;<a class="el" href="sms_2hardware_8h.html#DEVICE_SCREEN_PX_HEIGHT">DEVICE_SCREEN_PX_HEIGHT</a></td></tr>
    192 <tr class="separator:SCREENHEIGHT"><td class="memSeparator" colspan="2">&#160;</td></tr>
    193 <tr class="memitem:MINWNDPOSX"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#MINWNDPOSX">MINWNDPOSX</a>&#160;&#160;&#160;0x00U</td></tr>
    194 <tr class="separator:MINWNDPOSX"><td class="memSeparator" colspan="2">&#160;</td></tr>
    195 <tr class="memitem:MINWNDPOSY"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#MINWNDPOSY">MINWNDPOSY</a>&#160;&#160;&#160;0x00U</td></tr>
    196 <tr class="separator:MINWNDPOSY"><td class="memSeparator" colspan="2">&#160;</td></tr>
    197 <tr class="memitem:MAXWNDPOSX"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#MAXWNDPOSX">MAXWNDPOSX</a>&#160;&#160;&#160;0x00U</td></tr>
    198 <tr class="separator:MAXWNDPOSX"><td class="memSeparator" colspan="2">&#160;</td></tr>
    199 <tr class="memitem:MAXWNDPOSY"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#MAXWNDPOSY">MAXWNDPOSY</a>&#160;&#160;&#160;0x00U</td></tr>
    200 <tr class="separator:MAXWNDPOSY"><td class="memSeparator" colspan="2">&#160;</td></tr>
    201 <tr class="memitem:DISPLAY_ON"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#DISPLAY_ON">DISPLAY_ON</a>&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>) |= <a class="el" href="sms_2hardware_8h.html#R1_DISP_ON">R1_DISP_ON</a>)</td></tr>
    202 <tr class="separator:DISPLAY_ON"><td class="memSeparator" colspan="2">&#160;</td></tr>
    203 <tr class="memitem:DISPLAY_OFF"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#DISPLAY_OFF">DISPLAY_OFF</a>&#160;&#160;&#160;	<a class="el" href="sms_8h.html#display_off">display_off</a>();</td></tr>
    204 <tr class="separator:DISPLAY_OFF"><td class="memSeparator" colspan="2">&#160;</td></tr>
    205 <tr class="memitem:HIDE_LEFT_COLUMN"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#HIDE_LEFT_COLUMN">HIDE_LEFT_COLUMN</a>&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>) |= <a class="el" href="sms_2hardware_8h.html#R0_LCB">R0_LCB</a>)</td></tr>
    206 <tr class="separator:HIDE_LEFT_COLUMN"><td class="memSeparator" colspan="2">&#160;</td></tr>
    207 <tr class="memitem:SHOW_LEFT_COLUMN"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SHOW_LEFT_COLUMN">SHOW_LEFT_COLUMN</a>&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>) &amp;= (~<a class="el" href="sms_2hardware_8h.html#R0_LCB">R0_LCB</a>))</td></tr>
    208 <tr class="separator:SHOW_LEFT_COLUMN"><td class="memSeparator" colspan="2">&#160;</td></tr>
    209 <tr class="memitem:SET_BORDER_COLOR"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SET_BORDER_COLOR">SET_BORDER_COLOR</a>(C)&#160;&#160;&#160;<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R7">VDP_R7</a>, ((C) | 0xf0u))</td></tr>
    210 <tr class="separator:SET_BORDER_COLOR"><td class="memSeparator" colspan="2">&#160;</td></tr>
    211 <tr class="memitem:SHOW_BKG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SHOW_BKG">SHOW_BKG</a></td></tr>
    212 <tr class="separator:SHOW_BKG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    213 <tr class="memitem:HIDE_BKG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#HIDE_BKG">HIDE_BKG</a></td></tr>
    214 <tr class="separator:HIDE_BKG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    215 <tr class="memitem:SHOW_WIN"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SHOW_WIN">SHOW_WIN</a></td></tr>
    216 <tr class="separator:SHOW_WIN"><td class="memSeparator" colspan="2">&#160;</td></tr>
    217 <tr class="memitem:HIDE_WIN"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#HIDE_WIN">HIDE_WIN</a></td></tr>
    218 <tr class="separator:HIDE_WIN"><td class="memSeparator" colspan="2">&#160;</td></tr>
    219 <tr class="memitem:SHOW_SPRITES"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SHOW_SPRITES">SHOW_SPRITES</a></td></tr>
    220 <tr class="separator:SHOW_SPRITES"><td class="memSeparator" colspan="2">&#160;</td></tr>
    221 <tr class="memitem:HIDE_SPRITES"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#HIDE_SPRITES">HIDE_SPRITES</a></td></tr>
    222 <tr class="separator:HIDE_SPRITES"><td class="memSeparator" colspan="2">&#160;</td></tr>
    223 <tr class="memitem:SPRITES_16x16"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SPRITES_16x16">SPRITES_16x16</a>&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>) |= <a class="el" href="msx_2hardware_8h.html#R1_SPR_16X16">R1_SPR_16X16</a>)</td></tr>
    224 <tr class="separator:SPRITES_16x16"><td class="memSeparator" colspan="2">&#160;</td></tr>
    225 <tr class="memitem:SPRITES_8x8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SPRITES_8x8">SPRITES_8x8</a>&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>) &amp;= (~<a class="el" href="msx_2hardware_8h.html#R1_SPR_16X16">R1_SPR_16X16</a>))</td></tr>
    226 <tr class="separator:SPRITES_8x8"><td class="memSeparator" colspan="2">&#160;</td></tr>
    227 <tr class="memitem:DEVICE_SUPPORTS_COLOR"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#DEVICE_SUPPORTS_COLOR">DEVICE_SUPPORTS_COLOR</a>&#160;&#160;&#160;(<a class="el" href="types_8h.html#TRUE">TRUE</a>)</td></tr>
    228 <tr class="separator:DEVICE_SUPPORTS_COLOR"><td class="memSeparator" colspan="2">&#160;</td></tr>
    229 <tr class="memitem:VBL_DONE"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#VBL_DONE">VBL_DONE</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#_vbl_done">_vbl_done</a></td></tr>
    230 <tr class="separator:VBL_DONE"><td class="memSeparator" colspan="2">&#160;</td></tr>
    231 <tr class="memitem:DIV_REG"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#DIV_REG">DIV_REG</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#get_r_reg">get_r_reg</a>()</td></tr>
    232 <tr class="separator:DIV_REG"><td class="memSeparator" colspan="2">&#160;</td></tr>
    233 <tr class="memitem:CURRENT_BANK"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#CURRENT_BANK">CURRENT_BANK</a>&#160;&#160;&#160;<a class="el" href="nes_8h.html#_current_bank">_current_bank</a></td></tr>
    234 <tr class="separator:CURRENT_BANK"><td class="memSeparator" colspan="2">&#160;</td></tr>
    235 <tr class="memitem:BANK"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#BANK">BANK</a>(VARNAME)&#160;&#160;&#160;( (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>) &amp; __bank_ ## VARNAME )</td></tr>
    236 <tr class="separator:BANK"><td class="memSeparator" colspan="2">&#160;</td></tr>
    237 <tr class="memitem:BANKREF"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#BANKREF">BANKREF</a>(VARNAME)</td></tr>
    238 <tr class="separator:BANKREF"><td class="memSeparator" colspan="2">&#160;</td></tr>
    239 <tr class="memitem:BANKREF_EXTERN"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#BANKREF_EXTERN">BANKREF_EXTERN</a>(VARNAME)&#160;&#160;&#160;extern const void __bank_ ## VARNAME;</td></tr>
    240 <tr class="separator:BANKREF_EXTERN"><td class="memSeparator" colspan="2">&#160;</td></tr>
    241 <tr class="memitem:SWITCH_ROM1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SWITCH_ROM1">SWITCH_ROM1</a>&#160;&#160;&#160;<a class="el" href="msx_8h.html#SWITCH_ROM">SWITCH_ROM</a></td></tr>
    242 <tr class="separator:SWITCH_ROM1"><td class="memSeparator" colspan="2">&#160;</td></tr>
    243 <tr class="memitem:SWITCH_ROM2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SWITCH_ROM2">SWITCH_ROM2</a>(<a class="el" href="sms_8h.html#b">b</a>)&#160;&#160;&#160;MAP_FRAME2=(<a class="el" href="sms_8h.html#b">b</a>)</td></tr>
    244 <tr class="separator:SWITCH_ROM2"><td class="memSeparator" colspan="2">&#160;</td></tr>
    245 <tr class="memitem:SWITCH_RAM"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SWITCH_RAM">SWITCH_RAM</a>(<a class="el" href="sms_8h.html#b">b</a>)&#160;&#160;&#160;RAM_CONTROL=((<a class="el" href="sms_8h.html#b">b</a>)&amp;1)?RAM_CONTROL|RAMCTL_BANK:RAM_CONTROL&amp;(~<a class="el" href="sms_2hardware_8h.html#RAMCTL_BANK">RAMCTL_BANK</a>)</td></tr>
    246 <tr class="separator:SWITCH_RAM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    247 <tr class="memitem:ENABLE_RAM"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#ENABLE_RAM">ENABLE_RAM</a>&#160;&#160;&#160;RAM_CONTROL|=<a class="el" href="sms_2hardware_8h.html#RAMCTL_RAM">RAMCTL_RAM</a></td></tr>
    248 <tr class="separator:ENABLE_RAM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    249 <tr class="memitem:DISABLE_RAM"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#DISABLE_RAM">DISABLE_RAM</a>&#160;&#160;&#160;RAM_CONTROL&amp;=(~<a class="el" href="sms_2hardware_8h.html#RAMCTL_RAM">RAMCTL_RAM</a>)</td></tr>
    250 <tr class="separator:DISABLE_RAM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    251 <tr class="memitem:set_bkg_palette_entry"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_palette_entry">set_bkg_palette_entry</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette_entry">set_palette_entry</a></td></tr>
    252 <tr class="separator:set_bkg_palette_entry"><td class="memSeparator" colspan="2">&#160;</td></tr>
    253 <tr class="memitem:set_sprite_palette_entry"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_sprite_palette_entry">set_sprite_palette_entry</a>(palette,  entry,  rgb_data)&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette_entry">set_palette_entry</a>(1,entry,rgb_data)</td></tr>
    254 <tr class="separator:set_sprite_palette_entry"><td class="memSeparator" colspan="2">&#160;</td></tr>
    255 <tr class="memitem:set_bkg_palette"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_palette">set_bkg_palette</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette">set_palette</a></td></tr>
    256 <tr class="separator:set_bkg_palette"><td class="memSeparator" colspan="2">&#160;</td></tr>
    257 <tr class="memitem:set_sprite_palette"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_sprite_palette">set_sprite_palette</a>(first_palette,  nb_palettes,  rgb_data)&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette">set_palette</a>(1,1,rgb_data)</td></tr>
    258 <tr class="separator:set_sprite_palette"><td class="memSeparator" colspan="2">&#160;</td></tr>
    259 <tr class="memitem:COMPAT_PALETTE"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#COMPAT_PALETTE">COMPAT_PALETTE</a>(C0,  C1,  C2,  C3)&#160;&#160;&#160;(((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C3) &lt;&lt; 12) | ((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C2) &lt;&lt; 8) | ((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C1) &lt;&lt; 4) | (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C0))</td></tr>
    260 <tr class="separator:COMPAT_PALETTE"><td class="memSeparator" colspan="2">&#160;</td></tr>
    261 <tr class="memitem:set_bkg_tiles"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_tiles">set_bkg_tiles</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_map">set_tile_map</a></td></tr>
    262 <tr class="separator:set_bkg_tiles"><td class="memSeparator" colspan="2">&#160;</td></tr>
    263 <tr class="memitem:set_win_tiles"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_win_tiles">set_win_tiles</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_map">set_tile_map</a></td></tr>
    264 <tr class="separator:set_win_tiles"><td class="memSeparator" colspan="2">&#160;</td></tr>
    265 <tr class="memitem:fill_bkg_rect"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#fill_bkg_rect">fill_bkg_rect</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#fill_rect">fill_rect</a></td></tr>
    266 <tr class="separator:fill_bkg_rect"><td class="memSeparator" colspan="2">&#160;</td></tr>
    267 <tr class="memitem:fill_win_rect"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#fill_win_rect">fill_win_rect</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#fill_rect">fill_rect</a></td></tr>
    268 <tr class="separator:fill_win_rect"><td class="memSeparator" colspan="2">&#160;</td></tr>
    269 <tr class="memitem:DISABLE_VBL_TRANSFER"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#DISABLE_VBL_TRANSFER">DISABLE_VBL_TRANSFER</a>&#160;&#160;&#160;    <a class="el" href="sms_8h.html#_shadow_OAM_base">_shadow_OAM_base</a> = 0</td></tr>
    270 <tr class="separator:DISABLE_VBL_TRANSFER"><td class="memSeparator" colspan="2">&#160;</td></tr>
    271 <tr class="memitem:ENABLE_VBL_TRANSFER"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#ENABLE_VBL_TRANSFER">ENABLE_VBL_TRANSFER</a>&#160;&#160;&#160;    <a class="el" href="sms_8h.html#_shadow_OAM_base">_shadow_OAM_base</a> = (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>)((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)&amp;<a class="el" href="sms_8h.html#shadow_OAM">shadow_OAM</a> &gt;&gt; 8)</td></tr>
    272 <tr class="separator:ENABLE_VBL_TRANSFER"><td class="memSeparator" colspan="2">&#160;</td></tr>
    273 <tr class="memitem:MAX_HARDWARE_SPRITES"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#MAX_HARDWARE_SPRITES">MAX_HARDWARE_SPRITES</a>&#160;&#160;&#160;32</td></tr>
    274 <tr class="separator:MAX_HARDWARE_SPRITES"><td class="memSeparator" colspan="2">&#160;</td></tr>
    275 <tr class="memitem:HARDWARE_SPRITE_CAN_FLIP_X"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#HARDWARE_SPRITE_CAN_FLIP_X">HARDWARE_SPRITE_CAN_FLIP_X</a>&#160;&#160;&#160;0</td></tr>
    276 <tr class="separator:HARDWARE_SPRITE_CAN_FLIP_X"><td class="memSeparator" colspan="2">&#160;</td></tr>
    277 <tr class="memitem:HARDWARE_SPRITE_CAN_FLIP_Y"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#HARDWARE_SPRITE_CAN_FLIP_Y">HARDWARE_SPRITE_CAN_FLIP_Y</a>&#160;&#160;&#160;0</td></tr>
    278 <tr class="separator:HARDWARE_SPRITE_CAN_FLIP_Y"><td class="memSeparator" colspan="2">&#160;</td></tr>
    279 <tr class="memitem:set_bkg_tile_xy"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_tile_xy">set_bkg_tile_xy</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_xy">set_tile_xy</a></td></tr>
    280 <tr class="separator:set_bkg_tile_xy"><td class="memSeparator" colspan="2">&#160;</td></tr>
    281 <tr class="memitem:set_win_tile_xy"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_win_tile_xy">set_win_tile_xy</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_xy">set_tile_xy</a></td></tr>
    282 <tr class="separator:set_win_tile_xy"><td class="memSeparator" colspan="2">&#160;</td></tr>
    283 <tr class="memitem:get_win_xy_addr"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_win_xy_addr">get_win_xy_addr</a>&#160;&#160;&#160;<a class="el" href="sms_8h.html#get_bkg_xy_addr">get_bkg_xy_addr</a></td></tr>
    284 <tr class="separator:get_win_xy_addr"><td class="memSeparator" colspan="2">&#160;</td></tr>
    285 </table><table class="memberdecls">
    286 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
    287 Typedefs</h2></td></tr>
    288 <tr class="memitem:int_handler"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#int_handler">int_handler</a>) (void) <a class="el" href="asm_2types_8h.html#NONBANKED">NONBANKED</a></td></tr>
    289 <tr class="separator:int_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
    290 <tr class="memitem:OAM_item_t"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_o_a_m__item__t.html">OAM_item_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#OAM_item_t">OAM_item_t</a></td></tr>
    291 <tr class="separator:OAM_item_t"><td class="memSeparator" colspan="2">&#160;</td></tr>
    292 </table><table class="memberdecls">
    293 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
    294 Functions</h2></td></tr>
    295 <tr class="memitem:WRITE_VDP_CMD"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#WRITE_VDP_CMD">WRITE_VDP_CMD</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> cmd) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    296 <tr class="separator:WRITE_VDP_CMD"><td class="memSeparator" colspan="2">&#160;</td></tr>
    297 <tr class="memitem:WRITE_VDP_DATA"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#WRITE_VDP_DATA">WRITE_VDP_DATA</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> data) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    298 <tr class="separator:WRITE_VDP_DATA"><td class="memSeparator" colspan="2">&#160;</td></tr>
    299 <tr class="memitem:mode"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#mode">mode</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> m) <a class="el" href="asm_2types_8h.html#OLDCALL">OLDCALL</a></td></tr>
    300 <tr class="separator:mode"><td class="memSeparator" colspan="2">&#160;</td></tr>
    301 <tr class="memitem:get_mode"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_mode">get_mode</a> (void) <a class="el" href="asm_2types_8h.html#OLDCALL">OLDCALL</a></td></tr>
    302 <tr class="separator:get_mode"><td class="memSeparator" colspan="2">&#160;</td></tr>
    303 <tr class="memitem:get_system"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_system">get_system</a> (void)</td></tr>
    304 <tr class="separator:get_system"><td class="memSeparator" colspan="2">&#160;</td></tr>
    305 <tr class="memitem:set_interrupts"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_interrupts">set_interrupts</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> flags) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    306 <tr class="separator:set_interrupts"><td class="memSeparator" colspan="2">&#160;</td></tr>
    307 <tr class="memitem:remove_VBL"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#remove_VBL">remove_VBL</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    308 <tr class="separator:remove_VBL"><td class="memSeparator" colspan="2">&#160;</td></tr>
    309 <tr class="memitem:remove_LCD"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#remove_LCD">remove_LCD</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    310 <tr class="separator:remove_LCD"><td class="memSeparator" colspan="2">&#160;</td></tr>
    311 <tr class="memitem:remove_TIM"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#remove_TIM">remove_TIM</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    312 <tr class="separator:remove_TIM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    313 <tr class="memitem:remove_SIO"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#remove_SIO">remove_SIO</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    314 <tr class="separator:remove_SIO"><td class="memSeparator" colspan="2">&#160;</td></tr>
    315 <tr class="memitem:remove_JOY"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#remove_JOY">remove_JOY</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    316 <tr class="separator:remove_JOY"><td class="memSeparator" colspan="2">&#160;</td></tr>
    317 <tr class="memitem:add_VBL"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#add_VBL">add_VBL</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#d">d</a></td></tr>
    318 <tr class="separator:add_VBL"><td class="memSeparator" colspan="2">&#160;</td></tr>
    319 <tr class="memitem:add_LCD"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#add_LCD">add_LCD</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    320 <tr class="separator:add_LCD"><td class="memSeparator" colspan="2">&#160;</td></tr>
    321 <tr class="memitem:add_TIM"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#add_TIM">add_TIM</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    322 <tr class="separator:add_TIM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    323 <tr class="memitem:add_SIO"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#add_SIO">add_SIO</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    324 <tr class="separator:add_SIO"><td class="memSeparator" colspan="2">&#160;</td></tr>
    325 <tr class="memitem:add_JOY"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#add_JOY">add_JOY</a> (<a class="el" href="sms_8h.html#int_handler">int_handler</a> <a class="el" href="sms_8h.html#h">h</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    326 <tr class="separator:add_JOY"><td class="memSeparator" colspan="2">&#160;</td></tr>
    327 <tr class="memitem:cancel_pending_interrupts"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#cancel_pending_interrupts">cancel_pending_interrupts</a> (void)</td></tr>
    328 <tr class="separator:cancel_pending_interrupts"><td class="memSeparator" colspan="2">&#160;</td></tr>
    329 <tr class="memitem:move_bkg"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#move_bkg">move_bkg</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y)</td></tr>
    330 <tr class="separator:move_bkg"><td class="memSeparator" colspan="2">&#160;</td></tr>
    331 <tr class="memitem:scroll_bkg"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#scroll_bkg">scroll_bkg</a> (<a class="el" href="stdint_8h.html#int8_t">int8_t</a> x, <a class="el" href="stdint_8h.html#int8_t">int8_t</a> y)</td></tr>
    332 <tr class="separator:scroll_bkg"><td class="memSeparator" colspan="2">&#160;</td></tr>
    333 <tr class="memitem:vsync"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#vsync">vsync</a> (void) <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    334 <tr class="separator:vsync"><td class="memSeparator" colspan="2">&#160;</td></tr>
    335 <tr class="memitem:wait_vbl_done"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#wait_vbl_done">wait_vbl_done</a> (void) <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    336 <tr class="separator:wait_vbl_done"><td class="memSeparator" colspan="2">&#160;</td></tr>
    337 <tr class="memitem:display_off"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#display_off">display_off</a> (void)</td></tr>
    338 <tr class="separator:display_off"><td class="memSeparator" colspan="2">&#160;</td></tr>
    339 <tr class="memitem:refresh_OAM"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#refresh_OAM">refresh_OAM</a> (void)</td></tr>
    340 <tr class="separator:refresh_OAM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    341 <tr class="memitem:get_r_reg"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_r_reg">get_r_reg</a> (void) <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    342 <tr class="separator:get_r_reg"><td class="memSeparator" colspan="2">&#160;</td></tr>
    343 <tr class="memitem:SWITCH_ROM"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SWITCH_ROM">SWITCH_ROM</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> bank) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    344 <tr class="separator:SWITCH_ROM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    345 <tr class="memitem:delay"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#delay">delay</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> <a class="el" href="sms_8h.html#d">d</a>) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a></td></tr>
    346 <tr class="separator:delay"><td class="memSeparator" colspan="2">&#160;</td></tr>
    347 <tr class="memitem:joypad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#joypad">joypad</a> (void) <a class="el" href="asm_2types_8h.html#OLDCALL">OLDCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    348 <tr class="separator:joypad"><td class="memSeparator" colspan="2">&#160;</td></tr>
    349 <tr class="memitem:waitpad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#waitpad">waitpad</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> mask) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    350 <tr class="separator:waitpad"><td class="memSeparator" colspan="2">&#160;</td></tr>
    351 <tr class="memitem:waitpadup"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#waitpadup">waitpadup</a> (void) <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#b">b</a></td></tr>
    352 <tr class="separator:waitpadup"><td class="memSeparator" colspan="2">&#160;</td></tr>
    353 <tr class="memitem:joypad_init"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#joypad_init">joypad_init</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> npads, <a class="el" href="structjoypads__t.html">joypads_t</a> *joypads) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a></td></tr>
    354 <tr class="separator:joypad_init"><td class="memSeparator" colspan="2">&#160;</td></tr>
    355 <tr class="memitem:joypad_ex"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#joypad_ex">joypad_ex</a> (<a class="el" href="structjoypads__t.html">joypads_t</a> *joypads) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_FASTCALL">Z88DK_FASTCALL</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    356 <tr class="separator:joypad_ex"><td class="memSeparator" colspan="2">&#160;</td></tr>
    357 <tr class="memitem:enable_interrupts"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#enable_interrupts">enable_interrupts</a> (void) <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(a</td></tr>
    358 <tr class="separator:enable_interrupts"><td class="memSeparator" colspan="2">&#160;</td></tr>
    359 <tr class="memitem:disable_interrupts"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#disable_interrupts">disable_interrupts</a> (void) <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(a</td></tr>
    360 <tr class="separator:disable_interrupts"><td class="memSeparator" colspan="2">&#160;</td></tr>
    361 <tr class="memitem:set_default_palette"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_default_palette">set_default_palette</a> (void)</td></tr>
    362 <tr class="separator:set_default_palette"><td class="memSeparator" colspan="2">&#160;</td></tr>
    363 <tr class="memitem:cpu_fast"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#cpu_fast">cpu_fast</a> (void)</td></tr>
    364 <tr class="separator:cpu_fast"><td class="memSeparator" colspan="2">&#160;</td></tr>
    365 <tr class="memitem:set_palette_entry"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_palette_entry">set_palette_entry</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> palette, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> entry, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> rgb_data) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    366 <tr class="separator:set_palette_entry"><td class="memSeparator" colspan="2">&#160;</td></tr>
    367 <tr class="memitem:set_palette"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_palette">set_palette</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> first_palette, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb_palettes, const <a class="el" href="cgb_8h.html#palette_color_t">palette_color_t</a> *rgb_data) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a></td></tr>
    368 <tr class="separator:set_palette"><td class="memSeparator" colspan="2">&#160;</td></tr>
    369 <tr class="memitem:set_native_tile_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_native_tile_data">set_native_tile_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a></td></tr>
    370 <tr class="separator:set_native_tile_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    371 <tr class="memitem:set_bkg_4bpp_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_4bpp_data">set_bkg_4bpp_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src)</td></tr>
    372 <tr class="separator:set_bkg_4bpp_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    373 <tr class="memitem:set_sprite_1bpp_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_sprite_1bpp_data">set_sprite_1bpp_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a></td></tr>
    374 <tr class="separator:set_sprite_1bpp_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    375 <tr class="memitem:set_native_sprite_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_native_sprite_data">set_native_sprite_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src)</td></tr>
    376 <tr class="separator:set_native_sprite_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    377 <tr class="memitem:set_2bpp_palette"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_2bpp_palette">set_2bpp_palette</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> palette)</td></tr>
    378 <tr class="separator:set_2bpp_palette"><td class="memSeparator" colspan="2">&#160;</td></tr>
    379 <tr class="memitem:set_bkg_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_data">set_bkg_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src)</td></tr>
    380 <tr class="separator:set_bkg_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    381 <tr class="memitem:set_sprite_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_sprite_data">set_sprite_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src)</td></tr>
    382 <tr class="separator:set_sprite_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    383 <tr class="memitem:set_1bpp_colors"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_1bpp_colors">set_1bpp_colors</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> fgcolor, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> bgcolor)</td></tr>
    384 <tr class="separator:set_1bpp_colors"><td class="memSeparator" colspan="2">&#160;</td></tr>
    385 <tr class="memitem:set_tile_1bpp_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_tile_1bpp_data">set_tile_1bpp_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> colors) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    386 <tr class="separator:set_tile_1bpp_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    387 <tr class="memitem:set_bkg_1bpp_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_1bpp_data">set_bkg_1bpp_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> start, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> ntiles, const void *src)</td></tr>
    388 <tr class="separator:set_bkg_1bpp_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    389 <tr class="memitem:set_data"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_data">set_data</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> dst, const void *src, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> size) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    390 <tr class="separator:set_data"><td class="memSeparator" colspan="2">&#160;</td></tr>
    391 <tr class="memitem:vmemcpy"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#vmemcpy">vmemcpy</a> (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> dst, const void *src, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> size) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    392 <tr class="separator:vmemcpy"><td class="memSeparator" colspan="2">&#160;</td></tr>
    393 <tr class="memitem:set_tile_map"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_tile_map">set_tile_map</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *tiles) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    394 <tr class="separator:set_tile_map"><td class="memSeparator" colspan="2">&#160;</td></tr>
    395 <tr class="memitem:set_bkg_based_tiles"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_based_tiles">set_bkg_based_tiles</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *tiles, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> base_tile)</td></tr>
    396 <tr class="separator:set_bkg_based_tiles"><td class="memSeparator" colspan="2">&#160;</td></tr>
    397 <tr class="memitem:set_win_based_tiles"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_win_based_tiles">set_win_based_tiles</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *tiles, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> base_tile)</td></tr>
    398 <tr class="separator:set_win_based_tiles"><td class="memSeparator" colspan="2">&#160;</td></tr>
    399 <tr class="memitem:set_tile_submap"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_tile_submap">set_tile_submap</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> map_w, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *map) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    400 <tr class="separator:set_tile_submap"><td class="memSeparator" colspan="2">&#160;</td></tr>
    401 <tr class="memitem:set_tile_submap_compat"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_tile_submap_compat">set_tile_submap_compat</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> map_w, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *map) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    402 <tr class="separator:set_tile_submap_compat"><td class="memSeparator" colspan="2">&#160;</td></tr>
    403 <tr class="memitem:set_bkg_submap"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_submap">set_bkg_submap</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *map, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> map_w)</td></tr>
    404 <tr class="separator:set_bkg_submap"><td class="memSeparator" colspan="2">&#160;</td></tr>
    405 <tr class="memitem:set_win_submap"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_win_submap">set_win_submap</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *map, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> map_w)</td></tr>
    406 <tr class="separator:set_win_submap"><td class="memSeparator" colspan="2">&#160;</td></tr>
    407 <tr class="memitem:set_bkg_based_submap"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_bkg_based_submap">set_bkg_based_submap</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *map, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> map_w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> base_tile)</td></tr>
    408 <tr class="separator:set_bkg_based_submap"><td class="memSeparator" colspan="2">&#160;</td></tr>
    409 <tr class="memitem:set_win_based_submap"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_win_based_submap">set_win_based_submap</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *map, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> map_w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> base_tile)</td></tr>
    410 <tr class="separator:set_win_based_submap"><td class="memSeparator" colspan="2">&#160;</td></tr>
    411 <tr class="memitem:fill_rect"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#fill_rect">fill_rect</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> w, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> <a class="el" href="sms_8h.html#h">h</a>, const <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> tile) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    412 <tr class="separator:fill_rect"><td class="memSeparator" colspan="2">&#160;</td></tr>
    413 <tr class="memitem:SET_SHADOW_OAM_ADDRESS"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#SET_SHADOW_OAM_ADDRESS">SET_SHADOW_OAM_ADDRESS</a> (void *address)</td></tr>
    414 <tr class="separator:SET_SHADOW_OAM_ADDRESS"><td class="memSeparator" colspan="2">&#160;</td></tr>
    415 <tr class="memitem:set_sprite_tile"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_sprite_tile">set_sprite_tile</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> tile)</td></tr>
    416 <tr class="separator:set_sprite_tile"><td class="memSeparator" colspan="2">&#160;</td></tr>
    417 <tr class="memitem:get_sprite_tile"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_sprite_tile">get_sprite_tile</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb)</td></tr>
    418 <tr class="separator:get_sprite_tile"><td class="memSeparator" colspan="2">&#160;</td></tr>
    419 <tr class="memitem:set_sprite_prop"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_sprite_prop">set_sprite_prop</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> prop)</td></tr>
    420 <tr class="separator:set_sprite_prop"><td class="memSeparator" colspan="2">&#160;</td></tr>
    421 <tr class="memitem:get_sprite_prop"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_sprite_prop">get_sprite_prop</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb)</td></tr>
    422 <tr class="separator:get_sprite_prop"><td class="memSeparator" colspan="2">&#160;</td></tr>
    423 <tr class="memitem:move_sprite"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#move_sprite">move_sprite</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y)</td></tr>
    424 <tr class="separator:move_sprite"><td class="memSeparator" colspan="2">&#160;</td></tr>
    425 <tr class="memitem:scroll_sprite"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#scroll_sprite">scroll_sprite</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb, <a class="el" href="stdint_8h.html#int8_t">int8_t</a> x, <a class="el" href="stdint_8h.html#int8_t">int8_t</a> y)</td></tr>
    426 <tr class="separator:scroll_sprite"><td class="memSeparator" colspan="2">&#160;</td></tr>
    427 <tr class="memitem:hide_sprite"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#hide_sprite">hide_sprite</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> nb)</td></tr>
    428 <tr class="separator:hide_sprite"><td class="memSeparator" colspan="2">&#160;</td></tr>
    429 <tr class="memitem:set_vram_byte"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_vram_byte">set_vram_byte</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *addr, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> v) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    430 <tr class="separator:set_vram_byte"><td class="memSeparator" colspan="2">&#160;</td></tr>
    431 <tr class="memitem:set_attributed_tile_xy"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_attributed_tile_xy">set_attributed_tile_xy</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> t) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    432 <tr class="separator:set_attributed_tile_xy"><td class="memSeparator" colspan="2">&#160;</td></tr>
    433 <tr class="memitem:set_tile_xy"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#set_tile_xy">set_tile_xy</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> t) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    434 <tr class="separator:set_tile_xy"><td class="memSeparator" colspan="2">&#160;</td></tr>
    435 <tr class="memitem:get_bkg_xy_addr"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#get_bkg_xy_addr">get_bkg_xy_addr</a> (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> x, <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> y) <a class="el" href="asm_2z80_2types_8h.html#Z88DK_CALLEE">Z88DK_CALLEE</a> <a class="el" href="asm_2types_8h.html#PRESERVES_REGS">PRESERVES_REGS</a>(<a class="el" href="sms_8h.html#iyh">iyh</a></td></tr>
    436 <tr class="separator:get_bkg_xy_addr"><td class="memSeparator" colspan="2">&#160;</td></tr>
    437 </table><table class="memberdecls">
    438 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
    439 Variables</h2></td></tr>
    440 <tr class="memitem:_SYSTEM"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_SYSTEM">_SYSTEM</a></td></tr>
    441 <tr class="separator:_SYSTEM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    442 <tr class="memitem:c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#c">c</a></td></tr>
    443 <tr class="separator:c"><td class="memSeparator" colspan="2">&#160;</td></tr>
    444 <tr class="memitem:d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#d">d</a></td></tr>
    445 <tr class="separator:d"><td class="memSeparator" colspan="2">&#160;</td></tr>
    446 <tr class="memitem:e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#e">e</a></td></tr>
    447 <tr class="separator:e"><td class="memSeparator" colspan="2">&#160;</td></tr>
    448 <tr class="memitem:iyh"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#iyh">iyh</a></td></tr>
    449 <tr class="separator:iyh"><td class="memSeparator" colspan="2">&#160;</td></tr>
    450 <tr class="memitem:iyl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#iyl">iyl</a></td></tr>
    451 <tr class="separator:iyl"><td class="memSeparator" colspan="2">&#160;</td></tr>
    452 <tr class="memitem:h"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#h">h</a></td></tr>
    453 <tr class="separator:h"><td class="memSeparator" colspan="2">&#160;</td></tr>
    454 <tr class="memitem:l"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#l">l</a></td></tr>
    455 <tr class="separator:l"><td class="memSeparator" colspan="2">&#160;</td></tr>
    456 <tr class="memitem:sys_time"><td class="memItemLeft" align="right" valign="top">volatile <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#sys_time">sys_time</a></td></tr>
    457 <tr class="separator:sys_time"><td class="memSeparator" colspan="2">&#160;</td></tr>
    458 <tr class="memitem:_vbl_done"><td class="memItemLeft" align="right" valign="top">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_vbl_done">_vbl_done</a></td></tr>
    459 <tr class="separator:_vbl_done"><td class="memSeparator" colspan="2">&#160;</td></tr>
    460 <tr class="memitem:_current_bank"><td class="memItemLeft" align="right" valign="top">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_current_bank">_current_bank</a></td></tr>
    461 <tr class="separator:_current_bank"><td class="memSeparator" colspan="2">&#160;</td></tr>
    462 <tr class="memitem:b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#b">b</a></td></tr>
    463 <tr class="separator:b"><td class="memSeparator" colspan="2">&#160;</td></tr>
    464 <tr class="memitem:_current_2bpp_palette"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_current_2bpp_palette">_current_2bpp_palette</a></td></tr>
    465 <tr class="separator:_current_2bpp_palette"><td class="memSeparator" colspan="2">&#160;</td></tr>
    466 <tr class="memitem:_current_1bpp_colors"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_current_1bpp_colors">_current_1bpp_colors</a></td></tr>
    467 <tr class="separator:_current_1bpp_colors"><td class="memSeparator" colspan="2">&#160;</td></tr>
    468 <tr class="memitem:_map_tile_offset"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_map_tile_offset">_map_tile_offset</a></td></tr>
    469 <tr class="separator:_map_tile_offset"><td class="memSeparator" colspan="2">&#160;</td></tr>
    470 <tr class="memitem:_submap_tile_offset"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_submap_tile_offset">_submap_tile_offset</a></td></tr>
    471 <tr class="separator:_submap_tile_offset"><td class="memSeparator" colspan="2">&#160;</td></tr>
    472 <tr class="memitem:shadow_OAM"><td class="memItemLeft" align="right" valign="top">volatile struct <a class="el" href="struct_o_a_m__item__t.html">OAM_item_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#shadow_OAM">shadow_OAM</a> []</td></tr>
    473 <tr class="separator:shadow_OAM"><td class="memSeparator" colspan="2">&#160;</td></tr>
    474 <tr class="memitem:_shadow_OAM_base"><td class="memItemLeft" align="right" valign="top">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_shadow_OAM_base">_shadow_OAM_base</a></td></tr>
    475 <tr class="separator:_shadow_OAM_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
    476 <tr class="memitem:_shadow_OAM_OFF"><td class="memItemLeft" align="right" valign="top">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="msx_8h.html#_shadow_OAM_OFF">_shadow_OAM_OFF</a></td></tr>
    477 <tr class="separator:_shadow_OAM_OFF"><td class="memSeparator" colspan="2">&#160;</td></tr>
    478 </table>
    479 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
    480 <div class="textblock"><p >MSX specific functions. </p>
    481 </div><h2 class="groupheader">Macro Definition Documentation</h2>
    482 <a id="MSX" name="MSX"></a>
    483 <h2 class="memtitle"><span class="permalink"><a href="#MSX">&#9670;&nbsp;</a></span>MSX</h2>
    484 
    485 <div class="memitem">
    486 <div class="memproto">
    487       <table class="memname">
    488         <tr>
    489           <td class="memname">#define MSX</td>
    490         </tr>
    491       </table>
    492 </div><div class="memdoc">
    493 
    494 </div>
    495 </div>
    496 <a id="SYSTEM_60HZ" name="SYSTEM_60HZ"></a>
    497 <h2 class="memtitle"><span class="permalink"><a href="#SYSTEM_60HZ">&#9670;&nbsp;</a></span>SYSTEM_60HZ</h2>
    498 
    499 <div class="memitem">
    500 <div class="memproto">
    501       <table class="memname">
    502         <tr>
    503           <td class="memname">#define SYSTEM_60HZ&#160;&#160;&#160;0x00</td>
    504         </tr>
    505       </table>
    506 </div><div class="memdoc">
    507 
    508 </div>
    509 </div>
    510 <a id="SYSTEM_50HZ" name="SYSTEM_50HZ"></a>
    511 <h2 class="memtitle"><span class="permalink"><a href="#SYSTEM_50HZ">&#9670;&nbsp;</a></span>SYSTEM_50HZ</h2>
    512 
    513 <div class="memitem">
    514 <div class="memproto">
    515       <table class="memname">
    516         <tr>
    517           <td class="memname">#define SYSTEM_50HZ&#160;&#160;&#160;0x01</td>
    518         </tr>
    519       </table>
    520 </div><div class="memdoc">
    521 
    522 </div>
    523 </div>
    524 <a id="VBK_REG" name="VBK_REG"></a>
    525 <h2 class="memtitle"><span class="permalink"><a href="#VBK_REG">&#9670;&nbsp;</a></span>VBK_REG</h2>
    526 
    527 <div class="memitem">
    528 <div class="memproto">
    529       <table class="memname">
    530         <tr>
    531           <td class="memname">#define VBK_REG&#160;&#160;&#160;<a class="el" href="sms_2hardware_8h.html#VDP_ATTR_SHIFT">VDP_ATTR_SHIFT</a></td>
    532         </tr>
    533       </table>
    534 </div><div class="memdoc">
    535 
    536 </div>
    537 </div>
    538 <a id="J_UP" name="J_UP"></a>
    539 <h2 class="memtitle"><span class="permalink"><a href="#J_UP">&#9670;&nbsp;</a></span>J_UP</h2>
    540 
    541 <div class="memitem">
    542 <div class="memproto">
    543       <table class="memname">
    544         <tr>
    545           <td class="memname">#define J_UP&#160;&#160;&#160;0b00100000</td>
    546         </tr>
    547       </table>
    548 </div><div class="memdoc">
    549 <p >Joypad bits. A logical OR of these is used in the wait_pad and joypad functions. For example, to see if the B button is pressed try</p>
    550 <p >uint8_t keys; keys = <a class="el" href="msx_8h.html#joypad">joypad()</a>; if (keys &amp; J_B) { ... }</p>
    551 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#joypad">joypad</a> </dd></dl>
    552 
    553 </div>
    554 </div>
    555 <a id="J_DOWN" name="J_DOWN"></a>
    556 <h2 class="memtitle"><span class="permalink"><a href="#J_DOWN">&#9670;&nbsp;</a></span>J_DOWN</h2>
    557 
    558 <div class="memitem">
    559 <div class="memproto">
    560       <table class="memname">
    561         <tr>
    562           <td class="memname">#define J_DOWN&#160;&#160;&#160;0b01000000</td>
    563         </tr>
    564       </table>
    565 </div><div class="memdoc">
    566 
    567 </div>
    568 </div>
    569 <a id="J_LEFT" name="J_LEFT"></a>
    570 <h2 class="memtitle"><span class="permalink"><a href="#J_LEFT">&#9670;&nbsp;</a></span>J_LEFT</h2>
    571 
    572 <div class="memitem">
    573 <div class="memproto">
    574       <table class="memname">
    575         <tr>
    576           <td class="memname">#define J_LEFT&#160;&#160;&#160;0b00010000</td>
    577         </tr>
    578       </table>
    579 </div><div class="memdoc">
    580 
    581 </div>
    582 </div>
    583 <a id="J_RIGHT" name="J_RIGHT"></a>
    584 <h2 class="memtitle"><span class="permalink"><a href="#J_RIGHT">&#9670;&nbsp;</a></span>J_RIGHT</h2>
    585 
    586 <div class="memitem">
    587 <div class="memproto">
    588       <table class="memname">
    589         <tr>
    590           <td class="memname">#define J_RIGHT&#160;&#160;&#160;0b10000000</td>
    591         </tr>
    592       </table>
    593 </div><div class="memdoc">
    594 
    595 </div>
    596 </div>
    597 <a id="J_A" name="J_A"></a>
    598 <h2 class="memtitle"><span class="permalink"><a href="#J_A">&#9670;&nbsp;</a></span>J_A</h2>
    599 
    600 <div class="memitem">
    601 <div class="memproto">
    602       <table class="memname">
    603         <tr>
    604           <td class="memname">#define J_A&#160;&#160;&#160;0b00000001</td>
    605         </tr>
    606       </table>
    607 </div><div class="memdoc">
    608 
    609 </div>
    610 </div>
    611 <a id="J_B" name="J_B"></a>
    612 <h2 class="memtitle"><span class="permalink"><a href="#J_B">&#9670;&nbsp;</a></span>J_B</h2>
    613 
    614 <div class="memitem">
    615 <div class="memproto">
    616       <table class="memname">
    617         <tr>
    618           <td class="memname">#define J_B&#160;&#160;&#160;0b00000100</td>
    619         </tr>
    620       </table>
    621 </div><div class="memdoc">
    622 
    623 </div>
    624 </div>
    625 <a id="J_SELECT" name="J_SELECT"></a>
    626 <h2 class="memtitle"><span class="permalink"><a href="#J_SELECT">&#9670;&nbsp;</a></span>J_SELECT</h2>
    627 
    628 <div class="memitem">
    629 <div class="memproto">
    630       <table class="memname">
    631         <tr>
    632           <td class="memname">#define J_SELECT&#160;&#160;&#160;0b00001000</td>
    633         </tr>
    634       </table>
    635 </div><div class="memdoc">
    636 
    637 </div>
    638 </div>
    639 <a id="J_START" name="J_START"></a>
    640 <h2 class="memtitle"><span class="permalink"><a href="#J_START">&#9670;&nbsp;</a></span>J_START</h2>
    641 
    642 <div class="memitem">
    643 <div class="memproto">
    644       <table class="memname">
    645         <tr>
    646           <td class="memname">#define J_START&#160;&#160;&#160;0b00000010</td>
    647         </tr>
    648       </table>
    649 </div><div class="memdoc">
    650 
    651 </div>
    652 </div>
    653 <a id="M_TEXT_OUT" name="M_TEXT_OUT"></a>
    654 <h2 class="memtitle"><span class="permalink"><a href="#M_TEXT_OUT">&#9670;&nbsp;</a></span>M_TEXT_OUT</h2>
    655 
    656 <div class="memitem">
    657 <div class="memproto">
    658       <table class="memname">
    659         <tr>
    660           <td class="memname">#define M_TEXT_OUT&#160;&#160;&#160;0x02U</td>
    661         </tr>
    662       </table>
    663 </div><div class="memdoc">
    664 <p >Screen modes. Normally used by internal functions only. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#mode">mode()</a> </dd></dl>
    665 
    666 </div>
    667 </div>
    668 <a id="M_TEXT_INOUT" name="M_TEXT_INOUT"></a>
    669 <h2 class="memtitle"><span class="permalink"><a href="#M_TEXT_INOUT">&#9670;&nbsp;</a></span>M_TEXT_INOUT</h2>
    670 
    671 <div class="memitem">
    672 <div class="memproto">
    673       <table class="memname">
    674         <tr>
    675           <td class="memname">#define M_TEXT_INOUT&#160;&#160;&#160;0x03U</td>
    676         </tr>
    677       </table>
    678 </div><div class="memdoc">
    679 
    680 </div>
    681 </div>
    682 <a id="M_NO_SCROLL" name="M_NO_SCROLL"></a>
    683 <h2 class="memtitle"><span class="permalink"><a href="#M_NO_SCROLL">&#9670;&nbsp;</a></span>M_NO_SCROLL</h2>
    684 
    685 <div class="memitem">
    686 <div class="memproto">
    687       <table class="memname">
    688         <tr>
    689           <td class="memname">#define M_NO_SCROLL&#160;&#160;&#160;0x04U</td>
    690         </tr>
    691       </table>
    692 </div><div class="memdoc">
    693 <p >Set this in addition to the others to disable scrolling</p>
    694 <p >If scrolling is disabled, the cursor returns to (0,0) </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#mode">mode()</a> </dd></dl>
    695 
    696 </div>
    697 </div>
    698 <a id="M_NO_INTERP" name="M_NO_INTERP"></a>
    699 <h2 class="memtitle"><span class="permalink"><a href="#M_NO_INTERP">&#9670;&nbsp;</a></span>M_NO_INTERP</h2>
    700 
    701 <div class="memitem">
    702 <div class="memproto">
    703       <table class="memname">
    704         <tr>
    705           <td class="memname">#define M_NO_INTERP&#160;&#160;&#160;0x08U</td>
    706         </tr>
    707       </table>
    708 </div><div class="memdoc">
    709 <p >Set this to disable interpretation </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#mode">mode()</a> </dd></dl>
    710 
    711 </div>
    712 </div>
    713 <a id="S_BANK" name="S_BANK"></a>
    714 <h2 class="memtitle"><span class="permalink"><a href="#S_BANK">&#9670;&nbsp;</a></span>S_BANK</h2>
    715 
    716 <div class="memitem">
    717 <div class="memproto">
    718       <table class="memname">
    719         <tr>
    720           <td class="memname">#define S_BANK&#160;&#160;&#160;0x01U</td>
    721         </tr>
    722       </table>
    723 </div><div class="memdoc">
    724 <p >The nineth bit of the tile id </p>
    725 
    726 </div>
    727 </div>
    728 <a id="S_FLIPX" name="S_FLIPX"></a>
    729 <h2 class="memtitle"><span class="permalink"><a href="#S_FLIPX">&#9670;&nbsp;</a></span>S_FLIPX</h2>
    730 
    731 <div class="memitem">
    732 <div class="memproto">
    733       <table class="memname">
    734         <tr>
    735           <td class="memname">#define S_FLIPX&#160;&#160;&#160;0x02U</td>
    736         </tr>
    737       </table>
    738 </div><div class="memdoc">
    739 <p >If set the background tile will be flipped horizontally. </p>
    740 
    741 </div>
    742 </div>
    743 <a id="S_FLIPY" name="S_FLIPY"></a>
    744 <h2 class="memtitle"><span class="permalink"><a href="#S_FLIPY">&#9670;&nbsp;</a></span>S_FLIPY</h2>
    745 
    746 <div class="memitem">
    747 <div class="memproto">
    748       <table class="memname">
    749         <tr>
    750           <td class="memname">#define S_FLIPY&#160;&#160;&#160;0x04U</td>
    751         </tr>
    752       </table>
    753 </div><div class="memdoc">
    754 <p >If set the background tile will be flipped vertically. </p>
    755 
    756 </div>
    757 </div>
    758 <a id="S_PALETTE" name="S_PALETTE"></a>
    759 <h2 class="memtitle"><span class="permalink"><a href="#S_PALETTE">&#9670;&nbsp;</a></span>S_PALETTE</h2>
    760 
    761 <div class="memitem">
    762 <div class="memproto">
    763       <table class="memname">
    764         <tr>
    765           <td class="memname">#define S_PALETTE&#160;&#160;&#160;0x08U</td>
    766         </tr>
    767       </table>
    768 </div><div class="memdoc">
    769 <p >If set the background tile palette. </p>
    770 
    771 </div>
    772 </div>
    773 <a id="S_PRIORITY" name="S_PRIORITY"></a>
    774 <h2 class="memtitle"><span class="permalink"><a href="#S_PRIORITY">&#9670;&nbsp;</a></span>S_PRIORITY</h2>
    775 
    776 <div class="memitem">
    777 <div class="memproto">
    778       <table class="memname">
    779         <tr>
    780           <td class="memname">#define S_PRIORITY&#160;&#160;&#160;0x10U</td>
    781         </tr>
    782       </table>
    783 </div><div class="memdoc">
    784 <p >If set the background tile priority. </p>
    785 
    786 </div>
    787 </div>
    788 <a id="S_PAL" name="S_PAL"></a>
    789 <h2 class="memtitle"><span class="permalink"><a href="#S_PAL">&#9670;&nbsp;</a></span>S_PAL</h2>
    790 
    791 <div class="memitem">
    792 <div class="memproto">
    793       <table class="memname">
    794         <tr>
    795           <td class="memname">#define S_PAL</td>
    796           <td>(</td>
    797           <td class="paramtype">&#160;</td>
    798           <td class="paramname">n</td><td>)</td>
    799           <td>&#160;&#160;&#160;(((n) &amp; 0x01U) &lt;&lt; 3)</td>
    800         </tr>
    801       </table>
    802 </div><div class="memdoc">
    803 <p >Defines how palette number is encoded in OAM. Required for the png2asset tool's metasprite output. </p>
    804 
    805 </div>
    806 </div>
    807 <a id="__WRITE_VDP_REG_UNSAFE" name="__WRITE_VDP_REG_UNSAFE"></a>
    808 <h2 class="memtitle"><span class="permalink"><a href="#__WRITE_VDP_REG_UNSAFE">&#9670;&nbsp;</a></span>__WRITE_VDP_REG_UNSAFE</h2>
    809 
    810 <div class="memitem">
    811 <div class="memproto">
    812       <table class="memname">
    813         <tr>
    814           <td class="memname">#define __WRITE_VDP_REG_UNSAFE</td>
    815           <td>(</td>
    816           <td class="paramtype">&#160;</td>
    817           <td class="paramname">REG, </td>
    818         </tr>
    819         <tr>
    820           <td class="paramkey"></td>
    821           <td></td>
    822           <td class="paramtype">&#160;</td>
    823           <td class="paramname">v&#160;</td>
    824         </tr>
    825         <tr>
    826           <td></td>
    827           <td>)</td>
    828           <td></td><td>&#160;&#160;&#160;shadow_##REG=(v),VDP_CMD=(shadow_##REG),VDP_CMD=REG</td>
    829         </tr>
    830       </table>
    831 </div><div class="memdoc">
    832 
    833 </div>
    834 </div>
    835 <a id="__WRITE_VDP_REG" name="__WRITE_VDP_REG"></a>
    836 <h2 class="memtitle"><span class="permalink"><a href="#__WRITE_VDP_REG">&#9670;&nbsp;</a></span>__WRITE_VDP_REG</h2>
    837 
    838 <div class="memitem">
    839 <div class="memproto">
    840       <table class="memname">
    841         <tr>
    842           <td class="memname">#define __WRITE_VDP_REG</td>
    843           <td>(</td>
    844           <td class="paramtype">&#160;</td>
    845           <td class="paramname">REG, </td>
    846         </tr>
    847         <tr>
    848           <td class="paramkey"></td>
    849           <td></td>
    850           <td class="paramtype">&#160;</td>
    851           <td class="paramname">v&#160;</td>
    852         </tr>
    853         <tr>
    854           <td></td>
    855           <td>)</td>
    856           <td></td><td>&#160;&#160;&#160;shadow_##REG=(v);__asm__(&quot;di&quot;);VDP_CMD=(shadow_##REG);VDP_CMD=REG;__asm__(&quot;ei&quot;)</td>
    857         </tr>
    858       </table>
    859 </div><div class="memdoc">
    860 
    861 </div>
    862 </div>
    863 <a id="__READ_VDP_REG" name="__READ_VDP_REG"></a>
    864 <h2 class="memtitle"><span class="permalink"><a href="#__READ_VDP_REG">&#9670;&nbsp;</a></span>__READ_VDP_REG</h2>
    865 
    866 <div class="memitem">
    867 <div class="memproto">
    868       <table class="memname">
    869         <tr>
    870           <td class="memname">#define __READ_VDP_REG</td>
    871           <td>(</td>
    872           <td class="paramtype">&#160;</td>
    873           <td class="paramname">REG</td><td>)</td>
    874           <td>&#160;&#160;&#160;shadow_##REG</td>
    875         </tr>
    876       </table>
    877 </div><div class="memdoc">
    878 
    879 </div>
    880 </div>
    881 <a id="EMPTY_IFLAG" name="EMPTY_IFLAG"></a>
    882 <h2 class="memtitle"><span class="permalink"><a href="#EMPTY_IFLAG">&#9670;&nbsp;</a></span>EMPTY_IFLAG</h2>
    883 
    884 <div class="memitem">
    885 <div class="memproto">
    886       <table class="memname">
    887         <tr>
    888           <td class="memname">#define EMPTY_IFLAG&#160;&#160;&#160;0x00U</td>
    889         </tr>
    890       </table>
    891 </div><div class="memdoc">
    892 <p >Disable calling of interrupt service routines </p>
    893 
    894 </div>
    895 </div>
    896 <a id="VBL_IFLAG" name="VBL_IFLAG"></a>
    897 <h2 class="memtitle"><span class="permalink"><a href="#VBL_IFLAG">&#9670;&nbsp;</a></span>VBL_IFLAG</h2>
    898 
    899 <div class="memitem">
    900 <div class="memproto">
    901       <table class="memname">
    902         <tr>
    903           <td class="memname">#define VBL_IFLAG&#160;&#160;&#160;0x01U</td>
    904         </tr>
    905       </table>
    906 </div><div class="memdoc">
    907 <p >VBlank Interrupt occurs at the start of the vertical blank.</p>
    908 <p >During this period the video ram may be freely accessed. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#set_interrupts">set_interrupts()</a>, </dd>
    909 <dd>
    910 <a class="el" href="msx_8h.html#add_VBL">add_VBL</a> </dd></dl>
    911 
    912 </div>
    913 </div>
    914 <a id="LCD_IFLAG" name="LCD_IFLAG"></a>
    915 <h2 class="memtitle"><span class="permalink"><a href="#LCD_IFLAG">&#9670;&nbsp;</a></span>LCD_IFLAG</h2>
    916 
    917 <div class="memitem">
    918 <div class="memproto">
    919       <table class="memname">
    920         <tr>
    921           <td class="memname">#define LCD_IFLAG&#160;&#160;&#160;0x02U</td>
    922         </tr>
    923       </table>
    924 </div><div class="memdoc">
    925 <p >LCD Interrupt when triggered by the STAT register. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#set_interrupts">set_interrupts()</a>, </dd>
    926 <dd>
    927 <a class="el" href="msx_8h.html#add_LCD">add_LCD</a> </dd></dl>
    928 
    929 </div>
    930 </div>
    931 <a id="TIM_IFLAG" name="TIM_IFLAG"></a>
    932 <h2 class="memtitle"><span class="permalink"><a href="#TIM_IFLAG">&#9670;&nbsp;</a></span>TIM_IFLAG</h2>
    933 
    934 <div class="memitem">
    935 <div class="memproto">
    936       <table class="memname">
    937         <tr>
    938           <td class="memname">#define TIM_IFLAG&#160;&#160;&#160;0x04U</td>
    939         </tr>
    940       </table>
    941 </div><div class="memdoc">
    942 <p >Does nothing on MSX </p>
    943 
    944 </div>
    945 </div>
    946 <a id="SIO_IFLAG" name="SIO_IFLAG"></a>
    947 <h2 class="memtitle"><span class="permalink"><a href="#SIO_IFLAG">&#9670;&nbsp;</a></span>SIO_IFLAG</h2>
    948 
    949 <div class="memitem">
    950 <div class="memproto">
    951       <table class="memname">
    952         <tr>
    953           <td class="memname">#define SIO_IFLAG&#160;&#160;&#160;0x08U</td>
    954         </tr>
    955       </table>
    956 </div><div class="memdoc">
    957 <p >Does nothing on MSX </p>
    958 
    959 </div>
    960 </div>
    961 <a id="JOY_IFLAG" name="JOY_IFLAG"></a>
    962 <h2 class="memtitle"><span class="permalink"><a href="#JOY_IFLAG">&#9670;&nbsp;</a></span>JOY_IFLAG</h2>
    963 
    964 <div class="memitem">
    965 <div class="memproto">
    966       <table class="memname">
    967         <tr>
    968           <td class="memname">#define JOY_IFLAG&#160;&#160;&#160;0x10U</td>
    969         </tr>
    970       </table>
    971 </div><div class="memdoc">
    972 <p >Does nothing on MSX </p>
    973 
    974 </div>
    975 </div>
    976 <a id="SCREENWIDTH" name="SCREENWIDTH"></a>
    977 <h2 class="memtitle"><span class="permalink"><a href="#SCREENWIDTH">&#9670;&nbsp;</a></span>SCREENWIDTH</h2>
    978 
    979 <div class="memitem">
    980 <div class="memproto">
    981       <table class="memname">
    982         <tr>
    983           <td class="memname">#define SCREENWIDTH&#160;&#160;&#160;<a class="el" href="sms_2hardware_8h.html#DEVICE_SCREEN_PX_WIDTH">DEVICE_SCREEN_PX_WIDTH</a></td>
    984         </tr>
    985       </table>
    986 </div><div class="memdoc">
    987 <p >Width of the visible screen in pixels. </p>
    988 
    989 </div>
    990 </div>
    991 <a id="SCREENHEIGHT" name="SCREENHEIGHT"></a>
    992 <h2 class="memtitle"><span class="permalink"><a href="#SCREENHEIGHT">&#9670;&nbsp;</a></span>SCREENHEIGHT</h2>
    993 
    994 <div class="memitem">
    995 <div class="memproto">
    996       <table class="memname">
    997         <tr>
    998           <td class="memname">#define SCREENHEIGHT&#160;&#160;&#160;<a class="el" href="sms_2hardware_8h.html#DEVICE_SCREEN_PX_HEIGHT">DEVICE_SCREEN_PX_HEIGHT</a></td>
    999         </tr>
   1000       </table>
   1001 </div><div class="memdoc">
   1002 <p >Height of the visible screen in pixels. </p>
   1003 
   1004 </div>
   1005 </div>
   1006 <a id="MINWNDPOSX" name="MINWNDPOSX"></a>
   1007 <h2 class="memtitle"><span class="permalink"><a href="#MINWNDPOSX">&#9670;&nbsp;</a></span>MINWNDPOSX</h2>
   1008 
   1009 <div class="memitem">
   1010 <div class="memproto">
   1011       <table class="memname">
   1012         <tr>
   1013           <td class="memname">#define MINWNDPOSX&#160;&#160;&#160;0x00U</td>
   1014         </tr>
   1015       </table>
   1016 </div><div class="memdoc">
   1017 <p >The Minimum X position of the Window Layer (Left edge of screen) </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#move_win">move_win()</a> </dd></dl>
   1018 
   1019 </div>
   1020 </div>
   1021 <a id="MINWNDPOSY" name="MINWNDPOSY"></a>
   1022 <h2 class="memtitle"><span class="permalink"><a href="#MINWNDPOSY">&#9670;&nbsp;</a></span>MINWNDPOSY</h2>
   1023 
   1024 <div class="memitem">
   1025 <div class="memproto">
   1026       <table class="memname">
   1027         <tr>
   1028           <td class="memname">#define MINWNDPOSY&#160;&#160;&#160;0x00U</td>
   1029         </tr>
   1030       </table>
   1031 </div><div class="memdoc">
   1032 <p >The Minimum Y position of the Window Layer (Top edge of screen) </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#move_win">move_win()</a> </dd></dl>
   1033 
   1034 </div>
   1035 </div>
   1036 <a id="MAXWNDPOSX" name="MAXWNDPOSX"></a>
   1037 <h2 class="memtitle"><span class="permalink"><a href="#MAXWNDPOSX">&#9670;&nbsp;</a></span>MAXWNDPOSX</h2>
   1038 
   1039 <div class="memitem">
   1040 <div class="memproto">
   1041       <table class="memname">
   1042         <tr>
   1043           <td class="memname">#define MAXWNDPOSX&#160;&#160;&#160;0x00U</td>
   1044         </tr>
   1045       </table>
   1046 </div><div class="memdoc">
   1047 <p >The Maximum X position of the Window Layer (Right edge of screen) </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#move_win">move_win()</a> </dd></dl>
   1048 
   1049 </div>
   1050 </div>
   1051 <a id="MAXWNDPOSY" name="MAXWNDPOSY"></a>
   1052 <h2 class="memtitle"><span class="permalink"><a href="#MAXWNDPOSY">&#9670;&nbsp;</a></span>MAXWNDPOSY</h2>
   1053 
   1054 <div class="memitem">
   1055 <div class="memproto">
   1056       <table class="memname">
   1057         <tr>
   1058           <td class="memname">#define MAXWNDPOSY&#160;&#160;&#160;0x00U</td>
   1059         </tr>
   1060       </table>
   1061 </div><div class="memdoc">
   1062 <p >The Maximum Y position of the Window Layer (Bottom edge of screen) </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#move_win">move_win()</a> </dd></dl>
   1063 
   1064 </div>
   1065 </div>
   1066 <a id="DISPLAY_ON" name="DISPLAY_ON"></a>
   1067 <h2 class="memtitle"><span class="permalink"><a href="#DISPLAY_ON">&#9670;&nbsp;</a></span>DISPLAY_ON</h2>
   1068 
   1069 <div class="memitem">
   1070 <div class="memproto">
   1071       <table class="memname">
   1072         <tr>
   1073           <td class="memname">#define DISPLAY_ON&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>) |= <a class="el" href="sms_2hardware_8h.html#R1_DISP_ON">R1_DISP_ON</a>)</td>
   1074         </tr>
   1075       </table>
   1076 </div><div class="memdoc">
   1077 <p >Turns the display back on. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#display_off">display_off</a>, <a class="el" href="msx_8h.html#DISPLAY_OFF">DISPLAY_OFF</a> </dd></dl>
   1078 
   1079 </div>
   1080 </div>
   1081 <a id="DISPLAY_OFF" name="DISPLAY_OFF"></a>
   1082 <h2 class="memtitle"><span class="permalink"><a href="#DISPLAY_OFF">&#9670;&nbsp;</a></span>DISPLAY_OFF</h2>
   1083 
   1084 <div class="memitem">
   1085 <div class="memproto">
   1086       <table class="memname">
   1087         <tr>
   1088           <td class="memname">#define DISPLAY_OFF&#160;&#160;&#160;	<a class="el" href="sms_8h.html#display_off">display_off</a>();</td>
   1089         </tr>
   1090       </table>
   1091 </div><div class="memdoc">
   1092 <p >Turns the display off immediately. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#display_off">display_off</a>, <a class="el" href="msx_8h.html#DISPLAY_ON">DISPLAY_ON</a> </dd></dl>
   1093 
   1094 </div>
   1095 </div>
   1096 <a id="HIDE_LEFT_COLUMN" name="HIDE_LEFT_COLUMN"></a>
   1097 <h2 class="memtitle"><span class="permalink"><a href="#HIDE_LEFT_COLUMN">&#9670;&nbsp;</a></span>HIDE_LEFT_COLUMN</h2>
   1098 
   1099 <div class="memitem">
   1100 <div class="memproto">
   1101       <table class="memname">
   1102         <tr>
   1103           <td class="memname">#define HIDE_LEFT_COLUMN&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>) |= <a class="el" href="sms_2hardware_8h.html#R0_LCB">R0_LCB</a>)</td>
   1104         </tr>
   1105       </table>
   1106 </div><div class="memdoc">
   1107 <p >Blanks leftmost column, so it is not garbaged when you use horizontal scroll </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#SHOW_LEFT_COLUMN">SHOW_LEFT_COLUMN</a> </dd></dl>
   1108 
   1109 </div>
   1110 </div>
   1111 <a id="SHOW_LEFT_COLUMN" name="SHOW_LEFT_COLUMN"></a>
   1112 <h2 class="memtitle"><span class="permalink"><a href="#SHOW_LEFT_COLUMN">&#9670;&nbsp;</a></span>SHOW_LEFT_COLUMN</h2>
   1113 
   1114 <div class="memitem">
   1115 <div class="memproto">
   1116       <table class="memname">
   1117         <tr>
   1118           <td class="memname">#define SHOW_LEFT_COLUMN&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R0">VDP_R0</a>) &amp;= (~<a class="el" href="sms_2hardware_8h.html#R0_LCB">R0_LCB</a>))</td>
   1119         </tr>
   1120       </table>
   1121 </div><div class="memdoc">
   1122 <p >Shows leftmost column </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#HIDE_LEFT_COLUMN">HIDE_LEFT_COLUMN</a> </dd></dl>
   1123 
   1124 </div>
   1125 </div>
   1126 <a id="SET_BORDER_COLOR" name="SET_BORDER_COLOR"></a>
   1127 <h2 class="memtitle"><span class="permalink"><a href="#SET_BORDER_COLOR">&#9670;&nbsp;</a></span>SET_BORDER_COLOR</h2>
   1128 
   1129 <div class="memitem">
   1130 <div class="memproto">
   1131       <table class="memname">
   1132         <tr>
   1133           <td class="memname">#define SET_BORDER_COLOR</td>
   1134           <td>(</td>
   1135           <td class="paramtype">&#160;</td>
   1136           <td class="paramname">C</td><td>)</td>
   1137           <td>&#160;&#160;&#160;<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R7">VDP_R7</a>, ((C) | 0xf0u))</td>
   1138         </tr>
   1139       </table>
   1140 </div><div class="memdoc">
   1141 <p >Sets border color </p>
   1142 
   1143 </div>
   1144 </div>
   1145 <a id="SHOW_BKG" name="SHOW_BKG"></a>
   1146 <h2 class="memtitle"><span class="permalink"><a href="#SHOW_BKG">&#9670;&nbsp;</a></span>SHOW_BKG</h2>
   1147 
   1148 <div class="memitem">
   1149 <div class="memproto">
   1150       <table class="memname">
   1151         <tr>
   1152           <td class="memname">#define SHOW_BKG</td>
   1153         </tr>
   1154       </table>
   1155 </div><div class="memdoc">
   1156 <p >Turns on the background layer. Not yet implemented </p>
   1157 
   1158 </div>
   1159 </div>
   1160 <a id="HIDE_BKG" name="HIDE_BKG"></a>
   1161 <h2 class="memtitle"><span class="permalink"><a href="#HIDE_BKG">&#9670;&nbsp;</a></span>HIDE_BKG</h2>
   1162 
   1163 <div class="memitem">
   1164 <div class="memproto">
   1165       <table class="memname">
   1166         <tr>
   1167           <td class="memname">#define HIDE_BKG</td>
   1168         </tr>
   1169       </table>
   1170 </div><div class="memdoc">
   1171 <p >Turns off the background layer. Not yet implemented </p>
   1172 
   1173 </div>
   1174 </div>
   1175 <a id="SHOW_WIN" name="SHOW_WIN"></a>
   1176 <h2 class="memtitle"><span class="permalink"><a href="#SHOW_WIN">&#9670;&nbsp;</a></span>SHOW_WIN</h2>
   1177 
   1178 <div class="memitem">
   1179 <div class="memproto">
   1180       <table class="memname">
   1181         <tr>
   1182           <td class="memname">#define SHOW_WIN</td>
   1183         </tr>
   1184       </table>
   1185 </div><div class="memdoc">
   1186 <p >Turns on the window layer Not yet implemented </p>
   1187 
   1188 </div>
   1189 </div>
   1190 <a id="HIDE_WIN" name="HIDE_WIN"></a>
   1191 <h2 class="memtitle"><span class="permalink"><a href="#HIDE_WIN">&#9670;&nbsp;</a></span>HIDE_WIN</h2>
   1192 
   1193 <div class="memitem">
   1194 <div class="memproto">
   1195       <table class="memname">
   1196         <tr>
   1197           <td class="memname">#define HIDE_WIN</td>
   1198         </tr>
   1199       </table>
   1200 </div><div class="memdoc">
   1201 <p >Turns off the window layer. Not yet implemented </p>
   1202 
   1203 </div>
   1204 </div>
   1205 <a id="SHOW_SPRITES" name="SHOW_SPRITES"></a>
   1206 <h2 class="memtitle"><span class="permalink"><a href="#SHOW_SPRITES">&#9670;&nbsp;</a></span>SHOW_SPRITES</h2>
   1207 
   1208 <div class="memitem">
   1209 <div class="memproto">
   1210       <table class="memname">
   1211         <tr>
   1212           <td class="memname">#define SHOW_SPRITES</td>
   1213         </tr>
   1214       </table>
   1215 </div><div class="memdoc">
   1216 <p >Turns on the sprites layer. Not yet implemented </p>
   1217 
   1218 </div>
   1219 </div>
   1220 <a id="HIDE_SPRITES" name="HIDE_SPRITES"></a>
   1221 <h2 class="memtitle"><span class="permalink"><a href="#HIDE_SPRITES">&#9670;&nbsp;</a></span>HIDE_SPRITES</h2>
   1222 
   1223 <div class="memitem">
   1224 <div class="memproto">
   1225       <table class="memname">
   1226         <tr>
   1227           <td class="memname">#define HIDE_SPRITES</td>
   1228         </tr>
   1229       </table>
   1230 </div><div class="memdoc">
   1231 <p >Turns off the sprites layer. Not yet implemented </p>
   1232 
   1233 </div>
   1234 </div>
   1235 <a id="SPRITES_16x16" name="SPRITES_16x16"></a>
   1236 <h2 class="memtitle"><span class="permalink"><a href="#SPRITES_16x16">&#9670;&nbsp;</a></span>SPRITES_16x16</h2>
   1237 
   1238 <div class="memitem">
   1239 <div class="memproto">
   1240       <table class="memname">
   1241         <tr>
   1242           <td class="memname">#define SPRITES_16x16&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>) |= <a class="el" href="msx_2hardware_8h.html#R1_SPR_16X16">R1_SPR_16X16</a>)</td>
   1243         </tr>
   1244       </table>
   1245 </div><div class="memdoc">
   1246 <p >Sets sprite size to 8x16 pixels, two tiles one above the other. </p>
   1247 
   1248 </div>
   1249 </div>
   1250 <a id="SPRITES_8x8" name="SPRITES_8x8"></a>
   1251 <h2 class="memtitle"><span class="permalink"><a href="#SPRITES_8x8">&#9670;&nbsp;</a></span>SPRITES_8x8</h2>
   1252 
   1253 <div class="memitem">
   1254 <div class="memproto">
   1255       <table class="memname">
   1256         <tr>
   1257           <td class="memname">#define SPRITES_8x8&#160;&#160;&#160;	<a class="el" href="sms_8h.html#__WRITE_VDP_REG">__WRITE_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>, <a class="el" href="sms_8h.html#__READ_VDP_REG">__READ_VDP_REG</a>(<a class="el" href="sms_2hardware_8h.html#VDP_R1">VDP_R1</a>) &amp;= (~<a class="el" href="msx_2hardware_8h.html#R1_SPR_16X16">R1_SPR_16X16</a>))</td>
   1258         </tr>
   1259       </table>
   1260 </div><div class="memdoc">
   1261 <p >Sets sprite size to 8x8 pixels, one tile. </p>
   1262 
   1263 </div>
   1264 </div>
   1265 <a id="DEVICE_SUPPORTS_COLOR" name="DEVICE_SUPPORTS_COLOR"></a>
   1266 <h2 class="memtitle"><span class="permalink"><a href="#DEVICE_SUPPORTS_COLOR">&#9670;&nbsp;</a></span>DEVICE_SUPPORTS_COLOR</h2>
   1267 
   1268 <div class="memitem">
   1269 <div class="memproto">
   1270       <table class="memname">
   1271         <tr>
   1272           <td class="memname">#define DEVICE_SUPPORTS_COLOR&#160;&#160;&#160;(<a class="el" href="types_8h.html#TRUE">TRUE</a>)</td>
   1273         </tr>
   1274       </table>
   1275 </div><div class="memdoc">
   1276 <p >Macro returns TRUE if device supports color (it always does on MSX) </p>
   1277 
   1278 </div>
   1279 </div>
   1280 <a id="VBL_DONE" name="VBL_DONE"></a>
   1281 <h2 class="memtitle"><span class="permalink"><a href="#VBL_DONE">&#9670;&nbsp;</a></span>VBL_DONE</h2>
   1282 
   1283 <div class="memitem">
   1284 <div class="memproto">
   1285       <table class="memname">
   1286         <tr>
   1287           <td class="memname">#define VBL_DONE&#160;&#160;&#160;<a class="el" href="sms_8h.html#_vbl_done">_vbl_done</a></td>
   1288         </tr>
   1289       </table>
   1290 </div><div class="memdoc">
   1291 
   1292 </div>
   1293 </div>
   1294 <a id="DIV_REG" name="DIV_REG"></a>
   1295 <h2 class="memtitle"><span class="permalink"><a href="#DIV_REG">&#9670;&nbsp;</a></span>DIV_REG</h2>
   1296 
   1297 <div class="memitem">
   1298 <div class="memproto">
   1299       <table class="memname">
   1300         <tr>
   1301           <td class="memname">#define DIV_REG&#160;&#160;&#160;<a class="el" href="sms_8h.html#get_r_reg">get_r_reg</a>()</td>
   1302         </tr>
   1303       </table>
   1304 </div><div class="memdoc">
   1305 
   1306 </div>
   1307 </div>
   1308 <a id="CURRENT_BANK" name="CURRENT_BANK"></a>
   1309 <h2 class="memtitle"><span class="permalink"><a href="#CURRENT_BANK">&#9670;&nbsp;</a></span>CURRENT_BANK</h2>
   1310 
   1311 <div class="memitem">
   1312 <div class="memproto">
   1313       <table class="memname">
   1314         <tr>
   1315           <td class="memname">#define CURRENT_BANK&#160;&#160;&#160;<a class="el" href="nes_8h.html#_current_bank">_current_bank</a></td>
   1316         </tr>
   1317       </table>
   1318 </div><div class="memdoc">
   1319 
   1320 </div>
   1321 </div>
   1322 <a id="BANK" name="BANK"></a>
   1323 <h2 class="memtitle"><span class="permalink"><a href="#BANK">&#9670;&nbsp;</a></span>BANK</h2>
   1324 
   1325 <div class="memitem">
   1326 <div class="memproto">
   1327       <table class="memname">
   1328         <tr>
   1329           <td class="memname">#define BANK</td>
   1330           <td>(</td>
   1331           <td class="paramtype">&#160;</td>
   1332           <td class="paramname">VARNAME</td><td>)</td>
   1333           <td>&#160;&#160;&#160;( (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>) &amp; __bank_ ## VARNAME )</td>
   1334         </tr>
   1335       </table>
   1336 </div><div class="memdoc">
   1337 <p >Obtains the <b>bank number</b> of VARNAME</p>
   1338 <dl class="params"><dt>Parameters</dt><dd>
   1339   <table class="params">
   1340     <tr><td class="paramname">VARNAME</td><td>Name of the variable which has a __bank_VARNAME companion symbol which is adjusted by bankpack</td></tr>
   1341   </table>
   1342   </dd>
   1343 </dl>
   1344 <p>Use this to obtain the bank number from a bank reference created with <a class="el" href="gb_8h.html#BANKREF">BANKREF()</a>.</p>
   1345 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#BANKREF_EXTERN">BANKREF_EXTERN()</a>, <a class="el" href="msx_8h.html#BANKREF">BANKREF()</a> </dd></dl>
   1346 
   1347 </div>
   1348 </div>
   1349 <a id="BANKREF" name="BANKREF"></a>
   1350 <h2 class="memtitle"><span class="permalink"><a href="#BANKREF">&#9670;&nbsp;</a></span>BANKREF</h2>
   1351 
   1352 <div class="memitem">
   1353 <div class="memproto">
   1354       <table class="memname">
   1355         <tr>
   1356           <td class="memname">#define BANKREF</td>
   1357           <td>(</td>
   1358           <td class="paramtype">&#160;</td>
   1359           <td class="paramname">VARNAME</td><td>)</td>
   1360           <td></td>
   1361         </tr>
   1362       </table>
   1363 </div><div class="memdoc">
   1364 <b>Value:</b><div class="fragment"><div class="line"><span class="keywordtype">void</span> __func_ ## VARNAME(<span class="keywordtype">void</span>) __banked __naked { \</div>
   1365 <div class="line">__asm \</div>
   1366 <div class="line">    .local b___func_ ## VARNAME \</div>
   1367 <div class="line">    ___bank_ ## VARNAME = b___func_ ## VARNAME \</div>
   1368 <div class="line">    .globl ___bank_ ## VARNAME \</div>
   1369 <div class="line">__endasm; \</div>
   1370 <div class="line">}</div>
   1371 </div><!-- fragment --><p >Creates a reference for retrieving the bank number of a variable or function</p>
   1372 <dl class="params"><dt>Parameters</dt><dd>
   1373   <table class="params">
   1374     <tr><td class="paramname">VARNAME</td><td>Variable name to use, which may be an existing identifier</td></tr>
   1375   </table>
   1376   </dd>
   1377 </dl>
   1378 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#BANK">BANK()</a> for obtaining the bank number of the included data.</dd></dl>
   1379 <p>More than one <code><a class="el" href="msx_8h.html#BANKREF">BANKREF()</a></code> may be created per file, but each call should always use a unique VARNAME.</p>
   1380 <p >Use <a class="el" href="gb_8h.html#BANKREF_EXTERN">BANKREF_EXTERN()</a> within another source file to make the variable and it's data accesible there. </p>
   1381 
   1382 </div>
   1383 </div>
   1384 <a id="BANKREF_EXTERN" name="BANKREF_EXTERN"></a>
   1385 <h2 class="memtitle"><span class="permalink"><a href="#BANKREF_EXTERN">&#9670;&nbsp;</a></span>BANKREF_EXTERN</h2>
   1386 
   1387 <div class="memitem">
   1388 <div class="memproto">
   1389       <table class="memname">
   1390         <tr>
   1391           <td class="memname">#define BANKREF_EXTERN</td>
   1392           <td>(</td>
   1393           <td class="paramtype">&#160;</td>
   1394           <td class="paramname">VARNAME</td><td>)</td>
   1395           <td>&#160;&#160;&#160;extern const void __bank_ ## VARNAME;</td>
   1396         </tr>
   1397       </table>
   1398 </div><div class="memdoc">
   1399 <p >Creates extern references for accessing a <a class="el" href="msx_8h.html#BANKREF">BANKREF()</a> generated variable.</p>
   1400 <dl class="params"><dt>Parameters</dt><dd>
   1401   <table class="params">
   1402     <tr><td class="paramname">VARNAME</td><td>Name of the variable used with <a class="el" href="gb_8h.html#BANKREF">BANKREF()</a></td></tr>
   1403   </table>
   1404   </dd>
   1405 </dl>
   1406 <p>This makes a <a class="el" href="gb_8h.html#BANKREF">BANKREF()</a> reference in another source file accessible in the current file for use with <a class="el" href="gb_8h.html#BANK">BANK()</a>.</p>
   1407 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#BANKREF">BANKREF()</a>, <a class="el" href="msx_8h.html#BANK">BANK()</a> </dd></dl>
   1408 
   1409 </div>
   1410 </div>
   1411 <a id="SWITCH_ROM1" name="SWITCH_ROM1"></a>
   1412 <h2 class="memtitle"><span class="permalink"><a href="#SWITCH_ROM1">&#9670;&nbsp;</a></span>SWITCH_ROM1</h2>
   1413 
   1414 <div class="memitem">
   1415 <div class="memproto">
   1416       <table class="memname">
   1417         <tr>
   1418           <td class="memname">#define SWITCH_ROM1&#160;&#160;&#160;<a class="el" href="msx_8h.html#SWITCH_ROM">SWITCH_ROM</a></td>
   1419         </tr>
   1420       </table>
   1421 </div><div class="memdoc">
   1422 
   1423 </div>
   1424 </div>
   1425 <a id="SWITCH_ROM2" name="SWITCH_ROM2"></a>
   1426 <h2 class="memtitle"><span class="permalink"><a href="#SWITCH_ROM2">&#9670;&nbsp;</a></span>SWITCH_ROM2</h2>
   1427 
   1428 <div class="memitem">
   1429 <div class="memproto">
   1430       <table class="memname">
   1431         <tr>
   1432           <td class="memname">#define SWITCH_ROM2</td>
   1433           <td>(</td>
   1434           <td class="paramtype">&#160;</td>
   1435           <td class="paramname"><a class="el" href="sms_8h.html#b">b</a></td><td>)</td>
   1436           <td>&#160;&#160;&#160;MAP_FRAME2=(<a class="el" href="sms_8h.html#b">b</a>)</td>
   1437         </tr>
   1438       </table>
   1439 </div><div class="memdoc">
   1440 <p >Makes switch the active ROM bank in frame 2 </p><dl class="params"><dt>Parameters</dt><dd>
   1441   <table class="params">
   1442     <tr><td class="paramname">b</td><td>ROM bank to switch to </td></tr>
   1443   </table>
   1444   </dd>
   1445 </dl>
   1446 
   1447 </div>
   1448 </div>
   1449 <a id="SWITCH_RAM" name="SWITCH_RAM"></a>
   1450 <h2 class="memtitle"><span class="permalink"><a href="#SWITCH_RAM">&#9670;&nbsp;</a></span>SWITCH_RAM</h2>
   1451 
   1452 <div class="memitem">
   1453 <div class="memproto">
   1454       <table class="memname">
   1455         <tr>
   1456           <td class="memname">#define SWITCH_RAM</td>
   1457           <td>(</td>
   1458           <td class="paramtype">&#160;</td>
   1459           <td class="paramname"><a class="el" href="sms_8h.html#b">b</a></td><td>)</td>
   1460           <td>&#160;&#160;&#160;RAM_CONTROL=((<a class="el" href="sms_8h.html#b">b</a>)&amp;1)?RAM_CONTROL|RAMCTL_BANK:RAM_CONTROL&amp;(~<a class="el" href="sms_2hardware_8h.html#RAMCTL_BANK">RAMCTL_BANK</a>)</td>
   1461         </tr>
   1462       </table>
   1463 </div><div class="memdoc">
   1464 <p >Switches RAM bank </p><dl class="params"><dt>Parameters</dt><dd>
   1465   <table class="params">
   1466     <tr><td class="paramname">b</td><td>SRAM bank to switch to </td></tr>
   1467   </table>
   1468   </dd>
   1469 </dl>
   1470 
   1471 </div>
   1472 </div>
   1473 <a id="ENABLE_RAM" name="ENABLE_RAM"></a>
   1474 <h2 class="memtitle"><span class="permalink"><a href="#ENABLE_RAM">&#9670;&nbsp;</a></span>ENABLE_RAM</h2>
   1475 
   1476 <div class="memitem">
   1477 <div class="memproto">
   1478       <table class="memname">
   1479         <tr>
   1480           <td class="memname">#define ENABLE_RAM&#160;&#160;&#160;RAM_CONTROL|=<a class="el" href="sms_2hardware_8h.html#RAMCTL_RAM">RAMCTL_RAM</a></td>
   1481         </tr>
   1482       </table>
   1483 </div><div class="memdoc">
   1484 <p >Enables RAM </p>
   1485 
   1486 </div>
   1487 </div>
   1488 <a id="DISABLE_RAM" name="DISABLE_RAM"></a>
   1489 <h2 class="memtitle"><span class="permalink"><a href="#DISABLE_RAM">&#9670;&nbsp;</a></span>DISABLE_RAM</h2>
   1490 
   1491 <div class="memitem">
   1492 <div class="memproto">
   1493       <table class="memname">
   1494         <tr>
   1495           <td class="memname">#define DISABLE_RAM&#160;&#160;&#160;RAM_CONTROL&amp;=(~<a class="el" href="sms_2hardware_8h.html#RAMCTL_RAM">RAMCTL_RAM</a>)</td>
   1496         </tr>
   1497       </table>
   1498 </div><div class="memdoc">
   1499 <p >Disables RAM </p>
   1500 
   1501 </div>
   1502 </div>
   1503 <a id="set_bkg_palette_entry" name="set_bkg_palette_entry"></a>
   1504 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_palette_entry">&#9670;&nbsp;</a></span>set_bkg_palette_entry</h2>
   1505 
   1506 <div class="memitem">
   1507 <div class="memproto">
   1508       <table class="memname">
   1509         <tr>
   1510           <td class="memname">#define set_bkg_palette_entry&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette_entry">set_palette_entry</a></td>
   1511         </tr>
   1512       </table>
   1513 </div><div class="memdoc">
   1514 
   1515 </div>
   1516 </div>
   1517 <a id="set_sprite_palette_entry" name="set_sprite_palette_entry"></a>
   1518 <h2 class="memtitle"><span class="permalink"><a href="#set_sprite_palette_entry">&#9670;&nbsp;</a></span>set_sprite_palette_entry</h2>
   1519 
   1520 <div class="memitem">
   1521 <div class="memproto">
   1522       <table class="memname">
   1523         <tr>
   1524           <td class="memname">#define set_sprite_palette_entry</td>
   1525           <td>(</td>
   1526           <td class="paramtype">&#160;</td>
   1527           <td class="paramname">palette, </td>
   1528         </tr>
   1529         <tr>
   1530           <td class="paramkey"></td>
   1531           <td></td>
   1532           <td class="paramtype">&#160;</td>
   1533           <td class="paramname">entry, </td>
   1534         </tr>
   1535         <tr>
   1536           <td class="paramkey"></td>
   1537           <td></td>
   1538           <td class="paramtype">&#160;</td>
   1539           <td class="paramname">rgb_data&#160;</td>
   1540         </tr>
   1541         <tr>
   1542           <td></td>
   1543           <td>)</td>
   1544           <td></td><td>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette_entry">set_palette_entry</a>(1,entry,rgb_data)</td>
   1545         </tr>
   1546       </table>
   1547 </div><div class="memdoc">
   1548 
   1549 </div>
   1550 </div>
   1551 <a id="set_bkg_palette" name="set_bkg_palette"></a>
   1552 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_palette">&#9670;&nbsp;</a></span>set_bkg_palette</h2>
   1553 
   1554 <div class="memitem">
   1555 <div class="memproto">
   1556       <table class="memname">
   1557         <tr>
   1558           <td class="memname">#define set_bkg_palette&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette">set_palette</a></td>
   1559         </tr>
   1560       </table>
   1561 </div><div class="memdoc">
   1562 
   1563 </div>
   1564 </div>
   1565 <a id="set_sprite_palette" name="set_sprite_palette"></a>
   1566 <h2 class="memtitle"><span class="permalink"><a href="#set_sprite_palette">&#9670;&nbsp;</a></span>set_sprite_palette</h2>
   1567 
   1568 <div class="memitem">
   1569 <div class="memproto">
   1570       <table class="memname">
   1571         <tr>
   1572           <td class="memname">#define set_sprite_palette</td>
   1573           <td>(</td>
   1574           <td class="paramtype">&#160;</td>
   1575           <td class="paramname">first_palette, </td>
   1576         </tr>
   1577         <tr>
   1578           <td class="paramkey"></td>
   1579           <td></td>
   1580           <td class="paramtype">&#160;</td>
   1581           <td class="paramname">nb_palettes, </td>
   1582         </tr>
   1583         <tr>
   1584           <td class="paramkey"></td>
   1585           <td></td>
   1586           <td class="paramtype">&#160;</td>
   1587           <td class="paramname">rgb_data&#160;</td>
   1588         </tr>
   1589         <tr>
   1590           <td></td>
   1591           <td>)</td>
   1592           <td></td><td>&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_palette">set_palette</a>(1,1,rgb_data)</td>
   1593         </tr>
   1594       </table>
   1595 </div><div class="memdoc">
   1596 
   1597 </div>
   1598 </div>
   1599 <a id="COMPAT_PALETTE" name="COMPAT_PALETTE"></a>
   1600 <h2 class="memtitle"><span class="permalink"><a href="#COMPAT_PALETTE">&#9670;&nbsp;</a></span>COMPAT_PALETTE</h2>
   1601 
   1602 <div class="memitem">
   1603 <div class="memproto">
   1604       <table class="memname">
   1605         <tr>
   1606           <td class="memname">#define COMPAT_PALETTE</td>
   1607           <td>(</td>
   1608           <td class="paramtype">&#160;</td>
   1609           <td class="paramname">C0, </td>
   1610         </tr>
   1611         <tr>
   1612           <td class="paramkey"></td>
   1613           <td></td>
   1614           <td class="paramtype">&#160;</td>
   1615           <td class="paramname">C1, </td>
   1616         </tr>
   1617         <tr>
   1618           <td class="paramkey"></td>
   1619           <td></td>
   1620           <td class="paramtype">&#160;</td>
   1621           <td class="paramname">C2, </td>
   1622         </tr>
   1623         <tr>
   1624           <td class="paramkey"></td>
   1625           <td></td>
   1626           <td class="paramtype">&#160;</td>
   1627           <td class="paramname">C3&#160;</td>
   1628         </tr>
   1629         <tr>
   1630           <td></td>
   1631           <td>)</td>
   1632           <td></td><td>&#160;&#160;&#160;(((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C3) &lt;&lt; 12) | ((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C2) &lt;&lt; 8) | ((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C1) &lt;&lt; 4) | (<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)(C0))</td>
   1633         </tr>
   1634       </table>
   1635 </div><div class="memdoc">
   1636 
   1637 </div>
   1638 </div>
   1639 <a id="set_bkg_tiles" name="set_bkg_tiles"></a>
   1640 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_tiles">&#9670;&nbsp;</a></span>set_bkg_tiles</h2>
   1641 
   1642 <div class="memitem">
   1643 <div class="memproto">
   1644       <table class="memname">
   1645         <tr>
   1646           <td class="memname">#define set_bkg_tiles&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_map">set_tile_map</a></td>
   1647         </tr>
   1648       </table>
   1649 </div><div class="memdoc">
   1650 
   1651 </div>
   1652 </div>
   1653 <a id="set_win_tiles" name="set_win_tiles"></a>
   1654 <h2 class="memtitle"><span class="permalink"><a href="#set_win_tiles">&#9670;&nbsp;</a></span>set_win_tiles</h2>
   1655 
   1656 <div class="memitem">
   1657 <div class="memproto">
   1658       <table class="memname">
   1659         <tr>
   1660           <td class="memname">#define set_win_tiles&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_map">set_tile_map</a></td>
   1661         </tr>
   1662       </table>
   1663 </div><div class="memdoc">
   1664 
   1665 </div>
   1666 </div>
   1667 <a id="fill_bkg_rect" name="fill_bkg_rect"></a>
   1668 <h2 class="memtitle"><span class="permalink"><a href="#fill_bkg_rect">&#9670;&nbsp;</a></span>fill_bkg_rect</h2>
   1669 
   1670 <div class="memitem">
   1671 <div class="memproto">
   1672       <table class="memname">
   1673         <tr>
   1674           <td class="memname">#define fill_bkg_rect&#160;&#160;&#160;<a class="el" href="sms_8h.html#fill_rect">fill_rect</a></td>
   1675         </tr>
   1676       </table>
   1677 </div><div class="memdoc">
   1678 
   1679 </div>
   1680 </div>
   1681 <a id="fill_win_rect" name="fill_win_rect"></a>
   1682 <h2 class="memtitle"><span class="permalink"><a href="#fill_win_rect">&#9670;&nbsp;</a></span>fill_win_rect</h2>
   1683 
   1684 <div class="memitem">
   1685 <div class="memproto">
   1686       <table class="memname">
   1687         <tr>
   1688           <td class="memname">#define fill_win_rect&#160;&#160;&#160;<a class="el" href="sms_8h.html#fill_rect">fill_rect</a></td>
   1689         </tr>
   1690       </table>
   1691 </div><div class="memdoc">
   1692 
   1693 </div>
   1694 </div>
   1695 <a id="DISABLE_VBL_TRANSFER" name="DISABLE_VBL_TRANSFER"></a>
   1696 <h2 class="memtitle"><span class="permalink"><a href="#DISABLE_VBL_TRANSFER">&#9670;&nbsp;</a></span>DISABLE_VBL_TRANSFER</h2>
   1697 
   1698 <div class="memitem">
   1699 <div class="memproto">
   1700       <table class="memname">
   1701         <tr>
   1702           <td class="memname">#define DISABLE_VBL_TRANSFER&#160;&#160;&#160;    <a class="el" href="sms_8h.html#_shadow_OAM_base">_shadow_OAM_base</a> = 0</td>
   1703         </tr>
   1704       </table>
   1705 </div><div class="memdoc">
   1706 <p >Disable shadow OAM to VRAM copy on each VBlank </p>
   1707 
   1708 </div>
   1709 </div>
   1710 <a id="ENABLE_VBL_TRANSFER" name="ENABLE_VBL_TRANSFER"></a>
   1711 <h2 class="memtitle"><span class="permalink"><a href="#ENABLE_VBL_TRANSFER">&#9670;&nbsp;</a></span>ENABLE_VBL_TRANSFER</h2>
   1712 
   1713 <div class="memitem">
   1714 <div class="memproto">
   1715       <table class="memname">
   1716         <tr>
   1717           <td class="memname">#define ENABLE_VBL_TRANSFER&#160;&#160;&#160;    <a class="el" href="sms_8h.html#_shadow_OAM_base">_shadow_OAM_base</a> = (<a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>)((<a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>)&amp;<a class="el" href="sms_8h.html#shadow_OAM">shadow_OAM</a> &gt;&gt; 8)</td>
   1718         </tr>
   1719       </table>
   1720 </div><div class="memdoc">
   1721 <p >Enable shadow OAM to VRAM copy on each VBlank </p>
   1722 
   1723 </div>
   1724 </div>
   1725 <a id="MAX_HARDWARE_SPRITES" name="MAX_HARDWARE_SPRITES"></a>
   1726 <h2 class="memtitle"><span class="permalink"><a href="#MAX_HARDWARE_SPRITES">&#9670;&nbsp;</a></span>MAX_HARDWARE_SPRITES</h2>
   1727 
   1728 <div class="memitem">
   1729 <div class="memproto">
   1730       <table class="memname">
   1731         <tr>
   1732           <td class="memname">#define MAX_HARDWARE_SPRITES&#160;&#160;&#160;32</td>
   1733         </tr>
   1734       </table>
   1735 </div><div class="memdoc">
   1736 <p >Amount of hardware sprites in OAM </p>
   1737 
   1738 </div>
   1739 </div>
   1740 <a id="HARDWARE_SPRITE_CAN_FLIP_X" name="HARDWARE_SPRITE_CAN_FLIP_X"></a>
   1741 <h2 class="memtitle"><span class="permalink"><a href="#HARDWARE_SPRITE_CAN_FLIP_X">&#9670;&nbsp;</a></span>HARDWARE_SPRITE_CAN_FLIP_X</h2>
   1742 
   1743 <div class="memitem">
   1744 <div class="memproto">
   1745       <table class="memname">
   1746         <tr>
   1747           <td class="memname">#define HARDWARE_SPRITE_CAN_FLIP_X&#160;&#160;&#160;0</td>
   1748         </tr>
   1749       </table>
   1750 </div><div class="memdoc">
   1751 <p >True if sprite hardware can flip sprites by X (horizontally) </p>
   1752 
   1753 </div>
   1754 </div>
   1755 <a id="HARDWARE_SPRITE_CAN_FLIP_Y" name="HARDWARE_SPRITE_CAN_FLIP_Y"></a>
   1756 <h2 class="memtitle"><span class="permalink"><a href="#HARDWARE_SPRITE_CAN_FLIP_Y">&#9670;&nbsp;</a></span>HARDWARE_SPRITE_CAN_FLIP_Y</h2>
   1757 
   1758 <div class="memitem">
   1759 <div class="memproto">
   1760       <table class="memname">
   1761         <tr>
   1762           <td class="memname">#define HARDWARE_SPRITE_CAN_FLIP_Y&#160;&#160;&#160;0</td>
   1763         </tr>
   1764       </table>
   1765 </div><div class="memdoc">
   1766 <p >True if sprite hardware can flip sprites by Y (vertically) </p>
   1767 
   1768 </div>
   1769 </div>
   1770 <a id="set_bkg_tile_xy" name="set_bkg_tile_xy"></a>
   1771 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_tile_xy">&#9670;&nbsp;</a></span>set_bkg_tile_xy</h2>
   1772 
   1773 <div class="memitem">
   1774 <div class="memproto">
   1775       <table class="memname">
   1776         <tr>
   1777           <td class="memname">#define set_bkg_tile_xy&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_xy">set_tile_xy</a></td>
   1778         </tr>
   1779       </table>
   1780 </div><div class="memdoc">
   1781 
   1782 </div>
   1783 </div>
   1784 <a id="set_win_tile_xy" name="set_win_tile_xy"></a>
   1785 <h2 class="memtitle"><span class="permalink"><a href="#set_win_tile_xy">&#9670;&nbsp;</a></span>set_win_tile_xy</h2>
   1786 
   1787 <div class="memitem">
   1788 <div class="memproto">
   1789       <table class="memname">
   1790         <tr>
   1791           <td class="memname">#define set_win_tile_xy&#160;&#160;&#160;<a class="el" href="sms_8h.html#set_tile_xy">set_tile_xy</a></td>
   1792         </tr>
   1793       </table>
   1794 </div><div class="memdoc">
   1795 
   1796 </div>
   1797 </div>
   1798 <a id="get_win_xy_addr" name="get_win_xy_addr"></a>
   1799 <h2 class="memtitle"><span class="permalink"><a href="#get_win_xy_addr">&#9670;&nbsp;</a></span>get_win_xy_addr</h2>
   1800 
   1801 <div class="memitem">
   1802 <div class="memproto">
   1803       <table class="memname">
   1804         <tr>
   1805           <td class="memname">#define get_win_xy_addr&#160;&#160;&#160;<a class="el" href="sms_8h.html#get_bkg_xy_addr">get_bkg_xy_addr</a></td>
   1806         </tr>
   1807       </table>
   1808 </div><div class="memdoc">
   1809 
   1810 </div>
   1811 </div>
   1812 <h2 class="groupheader">Typedef Documentation</h2>
   1813 <a id="int_handler" name="int_handler"></a>
   1814 <h2 class="memtitle"><span class="permalink"><a href="#int_handler">&#9670;&nbsp;</a></span>int_handler</h2>
   1815 
   1816 <div class="memitem">
   1817 <div class="memproto">
   1818       <table class="memname">
   1819         <tr>
   1820           <td class="memname">typedef void(* int_handler) (void) <a class="el" href="asm_2types_8h.html#NONBANKED">NONBANKED</a></td>
   1821         </tr>
   1822       </table>
   1823 </div><div class="memdoc">
   1824 <p >Interrupt handlers </p>
   1825 
   1826 </div>
   1827 </div>
   1828 <a id="OAM_item_t" name="OAM_item_t"></a>
   1829 <h2 class="memtitle"><span class="permalink"><a href="#OAM_item_t">&#9670;&nbsp;</a></span>OAM_item_t</h2>
   1830 
   1831 <div class="memitem">
   1832 <div class="memproto">
   1833       <table class="memname">
   1834         <tr>
   1835           <td class="memname">typedef struct <a class="el" href="struct_o_a_m__item__t.html">OAM_item_t</a> <a class="el" href="struct_o_a_m__item__t.html">OAM_item_t</a></td>
   1836         </tr>
   1837       </table>
   1838 </div><div class="memdoc">
   1839 <p >Sprite Attributes structure </p><dl class="params"><dt>Parameters</dt><dd>
   1840   <table class="params">
   1841     <tr><td class="paramname">x</td><td>X Coordinate of the sprite on screen </td></tr>
   1842     <tr><td class="paramname">y</td><td>Y Coordinate of the sprite on screen </td></tr>
   1843     <tr><td class="paramname">tile</td><td>Sprite tile number (see <a class="el" href="sms_8h.html#set_sprite_tile">set_sprite_tile</a>) </td></tr>
   1844     <tr><td class="paramname">prop</td><td>OAM Property Flags (see <a class="el" href="sms_8h.html#set_sprite_prop">set_sprite_prop</a>) </td></tr>
   1845   </table>
   1846   </dd>
   1847 </dl>
   1848 
   1849 </div>
   1850 </div>
   1851 <h2 class="groupheader">Function Documentation</h2>
   1852 <a id="WRITE_VDP_CMD" name="WRITE_VDP_CMD"></a>
   1853 <h2 class="memtitle"><span class="permalink"><a href="#WRITE_VDP_CMD">&#9670;&nbsp;</a></span>WRITE_VDP_CMD()</h2>
   1854 
   1855 <div class="memitem">
   1856 <div class="memproto">
   1857       <table class="memname">
   1858         <tr>
   1859           <td class="memname">void WRITE_VDP_CMD </td>
   1860           <td>(</td>
   1861           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   1862           <td class="paramname"><em>cmd</em></td><td>)</td>
   1863           <td></td>
   1864         </tr>
   1865       </table>
   1866 </div><div class="memdoc">
   1867 
   1868 </div>
   1869 </div>
   1870 <a id="WRITE_VDP_DATA" name="WRITE_VDP_DATA"></a>
   1871 <h2 class="memtitle"><span class="permalink"><a href="#WRITE_VDP_DATA">&#9670;&nbsp;</a></span>WRITE_VDP_DATA()</h2>
   1872 
   1873 <div class="memitem">
   1874 <div class="memproto">
   1875       <table class="memname">
   1876         <tr>
   1877           <td class="memname">void WRITE_VDP_DATA </td>
   1878           <td>(</td>
   1879           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   1880           <td class="paramname"><em>data</em></td><td>)</td>
   1881           <td></td>
   1882         </tr>
   1883       </table>
   1884 </div><div class="memdoc">
   1885 
   1886 </div>
   1887 </div>
   1888 <a id="mode" name="mode"></a>
   1889 <h2 class="memtitle"><span class="permalink"><a href="#mode">&#9670;&nbsp;</a></span>mode()</h2>
   1890 
   1891 <div class="memitem">
   1892 <div class="memproto">
   1893       <table class="memname">
   1894         <tr>
   1895           <td class="memname">void mode </td>
   1896           <td>(</td>
   1897           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   1898           <td class="paramname"><em>m</em></td><td>)</td>
   1899           <td></td>
   1900         </tr>
   1901       </table>
   1902 </div><div class="memdoc">
   1903 <p >Set the current screen mode - one of M_* modes</p>
   1904 <p >Normally used by internal functions only.</p>
   1905 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#M_TEXT_OUT">M_TEXT_OUT</a>, <a class="el" href="msx_8h.html#M_TEXT_INOUT">M_TEXT_INOUT</a>, <a class="el" href="msx_8h.html#M_NO_SCROLL">M_NO_SCROLL</a>, <a class="el" href="msx_8h.html#M_NO_INTERP">M_NO_INTERP</a> </dd></dl>
   1906 
   1907 </div>
   1908 </div>
   1909 <a id="get_mode" name="get_mode"></a>
   1910 <h2 class="memtitle"><span class="permalink"><a href="#get_mode">&#9670;&nbsp;</a></span>get_mode()</h2>
   1911 
   1912 <div class="memitem">
   1913 <div class="memproto">
   1914       <table class="memname">
   1915         <tr>
   1916           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> get_mode </td>
   1917           <td>(</td>
   1918           <td class="paramtype">void&#160;</td>
   1919           <td class="paramname"></td><td>)</td>
   1920           <td></td>
   1921         </tr>
   1922       </table>
   1923 </div><div class="memdoc">
   1924 <p >Returns the current mode</p>
   1925 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#M_TEXT_OUT">M_TEXT_OUT</a>, <a class="el" href="gb_8h.html#M_TEXT_INOUT">M_TEXT_INOUT</a>, <a class="el" href="gb_8h.html#M_NO_SCROLL">M_NO_SCROLL</a>, <a class="el" href="gb_8h.html#M_NO_INTERP">M_NO_INTERP</a></dd></dl>
   1926 <p>Returns the current mode</p>
   1927 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#M_DRAWING">M_DRAWING</a>, <a class="el" href="gb_8h.html#M_TEXT_OUT">M_TEXT_OUT</a>, <a class="el" href="gb_8h.html#M_TEXT_INOUT">M_TEXT_INOUT</a>, <a class="el" href="gb_8h.html#M_NO_SCROLL">M_NO_SCROLL</a>, <a class="el" href="gb_8h.html#M_NO_INTERP">M_NO_INTERP</a> </dd></dl>
   1928 
   1929 </div>
   1930 </div>
   1931 <a id="get_system" name="get_system"></a>
   1932 <h2 class="memtitle"><span class="permalink"><a href="#get_system">&#9670;&nbsp;</a></span>get_system()</h2>
   1933 
   1934 <div class="memitem">
   1935 <div class="memproto">
   1936 <table class="mlabels">
   1937   <tr>
   1938   <td class="mlabels-left">
   1939       <table class="memname">
   1940         <tr>
   1941           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> get_system </td>
   1942           <td>(</td>
   1943           <td class="paramtype">void&#160;</td>
   1944           <td class="paramname"></td><td>)</td>
   1945           <td></td>
   1946         </tr>
   1947       </table>
   1948   </td>
   1949   <td class="mlabels-right">
   1950 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   1951   </tr>
   1952 </table>
   1953 </div><div class="memdoc">
   1954 <p >Returns the system gbdk is running on. </p>
   1955 
   1956 </div>
   1957 </div>
   1958 <a id="set_interrupts" name="set_interrupts"></a>
   1959 <h2 class="memtitle"><span class="permalink"><a href="#set_interrupts">&#9670;&nbsp;</a></span>set_interrupts()</h2>
   1960 
   1961 <div class="memitem">
   1962 <div class="memproto">
   1963       <table class="memname">
   1964         <tr>
   1965           <td class="memname">void set_interrupts </td>
   1966           <td>(</td>
   1967           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   1968           <td class="paramname"><em>flags</em></td><td>)</td>
   1969           <td></td>
   1970         </tr>
   1971       </table>
   1972 </div><div class="memdoc">
   1973 <p >Clears any pending interrupts and sets the interrupt mask register IO to flags. </p><dl class="params"><dt>Parameters</dt><dd>
   1974   <table class="params">
   1975     <tr><td class="paramname">flags</td><td>A logical OR of *_IFLAGS</td></tr>
   1976   </table>
   1977   </dd>
   1978 </dl>
   1979 <dl class="section note"><dt>Note</dt><dd>This disables and then re-enables interrupts so it must be used outside of a critical section.</dd></dl>
   1980 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#enable_interrupts">enable_interrupts()</a>, <a class="el" href="gb_8h.html#disable_interrupts">disable_interrupts()</a> </dd>
   1981 <dd>
   1982 <a class="el" href="gb_8h.html#VBL_IFLAG">VBL_IFLAG</a>, <a class="el" href="gb_8h.html#LCD_IFLAG">LCD_IFLAG</a>, <a class="el" href="gb_8h.html#TIM_IFLAG">TIM_IFLAG</a>, <a class="el" href="gb_8h.html#SIO_IFLAG">SIO_IFLAG</a>, <a class="el" href="gb_8h.html#JOY_IFLAG">JOY_IFLAG</a> </dd></dl>
   1983 
   1984 </div>
   1985 </div>
   1986 <a id="remove_VBL" name="remove_VBL"></a>
   1987 <h2 class="memtitle"><span class="permalink"><a href="#remove_VBL">&#9670;&nbsp;</a></span>remove_VBL()</h2>
   1988 
   1989 <div class="memitem">
   1990 <div class="memproto">
   1991       <table class="memname">
   1992         <tr>
   1993           <td class="memname">void remove_VBL </td>
   1994           <td>(</td>
   1995           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   1996           <td class="paramname"><em>h</em></td><td>)</td>
   1997           <td></td>
   1998         </tr>
   1999       </table>
   2000 </div><div class="memdoc">
   2001 <p >Removes the VBL interrupt handler. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#add_VBL">add_VBL()</a> </dd></dl>
   2002 
   2003 </div>
   2004 </div>
   2005 <a id="remove_LCD" name="remove_LCD"></a>
   2006 <h2 class="memtitle"><span class="permalink"><a href="#remove_LCD">&#9670;&nbsp;</a></span>remove_LCD()</h2>
   2007 
   2008 <div class="memitem">
   2009 <div class="memproto">
   2010       <table class="memname">
   2011         <tr>
   2012           <td class="memname">void remove_LCD </td>
   2013           <td>(</td>
   2014           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2015           <td class="paramname"><em>h</em></td><td>)</td>
   2016           <td></td>
   2017         </tr>
   2018       </table>
   2019 </div><div class="memdoc">
   2020 <p >Removes the LCD interrupt handler. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#add_LCD">add_LCD()</a>, <a class="el" href="msx_8h.html#remove_VBL">remove_VBL()</a> </dd></dl>
   2021 
   2022 </div>
   2023 </div>
   2024 <a id="remove_TIM" name="remove_TIM"></a>
   2025 <h2 class="memtitle"><span class="permalink"><a href="#remove_TIM">&#9670;&nbsp;</a></span>remove_TIM()</h2>
   2026 
   2027 <div class="memitem">
   2028 <div class="memproto">
   2029       <table class="memname">
   2030         <tr>
   2031           <td class="memname">void remove_TIM </td>
   2032           <td>(</td>
   2033           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2034           <td class="paramname"><em>h</em></td><td>)</td>
   2035           <td></td>
   2036         </tr>
   2037       </table>
   2038 </div><div class="memdoc">
   2039 
   2040 </div>
   2041 </div>
   2042 <a id="remove_SIO" name="remove_SIO"></a>
   2043 <h2 class="memtitle"><span class="permalink"><a href="#remove_SIO">&#9670;&nbsp;</a></span>remove_SIO()</h2>
   2044 
   2045 <div class="memitem">
   2046 <div class="memproto">
   2047       <table class="memname">
   2048         <tr>
   2049           <td class="memname">void remove_SIO </td>
   2050           <td>(</td>
   2051           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2052           <td class="paramname"><em>h</em></td><td>)</td>
   2053           <td></td>
   2054         </tr>
   2055       </table>
   2056 </div><div class="memdoc">
   2057 
   2058 </div>
   2059 </div>
   2060 <a id="remove_JOY" name="remove_JOY"></a>
   2061 <h2 class="memtitle"><span class="permalink"><a href="#remove_JOY">&#9670;&nbsp;</a></span>remove_JOY()</h2>
   2062 
   2063 <div class="memitem">
   2064 <div class="memproto">
   2065       <table class="memname">
   2066         <tr>
   2067           <td class="memname">void remove_JOY </td>
   2068           <td>(</td>
   2069           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2070           <td class="paramname"><em>h</em></td><td>)</td>
   2071           <td></td>
   2072         </tr>
   2073       </table>
   2074 </div><div class="memdoc">
   2075 
   2076 </div>
   2077 </div>
   2078 <a id="add_VBL" name="add_VBL"></a>
   2079 <h2 class="memtitle"><span class="permalink"><a href="#add_VBL">&#9670;&nbsp;</a></span>add_VBL()</h2>
   2080 
   2081 <div class="memitem">
   2082 <div class="memproto">
   2083       <table class="memname">
   2084         <tr>
   2085           <td class="memname">void add_VBL </td>
   2086           <td>(</td>
   2087           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2088           <td class="paramname"><em>h</em></td><td>)</td>
   2089           <td></td>
   2090         </tr>
   2091       </table>
   2092 </div><div class="memdoc">
   2093 <p >Adds a V-blank interrupt handler. </p>
   2094 
   2095 </div>
   2096 </div>
   2097 <a id="add_LCD" name="add_LCD"></a>
   2098 <h2 class="memtitle"><span class="permalink"><a href="#add_LCD">&#9670;&nbsp;</a></span>add_LCD()</h2>
   2099 
   2100 <div class="memitem">
   2101 <div class="memproto">
   2102       <table class="memname">
   2103         <tr>
   2104           <td class="memname">void add_LCD </td>
   2105           <td>(</td>
   2106           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2107           <td class="paramname"><em>h</em></td><td>)</td>
   2108           <td></td>
   2109         </tr>
   2110       </table>
   2111 </div><div class="memdoc">
   2112 <p >Adds a LCD interrupt handler. </p>
   2113 
   2114 </div>
   2115 </div>
   2116 <a id="add_TIM" name="add_TIM"></a>
   2117 <h2 class="memtitle"><span class="permalink"><a href="#add_TIM">&#9670;&nbsp;</a></span>add_TIM()</h2>
   2118 
   2119 <div class="memitem">
   2120 <div class="memproto">
   2121       <table class="memname">
   2122         <tr>
   2123           <td class="memname">void add_TIM </td>
   2124           <td>(</td>
   2125           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2126           <td class="paramname"><em>h</em></td><td>)</td>
   2127           <td></td>
   2128         </tr>
   2129       </table>
   2130 </div><div class="memdoc">
   2131 <p >Does nothing on MSX </p>
   2132 
   2133 </div>
   2134 </div>
   2135 <a id="add_SIO" name="add_SIO"></a>
   2136 <h2 class="memtitle"><span class="permalink"><a href="#add_SIO">&#9670;&nbsp;</a></span>add_SIO()</h2>
   2137 
   2138 <div class="memitem">
   2139 <div class="memproto">
   2140       <table class="memname">
   2141         <tr>
   2142           <td class="memname">void add_SIO </td>
   2143           <td>(</td>
   2144           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2145           <td class="paramname"><em>h</em></td><td>)</td>
   2146           <td></td>
   2147         </tr>
   2148       </table>
   2149 </div><div class="memdoc">
   2150 <p >Does nothing on MSX </p>
   2151 
   2152 </div>
   2153 </div>
   2154 <a id="add_JOY" name="add_JOY"></a>
   2155 <h2 class="memtitle"><span class="permalink"><a href="#add_JOY">&#9670;&nbsp;</a></span>add_JOY()</h2>
   2156 
   2157 <div class="memitem">
   2158 <div class="memproto">
   2159       <table class="memname">
   2160         <tr>
   2161           <td class="memname">void add_JOY </td>
   2162           <td>(</td>
   2163           <td class="paramtype"><a class="el" href="sms_8h.html#int_handler">int_handler</a>&#160;</td>
   2164           <td class="paramname"><em>h</em></td><td>)</td>
   2165           <td></td>
   2166         </tr>
   2167       </table>
   2168 </div><div class="memdoc">
   2169 <p >Does nothing on MSX </p>
   2170 
   2171 </div>
   2172 </div>
   2173 <a id="cancel_pending_interrupts" name="cancel_pending_interrupts"></a>
   2174 <h2 class="memtitle"><span class="permalink"><a href="#cancel_pending_interrupts">&#9670;&nbsp;</a></span>cancel_pending_interrupts()</h2>
   2175 
   2176 <div class="memitem">
   2177 <div class="memproto">
   2178 <table class="mlabels">
   2179   <tr>
   2180   <td class="mlabels-left">
   2181       <table class="memname">
   2182         <tr>
   2183           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> cancel_pending_interrupts </td>
   2184           <td>(</td>
   2185           <td class="paramtype">void&#160;</td>
   2186           <td class="paramname"></td><td>)</td>
   2187           <td></td>
   2188         </tr>
   2189       </table>
   2190   </td>
   2191   <td class="mlabels-right">
   2192 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2193   </tr>
   2194 </table>
   2195 </div><div class="memdoc">
   2196 <p >Cancel pending interrupts </p>
   2197 
   2198 </div>
   2199 </div>
   2200 <a id="move_bkg" name="move_bkg"></a>
   2201 <h2 class="memtitle"><span class="permalink"><a href="#move_bkg">&#9670;&nbsp;</a></span>move_bkg()</h2>
   2202 
   2203 <div class="memitem">
   2204 <div class="memproto">
   2205 <table class="mlabels">
   2206   <tr>
   2207   <td class="mlabels-left">
   2208       <table class="memname">
   2209         <tr>
   2210           <td class="memname">void move_bkg </td>
   2211           <td>(</td>
   2212           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2213           <td class="paramname"><em>x</em>, </td>
   2214         </tr>
   2215         <tr>
   2216           <td class="paramkey"></td>
   2217           <td></td>
   2218           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2219           <td class="paramname"><em>y</em>&#160;</td>
   2220         </tr>
   2221         <tr>
   2222           <td></td>
   2223           <td>)</td>
   2224           <td></td><td></td>
   2225         </tr>
   2226       </table>
   2227   </td>
   2228   <td class="mlabels-right">
   2229 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2230   </tr>
   2231 </table>
   2232 </div><div class="memdoc">
   2233 
   2234 </div>
   2235 </div>
   2236 <a id="scroll_bkg" name="scroll_bkg"></a>
   2237 <h2 class="memtitle"><span class="permalink"><a href="#scroll_bkg">&#9670;&nbsp;</a></span>scroll_bkg()</h2>
   2238 
   2239 <div class="memitem">
   2240 <div class="memproto">
   2241 <table class="mlabels">
   2242   <tr>
   2243   <td class="mlabels-left">
   2244       <table class="memname">
   2245         <tr>
   2246           <td class="memname">void scroll_bkg </td>
   2247           <td>(</td>
   2248           <td class="paramtype"><a class="el" href="stdint_8h.html#int8_t">int8_t</a>&#160;</td>
   2249           <td class="paramname"><em>x</em>, </td>
   2250         </tr>
   2251         <tr>
   2252           <td class="paramkey"></td>
   2253           <td></td>
   2254           <td class="paramtype"><a class="el" href="stdint_8h.html#int8_t">int8_t</a>&#160;</td>
   2255           <td class="paramname"><em>y</em>&#160;</td>
   2256         </tr>
   2257         <tr>
   2258           <td></td>
   2259           <td>)</td>
   2260           <td></td><td></td>
   2261         </tr>
   2262       </table>
   2263   </td>
   2264   <td class="mlabels-right">
   2265 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2266   </tr>
   2267 </table>
   2268 </div><div class="memdoc">
   2269 
   2270 </div>
   2271 </div>
   2272 <a id="vsync" name="vsync"></a>
   2273 <h2 class="memtitle"><span class="permalink"><a href="#vsync">&#9670;&nbsp;</a></span>vsync()</h2>
   2274 
   2275 <div class="memitem">
   2276 <div class="memproto">
   2277       <table class="memname">
   2278         <tr>
   2279           <td class="memname">void vsync </td>
   2280           <td>(</td>
   2281           <td class="paramtype">void&#160;</td>
   2282           <td class="paramname"></td><td>)</td>
   2283           <td></td>
   2284         </tr>
   2285       </table>
   2286 </div><div class="memdoc">
   2287 <p >HALTs the CPU and waits for the vertical blank interrupt.</p>
   2288 <p >This is often used in main loops to idle the CPU at low power until it's time to start the next frame. It's also useful for syncing animation with the screen re-draw.</p>
   2289 <p >Warning: If the VBL interrupt is disabled, this function will never return. If the screen is off this function returns immediately. </p>
   2290 
   2291 </div>
   2292 </div>
   2293 <a id="wait_vbl_done" name="wait_vbl_done"></a>
   2294 <h2 class="memtitle"><span class="permalink"><a href="#wait_vbl_done">&#9670;&nbsp;</a></span>wait_vbl_done()</h2>
   2295 
   2296 <div class="memitem">
   2297 <div class="memproto">
   2298       <table class="memname">
   2299         <tr>
   2300           <td class="memname">void wait_vbl_done </td>
   2301           <td>(</td>
   2302           <td class="paramtype">void&#160;</td>
   2303           <td class="paramname"></td><td>)</td>
   2304           <td></td>
   2305         </tr>
   2306       </table>
   2307 </div><div class="memdoc">
   2308 <p >Obsolete. This function has been replaced by <a class="el" href="msx_8h.html#vsync">vsync()</a>, which has identical behavior. </p>
   2309 
   2310 </div>
   2311 </div>
   2312 <a id="display_off" name="display_off"></a>
   2313 <h2 class="memtitle"><span class="permalink"><a href="#display_off">&#9670;&nbsp;</a></span>display_off()</h2>
   2314 
   2315 <div class="memitem">
   2316 <div class="memproto">
   2317 <table class="mlabels">
   2318   <tr>
   2319   <td class="mlabels-left">
   2320       <table class="memname">
   2321         <tr>
   2322           <td class="memname">void display_off </td>
   2323           <td>(</td>
   2324           <td class="paramtype">void&#160;</td>
   2325           <td class="paramname"></td><td>)</td>
   2326           <td></td>
   2327         </tr>
   2328       </table>
   2329   </td>
   2330   <td class="mlabels-right">
   2331 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2332   </tr>
   2333 </table>
   2334 </div><div class="memdoc">
   2335 <p >Turns the display off.</p>
   2336 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#DISPLAY_ON">DISPLAY_ON</a> </dd></dl>
   2337 
   2338 </div>
   2339 </div>
   2340 <a id="refresh_OAM" name="refresh_OAM"></a>
   2341 <h2 class="memtitle"><span class="permalink"><a href="#refresh_OAM">&#9670;&nbsp;</a></span>refresh_OAM()</h2>
   2342 
   2343 <div class="memitem">
   2344 <div class="memproto">
   2345       <table class="memname">
   2346         <tr>
   2347           <td class="memname">void refresh_OAM </td>
   2348           <td>(</td>
   2349           <td class="paramtype">void&#160;</td>
   2350           <td class="paramname"></td><td>)</td>
   2351           <td></td>
   2352         </tr>
   2353       </table>
   2354 </div><div class="memdoc">
   2355 <p >Copies data from shadow OAM to OAM </p>
   2356 
   2357 </div>
   2358 </div>
   2359 <a id="get_r_reg" name="get_r_reg"></a>
   2360 <h2 class="memtitle"><span class="permalink"><a href="#get_r_reg">&#9670;&nbsp;</a></span>get_r_reg()</h2>
   2361 
   2362 <div class="memitem">
   2363 <div class="memproto">
   2364       <table class="memname">
   2365         <tr>
   2366           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> get_r_reg </td>
   2367           <td>(</td>
   2368           <td class="paramtype">void&#160;</td>
   2369           <td class="paramname"></td><td>)</td>
   2370           <td></td>
   2371         </tr>
   2372       </table>
   2373 </div><div class="memdoc">
   2374 <p >Return R register for the DIV_REG emulation</p>
   2375 <p >Increments once per CPU instruction (fetches the Z80 CPU R register) </p>
   2376 
   2377 </div>
   2378 </div>
   2379 <a id="SWITCH_ROM" name="SWITCH_ROM"></a>
   2380 <h2 class="memtitle"><span class="permalink"><a href="#SWITCH_ROM">&#9670;&nbsp;</a></span>SWITCH_ROM()</h2>
   2381 
   2382 <div class="memitem">
   2383 <div class="memproto">
   2384       <table class="memname">
   2385         <tr>
   2386           <td class="memname">void SWITCH_ROM </td>
   2387           <td>(</td>
   2388           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2389           <td class="paramname"><em>bank</em></td><td>)</td>
   2390           <td></td>
   2391         </tr>
   2392       </table>
   2393 </div><div class="memdoc">
   2394 <p >Makes switch the active ROM bank in frame 1 </p><dl class="params"><dt>Parameters</dt><dd>
   2395   <table class="params">
   2396     <tr><td class="paramname">bank</td><td>ROM bank to switch to </td></tr>
   2397   </table>
   2398   </dd>
   2399 </dl>
   2400 
   2401 </div>
   2402 </div>
   2403 <a id="delay" name="delay"></a>
   2404 <h2 class="memtitle"><span class="permalink"><a href="#delay">&#9670;&nbsp;</a></span>delay()</h2>
   2405 
   2406 <div class="memitem">
   2407 <div class="memproto">
   2408       <table class="memname">
   2409         <tr>
   2410           <td class="memname">void delay </td>
   2411           <td>(</td>
   2412           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2413           <td class="paramname"><em>d</em></td><td>)</td>
   2414           <td></td>
   2415         </tr>
   2416       </table>
   2417 </div><div class="memdoc">
   2418 <p >Delays the given number of milliseconds. Uses no timers or interrupts, and can be called with interrupts disabled </p>
   2419 
   2420 </div>
   2421 </div>
   2422 <a id="joypad" name="joypad"></a>
   2423 <h2 class="memtitle"><span class="permalink"><a href="#joypad">&#9670;&nbsp;</a></span>joypad()</h2>
   2424 
   2425 <div class="memitem">
   2426 <div class="memproto">
   2427       <table class="memname">
   2428         <tr>
   2429           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> joypad </td>
   2430           <td>(</td>
   2431           <td class="paramtype">void&#160;</td>
   2432           <td class="paramname"></td><td>)</td>
   2433           <td></td>
   2434         </tr>
   2435       </table>
   2436 </div><div class="memdoc">
   2437 <p >Reads and returns the current state of the joypad. </p>
   2438 
   2439 </div>
   2440 </div>
   2441 <a id="waitpad" name="waitpad"></a>
   2442 <h2 class="memtitle"><span class="permalink"><a href="#waitpad">&#9670;&nbsp;</a></span>waitpad()</h2>
   2443 
   2444 <div class="memitem">
   2445 <div class="memproto">
   2446       <table class="memname">
   2447         <tr>
   2448           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> waitpad </td>
   2449           <td>(</td>
   2450           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2451           <td class="paramname"><em>mask</em></td><td>)</td>
   2452           <td></td>
   2453         </tr>
   2454       </table>
   2455 </div><div class="memdoc">
   2456 <p >Waits until at least one of the buttons given in mask are pressed. </p>
   2457 
   2458 </div>
   2459 </div>
   2460 <a id="waitpadup" name="waitpadup"></a>
   2461 <h2 class="memtitle"><span class="permalink"><a href="#waitpadup">&#9670;&nbsp;</a></span>waitpadup()</h2>
   2462 
   2463 <div class="memitem">
   2464 <div class="memproto">
   2465       <table class="memname">
   2466         <tr>
   2467           <td class="memname">void waitpadup </td>
   2468           <td>(</td>
   2469           <td class="paramtype">void&#160;</td>
   2470           <td class="paramname"></td><td>)</td>
   2471           <td></td>
   2472         </tr>
   2473       </table>
   2474 </div><div class="memdoc">
   2475 <p >Waits for the directional pad and all buttons to be released.</p>
   2476 <p >Note: Checks in a loop that doesn't HALT at all, so the CPU will be maxed out until this call returns. </p>
   2477 
   2478 </div>
   2479 </div>
   2480 <a id="joypad_init" name="joypad_init"></a>
   2481 <h2 class="memtitle"><span class="permalink"><a href="#joypad_init">&#9670;&nbsp;</a></span>joypad_init()</h2>
   2482 
   2483 <div class="memitem">
   2484 <div class="memproto">
   2485       <table class="memname">
   2486         <tr>
   2487           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> joypad_init </td>
   2488           <td>(</td>
   2489           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2490           <td class="paramname"><em>npads</em>, </td>
   2491         </tr>
   2492         <tr>
   2493           <td class="paramkey"></td>
   2494           <td></td>
   2495           <td class="paramtype"><a class="el" href="structjoypads__t.html">joypads_t</a> *&#160;</td>
   2496           <td class="paramname"><em>joypads</em>&#160;</td>
   2497         </tr>
   2498         <tr>
   2499           <td></td>
   2500           <td>)</td>
   2501           <td></td><td></td>
   2502         </tr>
   2503       </table>
   2504 </div><div class="memdoc">
   2505 <p >Initializes <a class="el" href="structjoypads__t.html">joypads_t</a> structure for polling multiple joypads </p><dl class="params"><dt>Parameters</dt><dd>
   2506   <table class="params">
   2507     <tr><td class="paramname">npads</td><td>number of joypads requested (1, 2 or 4) </td></tr>
   2508     <tr><td class="paramname">joypads</td><td>pointer to <a class="el" href="structjoypads__t.html">joypads_t</a> structure to be initialized</td></tr>
   2509   </table>
   2510   </dd>
   2511 </dl>
   2512 <p>Only required for <a class="el" href="sms_8h.html#joypad_ex">joypad_ex</a>, not required for calls to regular <a class="el" href="gb_8h.html#joypad">joypad()</a> </p><dl class="section return"><dt>Returns</dt><dd>number of joypads avaliable </dd></dl>
   2513 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#joypad_ex">joypad_ex()</a>, <a class="el" href="structjoypads__t.html">joypads_t</a> </dd></dl>
   2514 
   2515 </div>
   2516 </div>
   2517 <a id="joypad_ex" name="joypad_ex"></a>
   2518 <h2 class="memtitle"><span class="permalink"><a href="#joypad_ex">&#9670;&nbsp;</a></span>joypad_ex()</h2>
   2519 
   2520 <div class="memitem">
   2521 <div class="memproto">
   2522       <table class="memname">
   2523         <tr>
   2524           <td class="memname">void joypad_ex </td>
   2525           <td>(</td>
   2526           <td class="paramtype"><a class="el" href="structjoypads__t.html">joypads_t</a> *&#160;</td>
   2527           <td class="paramname"><em>joypads</em></td><td>)</td>
   2528           <td></td>
   2529         </tr>
   2530       </table>
   2531 </div><div class="memdoc">
   2532 <p >Polls all avaliable joypads </p><dl class="params"><dt>Parameters</dt><dd>
   2533   <table class="params">
   2534     <tr><td class="paramname">joypads</td><td>pointer to <a class="el" href="structjoypads__t.html">joypads_t</a> structure to be filled with joypad statuses, must be previously initialized with <a class="el" href="msx_8h.html#joypad_init">joypad_init()</a></td></tr>
   2535   </table>
   2536   </dd>
   2537 </dl>
   2538 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#joypad_init">joypad_init()</a>, <a class="el" href="structjoypads__t.html">joypads_t</a> </dd></dl>
   2539 
   2540 </div>
   2541 </div>
   2542 <a id="enable_interrupts" name="enable_interrupts"></a>
   2543 <h2 class="memtitle"><span class="permalink"><a href="#enable_interrupts">&#9670;&nbsp;</a></span>enable_interrupts()</h2>
   2544 
   2545 <div class="memitem">
   2546 <div class="memproto">
   2547 <table class="mlabels">
   2548   <tr>
   2549   <td class="mlabels-left">
   2550       <table class="memname">
   2551         <tr>
   2552           <td class="memname">void enable_interrupts </td>
   2553           <td>(</td>
   2554           <td class="paramtype">void&#160;</td>
   2555           <td class="paramname"></td><td>)</td>
   2556           <td></td>
   2557         </tr>
   2558       </table>
   2559   </td>
   2560   <td class="mlabels-right">
   2561 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2562   </tr>
   2563 </table>
   2564 </div><div class="memdoc">
   2565 <p >Enables unmasked interrupts</p>
   2566 <dl class="section note"><dt>Note</dt><dd>Use <a class="el" href="asm_2types_8h.html#CRITICAL">CRITICAL</a> {...} instead for creating a block of of code which should execute with interrupts temporarily turned off.</dd></dl>
   2567 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#disable_interrupts">disable_interrupts</a>, <a class="el" href="msx_8h.html#set_interrupts">set_interrupts</a>, <a class="el" href="asm_2types_8h.html#CRITICAL">CRITICAL</a> </dd></dl>
   2568 
   2569 </div>
   2570 </div>
   2571 <a id="disable_interrupts" name="disable_interrupts"></a>
   2572 <h2 class="memtitle"><span class="permalink"><a href="#disable_interrupts">&#9670;&nbsp;</a></span>disable_interrupts()</h2>
   2573 
   2574 <div class="memitem">
   2575 <div class="memproto">
   2576 <table class="mlabels">
   2577   <tr>
   2578   <td class="mlabels-left">
   2579       <table class="memname">
   2580         <tr>
   2581           <td class="memname">void disable_interrupts </td>
   2582           <td>(</td>
   2583           <td class="paramtype">void&#160;</td>
   2584           <td class="paramname"></td><td>)</td>
   2585           <td></td>
   2586         </tr>
   2587       </table>
   2588   </td>
   2589   <td class="mlabels-right">
   2590 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2591   </tr>
   2592 </table>
   2593 </div><div class="memdoc">
   2594 <p >Disables interrupts</p>
   2595 <dl class="section note"><dt>Note</dt><dd>Use <a class="el" href="asm_2types_8h.html#CRITICAL">CRITICAL</a> {...} instead for creating a block of of code which should execute with interrupts temporarily turned off.</dd></dl>
   2596 <p>This function may be called as many times as you like; however the first call to <a class="el" href="sms_8h.html#enable_interrupts">enable_interrupts</a> will re-enable them.</p>
   2597 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#enable_interrupts">enable_interrupts</a>, <a class="el" href="msx_8h.html#set_interrupts">set_interrupts</a>, <a class="el" href="asm_2types_8h.html#CRITICAL">CRITICAL</a> </dd></dl>
   2598 
   2599 </div>
   2600 </div>
   2601 <a id="set_default_palette" name="set_default_palette"></a>
   2602 <h2 class="memtitle"><span class="permalink"><a href="#set_default_palette">&#9670;&nbsp;</a></span>set_default_palette()</h2>
   2603 
   2604 <div class="memitem">
   2605 <div class="memproto">
   2606       <table class="memname">
   2607         <tr>
   2608           <td class="memname">void set_default_palette </td>
   2609           <td>(</td>
   2610           <td class="paramtype">void&#160;</td>
   2611           <td class="paramname"></td><td>)</td>
   2612           <td></td>
   2613         </tr>
   2614       </table>
   2615 </div><div class="memdoc">
   2616 
   2617 </div>
   2618 </div>
   2619 <a id="cpu_fast" name="cpu_fast"></a>
   2620 <h2 class="memtitle"><span class="permalink"><a href="#cpu_fast">&#9670;&nbsp;</a></span>cpu_fast()</h2>
   2621 
   2622 <div class="memitem">
   2623 <div class="memproto">
   2624 <table class="mlabels">
   2625   <tr>
   2626   <td class="mlabels-left">
   2627       <table class="memname">
   2628         <tr>
   2629           <td class="memname">void cpu_fast </td>
   2630           <td>(</td>
   2631           <td class="paramtype">void&#160;</td>
   2632           <td class="paramname"></td><td>)</td>
   2633           <td></td>
   2634         </tr>
   2635       </table>
   2636   </td>
   2637   <td class="mlabels-right">
   2638 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2639   </tr>
   2640 </table>
   2641 </div><div class="memdoc">
   2642 <p >Set CPU speed to fast (CGB Double Speed) operation.</p>
   2643 <p >On startup the CGB operates in Normal Speed Mode and can be switched into Double speed mode (faster processing but also higher power consumption). See the Pan Docs for more information about which hardware features operate faster and which remain at Normal Speed.</p>
   2644 <ul>
   2645 <li>Interrupts are temporarily disabled and then re-enabled during this call. </li>
   2646 <li>You can check to see if <a class="el" href="gb_8h.html#_cpu">_cpu</a> == <a class="el" href="gb_8h.html#CGB_TYPE">CGB_TYPE</a> before using this function.</li>
   2647 </ul>
   2648 <dl class="section see"><dt>See also</dt><dd><a class="el" href="cgb_8h.html#cpu_slow">cpu_slow()</a>, <a class="el" href="gb_8h.html#_cpu">_cpu</a> </dd></dl>
   2649 
   2650 </div>
   2651 </div>
   2652 <a id="set_palette_entry" name="set_palette_entry"></a>
   2653 <h2 class="memtitle"><span class="permalink"><a href="#set_palette_entry">&#9670;&nbsp;</a></span>set_palette_entry()</h2>
   2654 
   2655 <div class="memitem">
   2656 <div class="memproto">
   2657       <table class="memname">
   2658         <tr>
   2659           <td class="memname">void set_palette_entry </td>
   2660           <td>(</td>
   2661           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2662           <td class="paramname"><em>palette</em>, </td>
   2663         </tr>
   2664         <tr>
   2665           <td class="paramkey"></td>
   2666           <td></td>
   2667           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2668           <td class="paramname"><em>entry</em>, </td>
   2669         </tr>
   2670         <tr>
   2671           <td class="paramkey"></td>
   2672           <td></td>
   2673           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2674           <td class="paramname"><em>rgb_data</em>&#160;</td>
   2675         </tr>
   2676         <tr>
   2677           <td></td>
   2678           <td>)</td>
   2679           <td></td><td></td>
   2680         </tr>
   2681       </table>
   2682 </div><div class="memdoc">
   2683 
   2684 </div>
   2685 </div>
   2686 <a id="set_palette" name="set_palette"></a>
   2687 <h2 class="memtitle"><span class="permalink"><a href="#set_palette">&#9670;&nbsp;</a></span>set_palette()</h2>
   2688 
   2689 <div class="memitem">
   2690 <div class="memproto">
   2691       <table class="memname">
   2692         <tr>
   2693           <td class="memname">void set_palette </td>
   2694           <td>(</td>
   2695           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2696           <td class="paramname"><em>first_palette</em>, </td>
   2697         </tr>
   2698         <tr>
   2699           <td class="paramkey"></td>
   2700           <td></td>
   2701           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   2702           <td class="paramname"><em>nb_palettes</em>, </td>
   2703         </tr>
   2704         <tr>
   2705           <td class="paramkey"></td>
   2706           <td></td>
   2707           <td class="paramtype">const <a class="el" href="cgb_8h.html#palette_color_t">palette_color_t</a> *&#160;</td>
   2708           <td class="paramname"><em>rgb_data</em>&#160;</td>
   2709         </tr>
   2710         <tr>
   2711           <td></td>
   2712           <td>)</td>
   2713           <td></td><td></td>
   2714         </tr>
   2715       </table>
   2716 </div><div class="memdoc">
   2717 
   2718 </div>
   2719 </div>
   2720 <a id="set_native_tile_data" name="set_native_tile_data"></a>
   2721 <h2 class="memtitle"><span class="permalink"><a href="#set_native_tile_data">&#9670;&nbsp;</a></span>set_native_tile_data()</h2>
   2722 
   2723 <div class="memitem">
   2724 <div class="memproto">
   2725       <table class="memname">
   2726         <tr>
   2727           <td class="memname">void set_native_tile_data </td>
   2728           <td>(</td>
   2729           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2730           <td class="paramname"><em>start</em>, </td>
   2731         </tr>
   2732         <tr>
   2733           <td class="paramkey"></td>
   2734           <td></td>
   2735           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2736           <td class="paramname"><em>ntiles</em>, </td>
   2737         </tr>
   2738         <tr>
   2739           <td class="paramkey"></td>
   2740           <td></td>
   2741           <td class="paramtype">const void *&#160;</td>
   2742           <td class="paramname"><em>src</em>&#160;</td>
   2743         </tr>
   2744         <tr>
   2745           <td></td>
   2746           <td>)</td>
   2747           <td></td><td></td>
   2748         </tr>
   2749       </table>
   2750 </div><div class="memdoc">
   2751 
   2752 </div>
   2753 </div>
   2754 <a id="set_bkg_4bpp_data" name="set_bkg_4bpp_data"></a>
   2755 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_4bpp_data">&#9670;&nbsp;</a></span>set_bkg_4bpp_data()</h2>
   2756 
   2757 <div class="memitem">
   2758 <div class="memproto">
   2759 <table class="mlabels">
   2760   <tr>
   2761   <td class="mlabels-left">
   2762       <table class="memname">
   2763         <tr>
   2764           <td class="memname">void set_bkg_4bpp_data </td>
   2765           <td>(</td>
   2766           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2767           <td class="paramname"><em>start</em>, </td>
   2768         </tr>
   2769         <tr>
   2770           <td class="paramkey"></td>
   2771           <td></td>
   2772           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2773           <td class="paramname"><em>ntiles</em>, </td>
   2774         </tr>
   2775         <tr>
   2776           <td class="paramkey"></td>
   2777           <td></td>
   2778           <td class="paramtype">const void *&#160;</td>
   2779           <td class="paramname"><em>src</em>&#160;</td>
   2780         </tr>
   2781         <tr>
   2782           <td></td>
   2783           <td>)</td>
   2784           <td></td><td></td>
   2785         </tr>
   2786       </table>
   2787   </td>
   2788   <td class="mlabels-right">
   2789 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2790   </tr>
   2791 </table>
   2792 </div><div class="memdoc">
   2793 
   2794 </div>
   2795 </div>
   2796 <a id="set_sprite_1bpp_data" name="set_sprite_1bpp_data"></a>
   2797 <h2 class="memtitle"><span class="permalink"><a href="#set_sprite_1bpp_data">&#9670;&nbsp;</a></span>set_sprite_1bpp_data()</h2>
   2798 
   2799 <div class="memitem">
   2800 <div class="memproto">
   2801 <table class="mlabels">
   2802   <tr>
   2803   <td class="mlabels-left">
   2804       <table class="memname">
   2805         <tr>
   2806           <td class="memname">void set_sprite_1bpp_data </td>
   2807           <td>(</td>
   2808           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2809           <td class="paramname"><em>start</em>, </td>
   2810         </tr>
   2811         <tr>
   2812           <td class="paramkey"></td>
   2813           <td></td>
   2814           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2815           <td class="paramname"><em>ntiles</em>, </td>
   2816         </tr>
   2817         <tr>
   2818           <td class="paramkey"></td>
   2819           <td></td>
   2820           <td class="paramtype">const void *&#160;</td>
   2821           <td class="paramname"><em>src</em>&#160;</td>
   2822         </tr>
   2823         <tr>
   2824           <td></td>
   2825           <td>)</td>
   2826           <td></td><td></td>
   2827         </tr>
   2828       </table>
   2829   </td>
   2830   <td class="mlabels-right">
   2831 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2832   </tr>
   2833 </table>
   2834 </div><div class="memdoc">
   2835 
   2836 </div>
   2837 </div>
   2838 <a id="set_native_sprite_data" name="set_native_sprite_data"></a>
   2839 <h2 class="memtitle"><span class="permalink"><a href="#set_native_sprite_data">&#9670;&nbsp;</a></span>set_native_sprite_data()</h2>
   2840 
   2841 <div class="memitem">
   2842 <div class="memproto">
   2843 <table class="mlabels">
   2844   <tr>
   2845   <td class="mlabels-left">
   2846       <table class="memname">
   2847         <tr>
   2848           <td class="memname">void set_native_sprite_data </td>
   2849           <td>(</td>
   2850           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2851           <td class="paramname"><em>start</em>, </td>
   2852         </tr>
   2853         <tr>
   2854           <td class="paramkey"></td>
   2855           <td></td>
   2856           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2857           <td class="paramname"><em>ntiles</em>, </td>
   2858         </tr>
   2859         <tr>
   2860           <td class="paramkey"></td>
   2861           <td></td>
   2862           <td class="paramtype">const void *&#160;</td>
   2863           <td class="paramname"><em>src</em>&#160;</td>
   2864         </tr>
   2865         <tr>
   2866           <td></td>
   2867           <td>)</td>
   2868           <td></td><td></td>
   2869         </tr>
   2870       </table>
   2871   </td>
   2872   <td class="mlabels-right">
   2873 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2874   </tr>
   2875 </table>
   2876 </div><div class="memdoc">
   2877 
   2878 </div>
   2879 </div>
   2880 <a id="set_2bpp_palette" name="set_2bpp_palette"></a>
   2881 <h2 class="memtitle"><span class="permalink"><a href="#set_2bpp_palette">&#9670;&nbsp;</a></span>set_2bpp_palette()</h2>
   2882 
   2883 <div class="memitem">
   2884 <div class="memproto">
   2885 <table class="mlabels">
   2886   <tr>
   2887   <td class="mlabels-left">
   2888       <table class="memname">
   2889         <tr>
   2890           <td class="memname">void set_2bpp_palette </td>
   2891           <td>(</td>
   2892           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2893           <td class="paramname"><em>palette</em></td><td>)</td>
   2894           <td></td>
   2895         </tr>
   2896       </table>
   2897   </td>
   2898   <td class="mlabels-right">
   2899 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2900   </tr>
   2901 </table>
   2902 </div><div class="memdoc">
   2903 
   2904 </div>
   2905 </div>
   2906 <a id="set_bkg_data" name="set_bkg_data"></a>
   2907 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_data">&#9670;&nbsp;</a></span>set_bkg_data()</h2>
   2908 
   2909 <div class="memitem">
   2910 <div class="memproto">
   2911 <table class="mlabels">
   2912   <tr>
   2913   <td class="mlabels-left">
   2914       <table class="memname">
   2915         <tr>
   2916           <td class="memname">void set_bkg_data </td>
   2917           <td>(</td>
   2918           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2919           <td class="paramname"><em>start</em>, </td>
   2920         </tr>
   2921         <tr>
   2922           <td class="paramkey"></td>
   2923           <td></td>
   2924           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2925           <td class="paramname"><em>ntiles</em>, </td>
   2926         </tr>
   2927         <tr>
   2928           <td class="paramkey"></td>
   2929           <td></td>
   2930           <td class="paramtype">const void *&#160;</td>
   2931           <td class="paramname"><em>src</em>&#160;</td>
   2932         </tr>
   2933         <tr>
   2934           <td></td>
   2935           <td>)</td>
   2936           <td></td><td></td>
   2937         </tr>
   2938       </table>
   2939   </td>
   2940   <td class="mlabels-right">
   2941 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2942   </tr>
   2943 </table>
   2944 </div><div class="memdoc">
   2945 
   2946 </div>
   2947 </div>
   2948 <a id="set_sprite_data" name="set_sprite_data"></a>
   2949 <h2 class="memtitle"><span class="permalink"><a href="#set_sprite_data">&#9670;&nbsp;</a></span>set_sprite_data()</h2>
   2950 
   2951 <div class="memitem">
   2952 <div class="memproto">
   2953 <table class="mlabels">
   2954   <tr>
   2955   <td class="mlabels-left">
   2956       <table class="memname">
   2957         <tr>
   2958           <td class="memname">void set_sprite_data </td>
   2959           <td>(</td>
   2960           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2961           <td class="paramname"><em>start</em>, </td>
   2962         </tr>
   2963         <tr>
   2964           <td class="paramkey"></td>
   2965           <td></td>
   2966           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   2967           <td class="paramname"><em>ntiles</em>, </td>
   2968         </tr>
   2969         <tr>
   2970           <td class="paramkey"></td>
   2971           <td></td>
   2972           <td class="paramtype">const void *&#160;</td>
   2973           <td class="paramname"><em>src</em>&#160;</td>
   2974         </tr>
   2975         <tr>
   2976           <td></td>
   2977           <td>)</td>
   2978           <td></td><td></td>
   2979         </tr>
   2980       </table>
   2981   </td>
   2982   <td class="mlabels-right">
   2983 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   2984   </tr>
   2985 </table>
   2986 </div><div class="memdoc">
   2987 
   2988 </div>
   2989 </div>
   2990 <a id="set_1bpp_colors" name="set_1bpp_colors"></a>
   2991 <h2 class="memtitle"><span class="permalink"><a href="#set_1bpp_colors">&#9670;&nbsp;</a></span>set_1bpp_colors()</h2>
   2992 
   2993 <div class="memitem">
   2994 <div class="memproto">
   2995 <table class="mlabels">
   2996   <tr>
   2997   <td class="mlabels-left">
   2998       <table class="memname">
   2999         <tr>
   3000           <td class="memname">void set_1bpp_colors </td>
   3001           <td>(</td>
   3002           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3003           <td class="paramname"><em>fgcolor</em>, </td>
   3004         </tr>
   3005         <tr>
   3006           <td class="paramkey"></td>
   3007           <td></td>
   3008           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3009           <td class="paramname"><em>bgcolor</em>&#160;</td>
   3010         </tr>
   3011         <tr>
   3012           <td></td>
   3013           <td>)</td>
   3014           <td></td><td></td>
   3015         </tr>
   3016       </table>
   3017   </td>
   3018   <td class="mlabels-right">
   3019 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3020   </tr>
   3021 </table>
   3022 </div><div class="memdoc">
   3023 
   3024 </div>
   3025 </div>
   3026 <a id="set_tile_1bpp_data" name="set_tile_1bpp_data"></a>
   3027 <h2 class="memtitle"><span class="permalink"><a href="#set_tile_1bpp_data">&#9670;&nbsp;</a></span>set_tile_1bpp_data()</h2>
   3028 
   3029 <div class="memitem">
   3030 <div class="memproto">
   3031       <table class="memname">
   3032         <tr>
   3033           <td class="memname">void set_tile_1bpp_data </td>
   3034           <td>(</td>
   3035           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3036           <td class="paramname"><em>start</em>, </td>
   3037         </tr>
   3038         <tr>
   3039           <td class="paramkey"></td>
   3040           <td></td>
   3041           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3042           <td class="paramname"><em>ntiles</em>, </td>
   3043         </tr>
   3044         <tr>
   3045           <td class="paramkey"></td>
   3046           <td></td>
   3047           <td class="paramtype">const void *&#160;</td>
   3048           <td class="paramname"><em>src</em>, </td>
   3049         </tr>
   3050         <tr>
   3051           <td class="paramkey"></td>
   3052           <td></td>
   3053           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3054           <td class="paramname"><em>colors</em>&#160;</td>
   3055         </tr>
   3056         <tr>
   3057           <td></td>
   3058           <td>)</td>
   3059           <td></td><td></td>
   3060         </tr>
   3061       </table>
   3062 </div><div class="memdoc">
   3063 
   3064 </div>
   3065 </div>
   3066 <a id="set_bkg_1bpp_data" name="set_bkg_1bpp_data"></a>
   3067 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_1bpp_data">&#9670;&nbsp;</a></span>set_bkg_1bpp_data()</h2>
   3068 
   3069 <div class="memitem">
   3070 <div class="memproto">
   3071 <table class="mlabels">
   3072   <tr>
   3073   <td class="mlabels-left">
   3074       <table class="memname">
   3075         <tr>
   3076           <td class="memname">void set_bkg_1bpp_data </td>
   3077           <td>(</td>
   3078           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3079           <td class="paramname"><em>start</em>, </td>
   3080         </tr>
   3081         <tr>
   3082           <td class="paramkey"></td>
   3083           <td></td>
   3084           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3085           <td class="paramname"><em>ntiles</em>, </td>
   3086         </tr>
   3087         <tr>
   3088           <td class="paramkey"></td>
   3089           <td></td>
   3090           <td class="paramtype">const void *&#160;</td>
   3091           <td class="paramname"><em>src</em>&#160;</td>
   3092         </tr>
   3093         <tr>
   3094           <td></td>
   3095           <td>)</td>
   3096           <td></td><td></td>
   3097         </tr>
   3098       </table>
   3099   </td>
   3100   <td class="mlabels-right">
   3101 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3102   </tr>
   3103 </table>
   3104 </div><div class="memdoc">
   3105 
   3106 </div>
   3107 </div>
   3108 <a id="set_data" name="set_data"></a>
   3109 <h2 class="memtitle"><span class="permalink"><a href="#set_data">&#9670;&nbsp;</a></span>set_data()</h2>
   3110 
   3111 <div class="memitem">
   3112 <div class="memproto">
   3113       <table class="memname">
   3114         <tr>
   3115           <td class="memname">void set_data </td>
   3116           <td>(</td>
   3117           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3118           <td class="paramname"><em>dst</em>, </td>
   3119         </tr>
   3120         <tr>
   3121           <td class="paramkey"></td>
   3122           <td></td>
   3123           <td class="paramtype">const void *&#160;</td>
   3124           <td class="paramname"><em>src</em>, </td>
   3125         </tr>
   3126         <tr>
   3127           <td class="paramkey"></td>
   3128           <td></td>
   3129           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3130           <td class="paramname"><em>size</em>&#160;</td>
   3131         </tr>
   3132         <tr>
   3133           <td></td>
   3134           <td>)</td>
   3135           <td></td><td></td>
   3136         </tr>
   3137       </table>
   3138 </div><div class="memdoc">
   3139 <p >Copies arbitrary data to an address in VRAM</p>
   3140 <dl class="params"><dt>Parameters</dt><dd>
   3141   <table class="params">
   3142     <tr><td class="paramname">dst</td><td>destination VRAM Address </td></tr>
   3143     <tr><td class="paramname">src</td><td>Pointer to source buffer </td></tr>
   3144     <tr><td class="paramname">size</td><td>Number of bytes to copy</td></tr>
   3145   </table>
   3146   </dd>
   3147 </dl>
   3148 <p>Copies <b>size</b> bytes from a buffer at _src__ to VRAM starting at <b>dst</b>. </p>
   3149 
   3150 </div>
   3151 </div>
   3152 <a id="vmemcpy" name="vmemcpy"></a>
   3153 <h2 class="memtitle"><span class="permalink"><a href="#vmemcpy">&#9670;&nbsp;</a></span>vmemcpy()</h2>
   3154 
   3155 <div class="memitem">
   3156 <div class="memproto">
   3157       <table class="memname">
   3158         <tr>
   3159           <td class="memname">void vmemcpy </td>
   3160           <td>(</td>
   3161           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3162           <td class="paramname"><em>dst</em>, </td>
   3163         </tr>
   3164         <tr>
   3165           <td class="paramkey"></td>
   3166           <td></td>
   3167           <td class="paramtype">const void *&#160;</td>
   3168           <td class="paramname"><em>src</em>, </td>
   3169         </tr>
   3170         <tr>
   3171           <td class="paramkey"></td>
   3172           <td></td>
   3173           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3174           <td class="paramname"><em>size</em>&#160;</td>
   3175         </tr>
   3176         <tr>
   3177           <td></td>
   3178           <td>)</td>
   3179           <td></td><td></td>
   3180         </tr>
   3181       </table>
   3182 </div><div class="memdoc">
   3183 
   3184 </div>
   3185 </div>
   3186 <a id="set_tile_map" name="set_tile_map"></a>
   3187 <h2 class="memtitle"><span class="permalink"><a href="#set_tile_map">&#9670;&nbsp;</a></span>set_tile_map()</h2>
   3188 
   3189 <div class="memitem">
   3190 <div class="memproto">
   3191       <table class="memname">
   3192         <tr>
   3193           <td class="memname">void set_tile_map </td>
   3194           <td>(</td>
   3195           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3196           <td class="paramname"><em>x</em>, </td>
   3197         </tr>
   3198         <tr>
   3199           <td class="paramkey"></td>
   3200           <td></td>
   3201           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3202           <td class="paramname"><em>y</em>, </td>
   3203         </tr>
   3204         <tr>
   3205           <td class="paramkey"></td>
   3206           <td></td>
   3207           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3208           <td class="paramname"><em>w</em>, </td>
   3209         </tr>
   3210         <tr>
   3211           <td class="paramkey"></td>
   3212           <td></td>
   3213           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3214           <td class="paramname"><em>h</em>, </td>
   3215         </tr>
   3216         <tr>
   3217           <td class="paramkey"></td>
   3218           <td></td>
   3219           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3220           <td class="paramname"><em>tiles</em>&#160;</td>
   3221         </tr>
   3222         <tr>
   3223           <td></td>
   3224           <td>)</td>
   3225           <td></td><td></td>
   3226         </tr>
   3227       </table>
   3228 </div><div class="memdoc">
   3229 
   3230 </div>
   3231 </div>
   3232 <a id="set_bkg_based_tiles" name="set_bkg_based_tiles"></a>
   3233 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_based_tiles">&#9670;&nbsp;</a></span>set_bkg_based_tiles()</h2>
   3234 
   3235 <div class="memitem">
   3236 <div class="memproto">
   3237 <table class="mlabels">
   3238   <tr>
   3239   <td class="mlabels-left">
   3240       <table class="memname">
   3241         <tr>
   3242           <td class="memname">void set_bkg_based_tiles </td>
   3243           <td>(</td>
   3244           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3245           <td class="paramname"><em>x</em>, </td>
   3246         </tr>
   3247         <tr>
   3248           <td class="paramkey"></td>
   3249           <td></td>
   3250           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3251           <td class="paramname"><em>y</em>, </td>
   3252         </tr>
   3253         <tr>
   3254           <td class="paramkey"></td>
   3255           <td></td>
   3256           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3257           <td class="paramname"><em>w</em>, </td>
   3258         </tr>
   3259         <tr>
   3260           <td class="paramkey"></td>
   3261           <td></td>
   3262           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3263           <td class="paramname"><em>h</em>, </td>
   3264         </tr>
   3265         <tr>
   3266           <td class="paramkey"></td>
   3267           <td></td>
   3268           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3269           <td class="paramname"><em>tiles</em>, </td>
   3270         </tr>
   3271         <tr>
   3272           <td class="paramkey"></td>
   3273           <td></td>
   3274           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3275           <td class="paramname"><em>base_tile</em>&#160;</td>
   3276         </tr>
   3277         <tr>
   3278           <td></td>
   3279           <td>)</td>
   3280           <td></td><td></td>
   3281         </tr>
   3282       </table>
   3283   </td>
   3284   <td class="mlabels-right">
   3285 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3286   </tr>
   3287 </table>
   3288 </div><div class="memdoc">
   3289 <p >Sets a rectangular region of Background Tile Map. The offset value in <b>base_tile</b> is added to the tile ID for each map entry.</p>
   3290 <dl class="params"><dt>Parameters</dt><dd>
   3291   <table class="params">
   3292     <tr><td class="paramname">x</td><td>X Start position in Background Map tile coordinates. Range 0 - 31 </td></tr>
   3293     <tr><td class="paramname">y</td><td>Y Start position in Background Map tile coordinates. Range 0 - 31 </td></tr>
   3294     <tr><td class="paramname">w</td><td>Width of area to set in tiles. Range 1 - 32 </td></tr>
   3295     <tr><td class="paramname">h</td><td>Height of area to set in tiles. Range 1 - 32 </td></tr>
   3296     <tr><td class="paramname">tiles</td><td>Pointer to source tile map data </td></tr>
   3297     <tr><td class="paramname">base_tile</td><td>Offset each tile ID entry of the source map by this value. Range 1 - 255</td></tr>
   3298   </table>
   3299   </dd>
   3300 </dl>
   3301 <p>This is identical to <a class="el" href="msx_8h.html#set_bkg_tiles">set_bkg_tiles()</a> except that it adds the <b>base_tile</b> parameter for when a tile map's tiles don't start at index zero. (For example, the tiles used by the map range from 100 -&gt; 120 in VRAM instead of 0 -&gt; 20).</p>
   3302 <dl class="section see"><dt>See also</dt><dd><a class="el" href="nes_8h.html#set_bkg_tiles">set_bkg_tiles</a> for more details </dd></dl>
   3303 
   3304 </div>
   3305 </div>
   3306 <a id="set_win_based_tiles" name="set_win_based_tiles"></a>
   3307 <h2 class="memtitle"><span class="permalink"><a href="#set_win_based_tiles">&#9670;&nbsp;</a></span>set_win_based_tiles()</h2>
   3308 
   3309 <div class="memitem">
   3310 <div class="memproto">
   3311 <table class="mlabels">
   3312   <tr>
   3313   <td class="mlabels-left">
   3314       <table class="memname">
   3315         <tr>
   3316           <td class="memname">void set_win_based_tiles </td>
   3317           <td>(</td>
   3318           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3319           <td class="paramname"><em>x</em>, </td>
   3320         </tr>
   3321         <tr>
   3322           <td class="paramkey"></td>
   3323           <td></td>
   3324           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3325           <td class="paramname"><em>y</em>, </td>
   3326         </tr>
   3327         <tr>
   3328           <td class="paramkey"></td>
   3329           <td></td>
   3330           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3331           <td class="paramname"><em>w</em>, </td>
   3332         </tr>
   3333         <tr>
   3334           <td class="paramkey"></td>
   3335           <td></td>
   3336           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3337           <td class="paramname"><em>h</em>, </td>
   3338         </tr>
   3339         <tr>
   3340           <td class="paramkey"></td>
   3341           <td></td>
   3342           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3343           <td class="paramname"><em>tiles</em>, </td>
   3344         </tr>
   3345         <tr>
   3346           <td class="paramkey"></td>
   3347           <td></td>
   3348           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3349           <td class="paramname"><em>base_tile</em>&#160;</td>
   3350         </tr>
   3351         <tr>
   3352           <td></td>
   3353           <td>)</td>
   3354           <td></td><td></td>
   3355         </tr>
   3356       </table>
   3357   </td>
   3358   <td class="mlabels-right">
   3359 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3360   </tr>
   3361 </table>
   3362 </div><div class="memdoc">
   3363 
   3364 </div>
   3365 </div>
   3366 <a id="set_tile_submap" name="set_tile_submap"></a>
   3367 <h2 class="memtitle"><span class="permalink"><a href="#set_tile_submap">&#9670;&nbsp;</a></span>set_tile_submap()</h2>
   3368 
   3369 <div class="memitem">
   3370 <div class="memproto">
   3371       <table class="memname">
   3372         <tr>
   3373           <td class="memname">void set_tile_submap </td>
   3374           <td>(</td>
   3375           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3376           <td class="paramname"><em>x</em>, </td>
   3377         </tr>
   3378         <tr>
   3379           <td class="paramkey"></td>
   3380           <td></td>
   3381           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3382           <td class="paramname"><em>y</em>, </td>
   3383         </tr>
   3384         <tr>
   3385           <td class="paramkey"></td>
   3386           <td></td>
   3387           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3388           <td class="paramname"><em>w</em>, </td>
   3389         </tr>
   3390         <tr>
   3391           <td class="paramkey"></td>
   3392           <td></td>
   3393           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3394           <td class="paramname"><em>h</em>, </td>
   3395         </tr>
   3396         <tr>
   3397           <td class="paramkey"></td>
   3398           <td></td>
   3399           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3400           <td class="paramname"><em>map_w</em>, </td>
   3401         </tr>
   3402         <tr>
   3403           <td class="paramkey"></td>
   3404           <td></td>
   3405           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3406           <td class="paramname"><em>map</em>&#160;</td>
   3407         </tr>
   3408         <tr>
   3409           <td></td>
   3410           <td>)</td>
   3411           <td></td><td></td>
   3412         </tr>
   3413       </table>
   3414 </div><div class="memdoc">
   3415 
   3416 </div>
   3417 </div>
   3418 <a id="set_tile_submap_compat" name="set_tile_submap_compat"></a>
   3419 <h2 class="memtitle"><span class="permalink"><a href="#set_tile_submap_compat">&#9670;&nbsp;</a></span>set_tile_submap_compat()</h2>
   3420 
   3421 <div class="memitem">
   3422 <div class="memproto">
   3423       <table class="memname">
   3424         <tr>
   3425           <td class="memname">void set_tile_submap_compat </td>
   3426           <td>(</td>
   3427           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3428           <td class="paramname"><em>x</em>, </td>
   3429         </tr>
   3430         <tr>
   3431           <td class="paramkey"></td>
   3432           <td></td>
   3433           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3434           <td class="paramname"><em>y</em>, </td>
   3435         </tr>
   3436         <tr>
   3437           <td class="paramkey"></td>
   3438           <td></td>
   3439           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3440           <td class="paramname"><em>w</em>, </td>
   3441         </tr>
   3442         <tr>
   3443           <td class="paramkey"></td>
   3444           <td></td>
   3445           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3446           <td class="paramname"><em>h</em>, </td>
   3447         </tr>
   3448         <tr>
   3449           <td class="paramkey"></td>
   3450           <td></td>
   3451           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3452           <td class="paramname"><em>map_w</em>, </td>
   3453         </tr>
   3454         <tr>
   3455           <td class="paramkey"></td>
   3456           <td></td>
   3457           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3458           <td class="paramname"><em>map</em>&#160;</td>
   3459         </tr>
   3460         <tr>
   3461           <td></td>
   3462           <td>)</td>
   3463           <td></td><td></td>
   3464         </tr>
   3465       </table>
   3466 </div><div class="memdoc">
   3467 
   3468 </div>
   3469 </div>
   3470 <a id="set_bkg_submap" name="set_bkg_submap"></a>
   3471 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_submap">&#9670;&nbsp;</a></span>set_bkg_submap()</h2>
   3472 
   3473 <div class="memitem">
   3474 <div class="memproto">
   3475 <table class="mlabels">
   3476   <tr>
   3477   <td class="mlabels-left">
   3478       <table class="memname">
   3479         <tr>
   3480           <td class="memname">void set_bkg_submap </td>
   3481           <td>(</td>
   3482           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3483           <td class="paramname"><em>x</em>, </td>
   3484         </tr>
   3485         <tr>
   3486           <td class="paramkey"></td>
   3487           <td></td>
   3488           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3489           <td class="paramname"><em>y</em>, </td>
   3490         </tr>
   3491         <tr>
   3492           <td class="paramkey"></td>
   3493           <td></td>
   3494           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3495           <td class="paramname"><em>w</em>, </td>
   3496         </tr>
   3497         <tr>
   3498           <td class="paramkey"></td>
   3499           <td></td>
   3500           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3501           <td class="paramname"><em>h</em>, </td>
   3502         </tr>
   3503         <tr>
   3504           <td class="paramkey"></td>
   3505           <td></td>
   3506           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3507           <td class="paramname"><em>map</em>, </td>
   3508         </tr>
   3509         <tr>
   3510           <td class="paramkey"></td>
   3511           <td></td>
   3512           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3513           <td class="paramname"><em>map_w</em>&#160;</td>
   3514         </tr>
   3515         <tr>
   3516           <td></td>
   3517           <td>)</td>
   3518           <td></td><td></td>
   3519         </tr>
   3520       </table>
   3521   </td>
   3522   <td class="mlabels-right">
   3523 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3524   </tr>
   3525 </table>
   3526 </div><div class="memdoc">
   3527 <p >Sets a rectangular area of the Background Tile Map using a sub-region from a source tile map. Useful for scrolling implementations of maps larger than 32 x 32 tiles.</p>
   3528 <dl class="params"><dt>Parameters</dt><dd>
   3529   <table class="params">
   3530     <tr><td class="paramname">x</td><td>X Start position in both the Source Tile Map and hardware Background Map tile coordinates. Range 0 - 255 </td></tr>
   3531     <tr><td class="paramname">y</td><td>Y Start position in both the Source Tile Map and hardware Background Map tile coordinates. Range 0 - 255 </td></tr>
   3532     <tr><td class="paramname">w</td><td>Width of area to set in tiles. Range 1 - 255 </td></tr>
   3533     <tr><td class="paramname">h</td><td>Height of area to set in tiles. Range 1 - 255 </td></tr>
   3534     <tr><td class="paramname">map</td><td>Pointer to source tile map data </td></tr>
   3535     <tr><td class="paramname">map_w</td><td>Width of source tile map in tiles. Range 1 - 255</td></tr>
   3536   </table>
   3537   </dd>
   3538 </dl>
   3539 <p>Entries are copied from <b>map</b> to the Background Tile Map starting at <b>x</b>, <b>y</b> writing across for <b>w</b> tiles and down for <b>h</b> tiles, using <b>map_w</b> as the rowstride for the source tile map.</p>
   3540 <p >The <b>x</b> and <b>y</b> parameters are in Source Tile Map tile coordinates. The location tiles will be written to on the hardware Background Map is derived from those, but only uses the lower 5 bits of each axis, for range of 0-31 (they are bit-masked: <code>x &amp; 0x1F</code> and <code>y &amp; 0x1F</code>). As a result the two coordinate systems are aligned together.</p>
   3541 <p >In order to transfer tile map data in a way where the coordinate systems are not aligned, an offset from the Source Tile Map pointer can be passed in: <code>(map_ptr + x + (y * map_width))</code>.</p>
   3542 <p >For example, if you want the tile id at <code>1,2</code> from the source map to show up at <code>0,0</code> on the hardware Background Map (instead of at <code>1,2</code>) then modify the pointer address that is passed in: <code>map_ptr + 1 + (2 * map_width)</code></p>
   3543 <p >Use this instead of <a class="el" href="nes_8h.html#set_bkg_tiles">set_bkg_tiles</a> when the source map is wider than 32 tiles or when writing a width that does not match the source map width.</p>
   3544 <p >One byte per source tile map entry.</p>
   3545 <p >Writes that exceed coordinate 31 on the x or y axis will wrap around to the Left and Top edges.</p>
   3546 <p >See <a class="el" href="nes_8h.html#set_bkg_tiles">set_bkg_tiles</a> for setting CGB attribute maps with <a class="el" href="gb_2hardware_8h.html#VBK_REG">VBK_REG</a>.</p>
   3547 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#SHOW_BKG">SHOW_BKG</a> </dd>
   3548 <dd>
   3549 <a class="el" href="gb_8h.html#set_bkg_data">set_bkg_data</a>, <a class="el" href="gb_8h.html#set_bkg_tiles">set_bkg_tiles</a>, <a class="el" href="gb_8h.html#set_win_submap">set_win_submap</a>, <a class="el" href="gb_8h.html#set_tiles">set_tiles</a> </dd></dl>
   3550 
   3551 </div>
   3552 </div>
   3553 <a id="set_win_submap" name="set_win_submap"></a>
   3554 <h2 class="memtitle"><span class="permalink"><a href="#set_win_submap">&#9670;&nbsp;</a></span>set_win_submap()</h2>
   3555 
   3556 <div class="memitem">
   3557 <div class="memproto">
   3558 <table class="mlabels">
   3559   <tr>
   3560   <td class="mlabels-left">
   3561       <table class="memname">
   3562         <tr>
   3563           <td class="memname">void set_win_submap </td>
   3564           <td>(</td>
   3565           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3566           <td class="paramname"><em>x</em>, </td>
   3567         </tr>
   3568         <tr>
   3569           <td class="paramkey"></td>
   3570           <td></td>
   3571           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3572           <td class="paramname"><em>y</em>, </td>
   3573         </tr>
   3574         <tr>
   3575           <td class="paramkey"></td>
   3576           <td></td>
   3577           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3578           <td class="paramname"><em>w</em>, </td>
   3579         </tr>
   3580         <tr>
   3581           <td class="paramkey"></td>
   3582           <td></td>
   3583           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3584           <td class="paramname"><em>h</em>, </td>
   3585         </tr>
   3586         <tr>
   3587           <td class="paramkey"></td>
   3588           <td></td>
   3589           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3590           <td class="paramname"><em>map</em>, </td>
   3591         </tr>
   3592         <tr>
   3593           <td class="paramkey"></td>
   3594           <td></td>
   3595           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3596           <td class="paramname"><em>map_w</em>&#160;</td>
   3597         </tr>
   3598         <tr>
   3599           <td></td>
   3600           <td>)</td>
   3601           <td></td><td></td>
   3602         </tr>
   3603       </table>
   3604   </td>
   3605   <td class="mlabels-right">
   3606 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3607   </tr>
   3608 </table>
   3609 </div><div class="memdoc">
   3610 <p >Sets a rectangular area of the Window Tile Map using a sub-region from a source tile map.</p>
   3611 <dl class="params"><dt>Parameters</dt><dd>
   3612   <table class="params">
   3613     <tr><td class="paramname">x</td><td>X Start position in both the Source Tile Map and hardware Window Map tile coordinates. Range 0 - 255 </td></tr>
   3614     <tr><td class="paramname">y</td><td>Y Start position in both the Source Tile Map and hardware Window Map tile coordinates. Range 0 - 255 </td></tr>
   3615     <tr><td class="paramname">w</td><td>Width of area to set in tiles. Range 1 - 255 </td></tr>
   3616     <tr><td class="paramname">h</td><td>Height of area to set in tiles. Range 1 - 255 </td></tr>
   3617     <tr><td class="paramname">map</td><td>Pointer to source tile map data </td></tr>
   3618     <tr><td class="paramname">map_w</td><td>Width of source tile map in tiles. Range 1 - 255</td></tr>
   3619   </table>
   3620   </dd>
   3621 </dl>
   3622 <p>Entries are copied from <b>map</b> to the Window Tile Map starting at <b>x</b>, <b>y</b> writing across for <b>w</b> tiles and down for <b>h</b> tiles, using <b>map_w</b> as the rowstride for the source tile map.</p>
   3623 <p >The <b>x</b> and <b>y</b> parameters are in Source Tile Map tile coordinates. The location tiles will be written to on the hardware Background Map is derived from those, but only uses the lower 5 bits of each axis, for range of 0-31 (they are bit-masked: <code>x &amp; 0x1F</code> and <code>y &amp; 0x1F</code>). As a result the two coordinate systems are aligned together.</p>
   3624 <p >In order to transfer tile map data in a way where the coordinate systems are not aligned, an offset from the Source Tile Map pointer can be passed in: <code>(map_ptr + x + (y * map_width))</code>.</p>
   3625 <p >For example, if you want the tile id at <code>1,2</code> from the source map to show up at <code>0,0</code> on the hardware Background Map (instead of at <code>1,2</code>) then modify the pointer address that is passed in: <code>map_ptr + 1 + (2 * map_width)</code></p>
   3626 <p >Use this instead of <a class="el" href="gb_8h.html#set_win_tiles">set_win_tiles</a> when the source map is wider than 32 tiles or when writing a width that does not match the source map width.</p>
   3627 <p >One byte per source tile map entry.</p>
   3628 <p >Writes that exceed coordinate 31 on the x or y axis will wrap around to the Left and Top edges.</p>
   3629 <p >GBC only: <a class="el" href="gb_2hardware_8h.html#VBK_REG">VBK_REG</a> determines whether Tile Numbers or Tile Attributes get set. </p><ul>
   3630 <li>VBK_REG = <a class="el" href="sms_2hardware_8h.html#VBK_TILES">VBK_TILES</a> Tile Numbers are written </li>
   3631 <li>VBK_REG = <a class="el" href="sms_2hardware_8h.html#VBK_ATTRIBUTES">VBK_ATTRIBUTES</a> Tile Attributes are written</li>
   3632 </ul>
   3633 <p>See <a class="el" href="nes_8h.html#set_bkg_tiles">set_bkg_tiles</a> for details about CGB attribute maps with <a class="el" href="gb_2hardware_8h.html#VBK_REG">VBK_REG</a>.</p>
   3634 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#SHOW_WIN">SHOW_WIN</a>, <a class="el" href="gb_8h.html#HIDE_WIN">HIDE_WIN</a>, <a class="el" href="gb_8h.html#set_win_tiles">set_win_tiles</a>, <a class="el" href="gb_8h.html#set_bkg_submap">set_bkg_submap</a>, <a class="el" href="gb_8h.html#set_bkg_tiles">set_bkg_tiles</a>, <a class="el" href="gb_8h.html#set_bkg_data">set_bkg_data</a>, <a class="el" href="gb_8h.html#set_tiles">set_tiles</a> </dd></dl>
   3635 
   3636 </div>
   3637 </div>
   3638 <a id="set_bkg_based_submap" name="set_bkg_based_submap"></a>
   3639 <h2 class="memtitle"><span class="permalink"><a href="#set_bkg_based_submap">&#9670;&nbsp;</a></span>set_bkg_based_submap()</h2>
   3640 
   3641 <div class="memitem">
   3642 <div class="memproto">
   3643 <table class="mlabels">
   3644   <tr>
   3645   <td class="mlabels-left">
   3646       <table class="memname">
   3647         <tr>
   3648           <td class="memname">void set_bkg_based_submap </td>
   3649           <td>(</td>
   3650           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3651           <td class="paramname"><em>x</em>, </td>
   3652         </tr>
   3653         <tr>
   3654           <td class="paramkey"></td>
   3655           <td></td>
   3656           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3657           <td class="paramname"><em>y</em>, </td>
   3658         </tr>
   3659         <tr>
   3660           <td class="paramkey"></td>
   3661           <td></td>
   3662           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3663           <td class="paramname"><em>w</em>, </td>
   3664         </tr>
   3665         <tr>
   3666           <td class="paramkey"></td>
   3667           <td></td>
   3668           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3669           <td class="paramname"><em>h</em>, </td>
   3670         </tr>
   3671         <tr>
   3672           <td class="paramkey"></td>
   3673           <td></td>
   3674           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3675           <td class="paramname"><em>map</em>, </td>
   3676         </tr>
   3677         <tr>
   3678           <td class="paramkey"></td>
   3679           <td></td>
   3680           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3681           <td class="paramname"><em>map_w</em>, </td>
   3682         </tr>
   3683         <tr>
   3684           <td class="paramkey"></td>
   3685           <td></td>
   3686           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3687           <td class="paramname"><em>base_tile</em>&#160;</td>
   3688         </tr>
   3689         <tr>
   3690           <td></td>
   3691           <td>)</td>
   3692           <td></td><td></td>
   3693         </tr>
   3694       </table>
   3695   </td>
   3696   <td class="mlabels-right">
   3697 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3698   </tr>
   3699 </table>
   3700 </div><div class="memdoc">
   3701 <p >Sets a rectangular area of the Background Tile Map using a sub-region from a source tile map. The offset value in <b>base_tile</b> is added to the tile ID for each map entry.</p>
   3702 <dl class="params"><dt>Parameters</dt><dd>
   3703   <table class="params">
   3704     <tr><td class="paramname">x</td><td>X Start position in Background Map tile coordinates. Range 0 - 31 </td></tr>
   3705     <tr><td class="paramname">y</td><td>Y Start position in Background Map tile coordinates. Range 0 - 31 </td></tr>
   3706     <tr><td class="paramname">w</td><td>Width of area to set in tiles. Range 1 - 255 </td></tr>
   3707     <tr><td class="paramname">h</td><td>Height of area to set in tiles. Range 1 - 255 </td></tr>
   3708     <tr><td class="paramname">map</td><td>Pointer to source tile map data </td></tr>
   3709     <tr><td class="paramname">map_w</td><td>Width of source tile map in tiles. Range 1 - 255 </td></tr>
   3710     <tr><td class="paramname">base_tile</td><td>Offset each tile ID entry of the source map by this value. Range 1 - 255</td></tr>
   3711   </table>
   3712   </dd>
   3713 </dl>
   3714 <p>This is identical to <a class="el" href="sms_8h.html#set_bkg_submap">set_bkg_submap()</a> except that it adds the <b>base_tile</b> parameter for when a tile map's tiles don't start at index zero. (For example, the tiles used by the map range from 100 -&gt; 120 in VRAM instead of 0 -&gt; 20).</p>
   3715 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#set_bkg_submap">set_bkg_submap</a> for more details</dd></dl>
   3716 <p>Sets a rectangular area of the Background Tile Map using a sub-region from a source tile map. The offset value in <b>base_tile</b> is added to the tile ID for each map entry.</p>
   3717 <dl class="params"><dt>Parameters</dt><dd>
   3718   <table class="params">
   3719     <tr><td class="paramname">x</td><td>X Start position in both the Source Tile Map and hardware Background Map tile coordinates. Range 0 - 255 </td></tr>
   3720     <tr><td class="paramname">y</td><td>Y Start position in both the Source Tile Map and hardware Background Map tile coordinates. Range 0 - 255 </td></tr>
   3721     <tr><td class="paramname">w</td><td>Width of area to set in tiles. Range 1 - 255 </td></tr>
   3722     <tr><td class="paramname">h</td><td>Height of area to set in tiles. Range 1 - 255 </td></tr>
   3723     <tr><td class="paramname">map</td><td>Pointer to source tile map data </td></tr>
   3724     <tr><td class="paramname">map_w</td><td>Width of source tile map in tiles. Range 1 - 255 </td></tr>
   3725     <tr><td class="paramname">base_tile</td><td>Offset each tile ID entry of the source map by this value. Range 1 - 255</td></tr>
   3726   </table>
   3727   </dd>
   3728 </dl>
   3729 <p>This is identical to <a class="el" href="sms_8h.html#set_bkg_submap">set_bkg_submap()</a> except that it adds the <b>base_tile</b> parameter for when a tile map's tiles don't start at index zero. (For example, the tiles used by the map range from 100 -&gt; 120 in VRAM instead of 0 -&gt; 20).</p>
   3730 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#set_bkg_submap">set_bkg_submap</a> for more details </dd></dl>
   3731 
   3732 </div>
   3733 </div>
   3734 <a id="set_win_based_submap" name="set_win_based_submap"></a>
   3735 <h2 class="memtitle"><span class="permalink"><a href="#set_win_based_submap">&#9670;&nbsp;</a></span>set_win_based_submap()</h2>
   3736 
   3737 <div class="memitem">
   3738 <div class="memproto">
   3739 <table class="mlabels">
   3740   <tr>
   3741   <td class="mlabels-left">
   3742       <table class="memname">
   3743         <tr>
   3744           <td class="memname">void set_win_based_submap </td>
   3745           <td>(</td>
   3746           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3747           <td class="paramname"><em>x</em>, </td>
   3748         </tr>
   3749         <tr>
   3750           <td class="paramkey"></td>
   3751           <td></td>
   3752           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3753           <td class="paramname"><em>y</em>, </td>
   3754         </tr>
   3755         <tr>
   3756           <td class="paramkey"></td>
   3757           <td></td>
   3758           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3759           <td class="paramname"><em>w</em>, </td>
   3760         </tr>
   3761         <tr>
   3762           <td class="paramkey"></td>
   3763           <td></td>
   3764           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3765           <td class="paramname"><em>h</em>, </td>
   3766         </tr>
   3767         <tr>
   3768           <td class="paramkey"></td>
   3769           <td></td>
   3770           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   3771           <td class="paramname"><em>map</em>, </td>
   3772         </tr>
   3773         <tr>
   3774           <td class="paramkey"></td>
   3775           <td></td>
   3776           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3777           <td class="paramname"><em>map_w</em>, </td>
   3778         </tr>
   3779         <tr>
   3780           <td class="paramkey"></td>
   3781           <td></td>
   3782           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3783           <td class="paramname"><em>base_tile</em>&#160;</td>
   3784         </tr>
   3785         <tr>
   3786           <td></td>
   3787           <td>)</td>
   3788           <td></td><td></td>
   3789         </tr>
   3790       </table>
   3791   </td>
   3792   <td class="mlabels-right">
   3793 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3794   </tr>
   3795 </table>
   3796 </div><div class="memdoc">
   3797 
   3798 </div>
   3799 </div>
   3800 <a id="fill_rect" name="fill_rect"></a>
   3801 <h2 class="memtitle"><span class="permalink"><a href="#fill_rect">&#9670;&nbsp;</a></span>fill_rect()</h2>
   3802 
   3803 <div class="memitem">
   3804 <div class="memproto">
   3805       <table class="memname">
   3806         <tr>
   3807           <td class="memname">void fill_rect </td>
   3808           <td>(</td>
   3809           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3810           <td class="paramname"><em>x</em>, </td>
   3811         </tr>
   3812         <tr>
   3813           <td class="paramkey"></td>
   3814           <td></td>
   3815           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3816           <td class="paramname"><em>y</em>, </td>
   3817         </tr>
   3818         <tr>
   3819           <td class="paramkey"></td>
   3820           <td></td>
   3821           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3822           <td class="paramname"><em>w</em>, </td>
   3823         </tr>
   3824         <tr>
   3825           <td class="paramkey"></td>
   3826           <td></td>
   3827           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3828           <td class="paramname"><em>h</em>, </td>
   3829         </tr>
   3830         <tr>
   3831           <td class="paramkey"></td>
   3832           <td></td>
   3833           <td class="paramtype">const <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   3834           <td class="paramname"><em>tile</em>&#160;</td>
   3835         </tr>
   3836         <tr>
   3837           <td></td>
   3838           <td>)</td>
   3839           <td></td><td></td>
   3840         </tr>
   3841       </table>
   3842 </div><div class="memdoc">
   3843 
   3844 </div>
   3845 </div>
   3846 <a id="SET_SHADOW_OAM_ADDRESS" name="SET_SHADOW_OAM_ADDRESS"></a>
   3847 <h2 class="memtitle"><span class="permalink"><a href="#SET_SHADOW_OAM_ADDRESS">&#9670;&nbsp;</a></span>SET_SHADOW_OAM_ADDRESS()</h2>
   3848 
   3849 <div class="memitem">
   3850 <div class="memproto">
   3851 <table class="mlabels">
   3852   <tr>
   3853   <td class="mlabels-left">
   3854       <table class="memname">
   3855         <tr>
   3856           <td class="memname">void SET_SHADOW_OAM_ADDRESS </td>
   3857           <td>(</td>
   3858           <td class="paramtype">void *&#160;</td>
   3859           <td class="paramname"><em>address</em></td><td>)</td>
   3860           <td></td>
   3861         </tr>
   3862       </table>
   3863   </td>
   3864   <td class="mlabels-right">
   3865 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3866   </tr>
   3867 </table>
   3868 </div><div class="memdoc">
   3869 <p >Sets address of 256-byte aligned array of shadow OAM to be transferred on each VBlank </p>
   3870 
   3871 </div>
   3872 </div>
   3873 <a id="set_sprite_tile" name="set_sprite_tile"></a>
   3874 <h2 class="memtitle"><span class="permalink"><a href="#set_sprite_tile">&#9670;&nbsp;</a></span>set_sprite_tile()</h2>
   3875 
   3876 <div class="memitem">
   3877 <div class="memproto">
   3878 <table class="mlabels">
   3879   <tr>
   3880   <td class="mlabels-left">
   3881       <table class="memname">
   3882         <tr>
   3883           <td class="memname">void set_sprite_tile </td>
   3884           <td>(</td>
   3885           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3886           <td class="paramname"><em>nb</em>, </td>
   3887         </tr>
   3888         <tr>
   3889           <td class="paramkey"></td>
   3890           <td></td>
   3891           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3892           <td class="paramname"><em>tile</em>&#160;</td>
   3893         </tr>
   3894         <tr>
   3895           <td></td>
   3896           <td>)</td>
   3897           <td></td><td></td>
   3898         </tr>
   3899       </table>
   3900   </td>
   3901   <td class="mlabels-right">
   3902 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3903   </tr>
   3904 </table>
   3905 </div><div class="memdoc">
   3906 <p >Sets sprite number <b>nb__in the OAM to display tile number __tile</b>.</p>
   3907 <dl class="params"><dt>Parameters</dt><dd>
   3908   <table class="params">
   3909     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   3910     <tr><td class="paramname">tile</td><td>Selects a tile (0 - 255) from memory at 8000h - 8FFFh <br  />
   3911  In CGB Mode this could be either in VRAM Bank <br  />
   3912  0 or 1, depending on Bit 3 of the OAM Attribute Flag <br  />
   3913  (see <a class="el" href="sms_8h.html#set_sprite_prop">set_sprite_prop</a>)</td></tr>
   3914   </table>
   3915   </dd>
   3916 </dl>
   3917 <p>In 8x16 mode: </p><ul>
   3918 <li>The sprite will also display the next tile (<b>tile</b> + 1) directly below (y + 8) the first tile. </li>
   3919 <li>The lower bit of the tile number is ignored: the upper 8x8 tile is (<b>tile</b> &amp; 0xFE), and the lower 8x8 tile is (<b>tile</b> | 0x01). </li>
   3920 <li>See: <a class="el" href="sms_8h.html#SPRITES_8x16">SPRITES_8x16</a> </li>
   3921 </ul>
   3922 
   3923 </div>
   3924 </div>
   3925 <a id="get_sprite_tile" name="get_sprite_tile"></a>
   3926 <h2 class="memtitle"><span class="permalink"><a href="#get_sprite_tile">&#9670;&nbsp;</a></span>get_sprite_tile()</h2>
   3927 
   3928 <div class="memitem">
   3929 <div class="memproto">
   3930 <table class="mlabels">
   3931   <tr>
   3932   <td class="mlabels-left">
   3933       <table class="memname">
   3934         <tr>
   3935           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> get_sprite_tile </td>
   3936           <td>(</td>
   3937           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3938           <td class="paramname"><em>nb</em></td><td>)</td>
   3939           <td></td>
   3940         </tr>
   3941       </table>
   3942   </td>
   3943   <td class="mlabels-right">
   3944 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3945   </tr>
   3946 </table>
   3947 </div><div class="memdoc">
   3948 <p >Returns the tile number of sprite number <b>nb</b> in the OAM.</p>
   3949 <dl class="params"><dt>Parameters</dt><dd>
   3950   <table class="params">
   3951     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39</td></tr>
   3952   </table>
   3953   </dd>
   3954 </dl>
   3955 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#set_sprite_tile">set_sprite_tile</a> for more details </dd></dl>
   3956 
   3957 </div>
   3958 </div>
   3959 <a id="set_sprite_prop" name="set_sprite_prop"></a>
   3960 <h2 class="memtitle"><span class="permalink"><a href="#set_sprite_prop">&#9670;&nbsp;</a></span>set_sprite_prop()</h2>
   3961 
   3962 <div class="memitem">
   3963 <div class="memproto">
   3964 <table class="mlabels">
   3965   <tr>
   3966   <td class="mlabels-left">
   3967       <table class="memname">
   3968         <tr>
   3969           <td class="memname">void set_sprite_prop </td>
   3970           <td>(</td>
   3971           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3972           <td class="paramname"><em>nb</em>, </td>
   3973         </tr>
   3974         <tr>
   3975           <td class="paramkey"></td>
   3976           <td></td>
   3977           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   3978           <td class="paramname"><em>prop</em>&#160;</td>
   3979         </tr>
   3980         <tr>
   3981           <td></td>
   3982           <td>)</td>
   3983           <td></td><td></td>
   3984         </tr>
   3985       </table>
   3986   </td>
   3987   <td class="mlabels-right">
   3988 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   3989   </tr>
   3990 </table>
   3991 </div><div class="memdoc">
   3992 <p >Sets the OAM Property Flags of sprite number <b>nb</b> to those defined in <b>prop</b>.</p>
   3993 <dl class="params"><dt>Parameters</dt><dd>
   3994   <table class="params">
   3995     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   3996     <tr><td class="paramname">prop</td><td>Property setting (see bitfield description)</td></tr>
   3997   </table>
   3998   </dd>
   3999 </dl>
   4000 <p>The bits in <b>prop</b> represent: </p><ul>
   4001 <li>Bit 7 - Vertical flip. Dictates which way up the sprite is drawn vertically. <br  />
   4002  0: normal <br  />
   4003  1: upside down </li>
   4004 <li>Bit 6 - Horizontal flip. Dictates which way up the sprite is drawn horizontally. <br  />
   4005  0: normal <br  />
   4006  1: back to front </li>
   4007 <li>Bit 5 - Priority flag. When this is set, the sprites appear behind the background and window layer. <br  />
   4008  0: infront <br  />
   4009  1: behind </li>
   4010 <li>Bit 4 - Unimplemented </li>
   4011 <li>Bit 3 - Unimplemented </li>
   4012 <li>Bit 2 - Unimplemented </li>
   4013 <li>Bit 1 - See bit 0. </li>
   4014 <li>Bit 0 - Bits 0-1 indicate which color palette the sprite should use. Note: only palettes 4 to 7 will be available for NES sprites.</li>
   4015 </ul>
   4016 <p>It's recommended to use GBDK constants (eg: S_FLIPY) to configure sprite properties as these are crossplatform.</p>
   4017 <div class="fragment"><div class="line"><span class="comment">// Load palette data into the first palette</span></div>
   4018 <div class="line"><a class="code hl_define" href="msx_8h.html#set_sprite_palette">set_sprite_palette</a>(4, 1, exampleSprite_palettes)</div>
   4019 <div class="line"> </div>
   4020 <div class="line"><span class="comment">// Set the OAM value for the sprite</span></div>
   4021 <div class="line"><span class="comment">// These flags tell the sprite to use the first sprite palette (palette 4) and to flip the sprite both vertically and horizontally.</span></div>
   4022 <div class="line"><a class="code hl_function" href="gb_8h.html#set_sprite_prop">set_sprite_prop</a>(0, <a class="code hl_define" href="gb_8h.html#S_FLIPY">S_FLIPY</a> | <a class="code hl_define" href="gb_8h.html#S_FLIPX">S_FLIPX</a>);</div>
   4023 <div class="ttc" id="agb_8h_html_S_FLIPX"><div class="ttname"><a href="gb_8h.html#S_FLIPX">S_FLIPX</a></div><div class="ttdeci">#define S_FLIPX</div><div class="ttdef"><b>Definition:</b> gb.h:92</div></div>
   4024 <div class="ttc" id="agb_8h_html_S_FLIPY"><div class="ttname"><a href="gb_8h.html#S_FLIPY">S_FLIPY</a></div><div class="ttdeci">#define S_FLIPY</div><div class="ttdef"><b>Definition:</b> gb.h:96</div></div>
   4025 <div class="ttc" id="agb_8h_html_set_sprite_prop"><div class="ttname"><a href="gb_8h.html#set_sprite_prop">set_sprite_prop</a></div><div class="ttdeci">void set_sprite_prop(uint8_t nb, uint8_t prop)</div><div class="ttdef"><b>Definition:</b> gb.h:1945</div></div>
   4026 <div class="ttc" id="amsx_8h_html_set_sprite_palette"><div class="ttname"><a href="msx_8h.html#set_sprite_palette">set_sprite_palette</a></div><div class="ttdeci">#define set_sprite_palette(first_palette, nb_palettes, rgb_data)</div><div class="ttdef"><b>Definition:</b> msx.h:558</div></div>
   4027 </div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#S_PALETTE">S_PALETTE</a>, <a class="el" href="gb_8h.html#S_FLIPX">S_FLIPX</a>, <a class="el" href="gb_8h.html#S_FLIPY">S_FLIPY</a>, <a class="el" href="gb_8h.html#S_PRIORITY">S_PRIORITY</a></dd></dl>
   4028 <p>Sets the OAM Property Flags of sprite number <b>nb</b> to those defined in <b>prop</b>.</p>
   4029 <dl class="params"><dt>Parameters</dt><dd>
   4030   <table class="params">
   4031     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   4032     <tr><td class="paramname">prop</td><td>Property setting (see bitfield description)</td></tr>
   4033   </table>
   4034   </dd>
   4035 </dl>
   4036 <p>The bits in <b>prop</b> represent: </p><ul>
   4037 <li>Bit 7 - Priority flag. When this is set the sprites appear behind the background and window layer. <br  />
   4038  0: infront <br  />
   4039  1: behind </li>
   4040 <li>Bit 6 - Vertical flip. Dictates which way up the sprite is drawn vertically. <br  />
   4041  0: normal <br  />
   4042  1:upside down </li>
   4043 <li>Bit 5 - Horizontal flip. Dictates which way up the sprite is drawn horizontally. <br  />
   4044  0: normal <br  />
   4045  1:back to front </li>
   4046 <li>Bit 4 - DMG/Non-CGB Mode Only. Assigns either one of the two b/w palettes to the sprite. <br  />
   4047  0: OBJ palette 0 <br  />
   4048  1: OBJ palette 1 </li>
   4049 <li>Bit 3 - GBC only. Dictates from which bank of Sprite Tile Patterns the tile is taken. <br  />
   4050  0: Bank 0 <br  />
   4051  1: Bank 1 </li>
   4052 <li>Bit 2 - See bit 0. </li>
   4053 <li>Bit 1 - See bit 0. </li>
   4054 <li>Bit 0 - GBC only. Bits 0-2 indicate which of the 7 OBJ colour palettes the sprite is assigned.</li>
   4055 </ul>
   4056 <p>It's recommended to use GBDK constants (eg: S_FLIPY) to configure sprite properties as these are crossplatform.</p>
   4057 <div class="fragment"><div class="line"><span class="comment">// Load palette data into the first palette</span></div>
   4058 <div class="line"><a class="code hl_define" href="msx_8h.html#set_sprite_palette">set_sprite_palette</a>(4, 1, exampleSprite_palettes)</div>
   4059 <div class="line"> </div>
   4060 <div class="line"><span class="comment">// Set the OAM value for the sprite</span></div>
   4061 <div class="line"><span class="comment">// These flags tell the sprite to flip both vertically and horizontally.</span></div>
   4062 <div class="line"><a class="code hl_function" href="gb_8h.html#set_sprite_prop">set_sprite_prop</a>(0, <a class="code hl_define" href="gb_8h.html#S_FLIPY">S_FLIPY</a> | <a class="code hl_define" href="gb_8h.html#S_FLIPX">S_FLIPX</a>);</div>
   4063 </div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#S_PALETTE">S_PALETTE</a>, <a class="el" href="gb_8h.html#S_FLIPX">S_FLIPX</a>, <a class="el" href="gb_8h.html#S_FLIPY">S_FLIPY</a>, <a class="el" href="gb_8h.html#S_PRIORITY">S_PRIORITY</a> </dd></dl>
   4064 
   4065 </div>
   4066 </div>
   4067 <a id="get_sprite_prop" name="get_sprite_prop"></a>
   4068 <h2 class="memtitle"><span class="permalink"><a href="#get_sprite_prop">&#9670;&nbsp;</a></span>get_sprite_prop()</h2>
   4069 
   4070 <div class="memitem">
   4071 <div class="memproto">
   4072 <table class="mlabels">
   4073   <tr>
   4074   <td class="mlabels-left">
   4075       <table class="memname">
   4076         <tr>
   4077           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> get_sprite_prop </td>
   4078           <td>(</td>
   4079           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4080           <td class="paramname"><em>nb</em></td><td>)</td>
   4081           <td></td>
   4082         </tr>
   4083       </table>
   4084   </td>
   4085   <td class="mlabels-right">
   4086 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   4087   </tr>
   4088 </table>
   4089 </div><div class="memdoc">
   4090 <p >Returns the OAM Property Flags of sprite number <b>nb</b>.</p>
   4091 <dl class="params"><dt>Parameters</dt><dd>
   4092   <table class="params">
   4093     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   4094   </table>
   4095   </dd>
   4096 </dl>
   4097 <dl class="section see"><dt>See also</dt><dd><a class="el" href="nes_8h.html#set_sprite_prop">set_sprite_prop</a> for property bitfield settings </dd></dl>
   4098 
   4099 </div>
   4100 </div>
   4101 <a id="move_sprite" name="move_sprite"></a>
   4102 <h2 class="memtitle"><span class="permalink"><a href="#move_sprite">&#9670;&nbsp;</a></span>move_sprite()</h2>
   4103 
   4104 <div class="memitem">
   4105 <div class="memproto">
   4106 <table class="mlabels">
   4107   <tr>
   4108   <td class="mlabels-left">
   4109       <table class="memname">
   4110         <tr>
   4111           <td class="memname">void move_sprite </td>
   4112           <td>(</td>
   4113           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4114           <td class="paramname"><em>nb</em>, </td>
   4115         </tr>
   4116         <tr>
   4117           <td class="paramkey"></td>
   4118           <td></td>
   4119           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4120           <td class="paramname"><em>x</em>, </td>
   4121         </tr>
   4122         <tr>
   4123           <td class="paramkey"></td>
   4124           <td></td>
   4125           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4126           <td class="paramname"><em>y</em>&#160;</td>
   4127         </tr>
   4128         <tr>
   4129           <td></td>
   4130           <td>)</td>
   4131           <td></td><td></td>
   4132         </tr>
   4133       </table>
   4134   </td>
   4135   <td class="mlabels-right">
   4136 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   4137   </tr>
   4138 </table>
   4139 </div><div class="memdoc">
   4140 <p >Moves sprite number <b>nb</b> to the <b>x</b>, <b>y</b> position on the screen.</p>
   4141 <dl class="params"><dt>Parameters</dt><dd>
   4142   <table class="params">
   4143     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   4144     <tr><td class="paramname">x</td><td>X Position. Specifies the sprites horizontal position on the screen (minus 8). <br  />
   4145  An offscreen value (X=0 or X&gt;=168) hides the sprite, but the sprite still affects the priority ordering - a better way to hide a sprite is to set its Y-coordinate offscreen. </td></tr>
   4146     <tr><td class="paramname">y</td><td>Y Position. Specifies the sprites vertical position on the screen (minus 16). <br  />
   4147  An offscreen value (for example, Y=0 or Y&gt;=160) hides the sprite.</td></tr>
   4148   </table>
   4149   </dd>
   4150 </dl>
   4151 <p>Moving the sprite to 0,0 (or similar off-screen location) will hide it. </p>
   4152 
   4153 </div>
   4154 </div>
   4155 <a id="scroll_sprite" name="scroll_sprite"></a>
   4156 <h2 class="memtitle"><span class="permalink"><a href="#scroll_sprite">&#9670;&nbsp;</a></span>scroll_sprite()</h2>
   4157 
   4158 <div class="memitem">
   4159 <div class="memproto">
   4160 <table class="mlabels">
   4161   <tr>
   4162   <td class="mlabels-left">
   4163       <table class="memname">
   4164         <tr>
   4165           <td class="memname">void scroll_sprite </td>
   4166           <td>(</td>
   4167           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4168           <td class="paramname"><em>nb</em>, </td>
   4169         </tr>
   4170         <tr>
   4171           <td class="paramkey"></td>
   4172           <td></td>
   4173           <td class="paramtype"><a class="el" href="stdint_8h.html#int8_t">int8_t</a>&#160;</td>
   4174           <td class="paramname"><em>x</em>, </td>
   4175         </tr>
   4176         <tr>
   4177           <td class="paramkey"></td>
   4178           <td></td>
   4179           <td class="paramtype"><a class="el" href="stdint_8h.html#int8_t">int8_t</a>&#160;</td>
   4180           <td class="paramname"><em>y</em>&#160;</td>
   4181         </tr>
   4182         <tr>
   4183           <td></td>
   4184           <td>)</td>
   4185           <td></td><td></td>
   4186         </tr>
   4187       </table>
   4188   </td>
   4189   <td class="mlabels-right">
   4190 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   4191   </tr>
   4192 </table>
   4193 </div><div class="memdoc">
   4194 <p >Moves sprite number <b>nb</b> relative to its current position.</p>
   4195 <dl class="params"><dt>Parameters</dt><dd>
   4196   <table class="params">
   4197     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   4198     <tr><td class="paramname">x</td><td>Number of pixels to move the sprite on the <b>X axis</b> <br  />
   4199  Range: -128 - 127 </td></tr>
   4200     <tr><td class="paramname">y</td><td>Number of pixels to move the sprite on the <b>Y axis</b> <br  />
   4201  Range: -128 - 127</td></tr>
   4202   </table>
   4203   </dd>
   4204 </dl>
   4205 <dl class="section see"><dt>See also</dt><dd><a class="el" href="msx_8h.html#move_sprite">move_sprite</a> for more details about the X and Y position </dd></dl>
   4206 
   4207 </div>
   4208 </div>
   4209 <a id="hide_sprite" name="hide_sprite"></a>
   4210 <h2 class="memtitle"><span class="permalink"><a href="#hide_sprite">&#9670;&nbsp;</a></span>hide_sprite()</h2>
   4211 
   4212 <div class="memitem">
   4213 <div class="memproto">
   4214 <table class="mlabels">
   4215   <tr>
   4216   <td class="mlabels-left">
   4217       <table class="memname">
   4218         <tr>
   4219           <td class="memname">void hide_sprite </td>
   4220           <td>(</td>
   4221           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4222           <td class="paramname"><em>nb</em></td><td>)</td>
   4223           <td></td>
   4224         </tr>
   4225       </table>
   4226   </td>
   4227   <td class="mlabels-right">
   4228 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
   4229   </tr>
   4230 </table>
   4231 </div><div class="memdoc">
   4232 <p >Hides sprite number <b>nb</b> by moving it to zero position by Y.</p>
   4233 <dl class="params"><dt>Parameters</dt><dd>
   4234   <table class="params">
   4235     <tr><td class="paramname">nb</td><td>Sprite number, range 0 - 39 </td></tr>
   4236   </table>
   4237   </dd>
   4238 </dl>
   4239 
   4240 </div>
   4241 </div>
   4242 <a id="set_vram_byte" name="set_vram_byte"></a>
   4243 <h2 class="memtitle"><span class="permalink"><a href="#set_vram_byte">&#9670;&nbsp;</a></span>set_vram_byte()</h2>
   4244 
   4245 <div class="memitem">
   4246 <div class="memproto">
   4247       <table class="memname">
   4248         <tr>
   4249           <td class="memname">void set_vram_byte </td>
   4250           <td>(</td>
   4251           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> *&#160;</td>
   4252           <td class="paramname"><em>addr</em>, </td>
   4253         </tr>
   4254         <tr>
   4255           <td class="paramkey"></td>
   4256           <td></td>
   4257           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4258           <td class="paramname"><em>v</em>&#160;</td>
   4259         </tr>
   4260         <tr>
   4261           <td></td>
   4262           <td>)</td>
   4263           <td></td><td></td>
   4264         </tr>
   4265       </table>
   4266 </div><div class="memdoc">
   4267 <p >Set byte in vram at given memory location</p>
   4268 <dl class="params"><dt>Parameters</dt><dd>
   4269   <table class="params">
   4270     <tr><td class="paramname">addr</td><td>address to write to </td></tr>
   4271     <tr><td class="paramname">v</td><td>value </td></tr>
   4272   </table>
   4273   </dd>
   4274 </dl>
   4275 
   4276 </div>
   4277 </div>
   4278 <a id="set_attributed_tile_xy" name="set_attributed_tile_xy"></a>
   4279 <h2 class="memtitle"><span class="permalink"><a href="#set_attributed_tile_xy">&#9670;&nbsp;</a></span>set_attributed_tile_xy()</h2>
   4280 
   4281 <div class="memitem">
   4282 <div class="memproto">
   4283       <table class="memname">
   4284         <tr>
   4285           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> * set_attributed_tile_xy </td>
   4286           <td>(</td>
   4287           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4288           <td class="paramname"><em>x</em>, </td>
   4289         </tr>
   4290         <tr>
   4291           <td class="paramkey"></td>
   4292           <td></td>
   4293           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4294           <td class="paramname"><em>y</em>, </td>
   4295         </tr>
   4296         <tr>
   4297           <td class="paramkey"></td>
   4298           <td></td>
   4299           <td class="paramtype"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a>&#160;</td>
   4300           <td class="paramname"><em>t</em>&#160;</td>
   4301         </tr>
   4302         <tr>
   4303           <td></td>
   4304           <td>)</td>
   4305           <td></td><td></td>
   4306         </tr>
   4307       </table>
   4308 </div><div class="memdoc">
   4309 <p >Set single tile t with attributes on background layer at x,y </p><dl class="params"><dt>Parameters</dt><dd>
   4310   <table class="params">
   4311     <tr><td class="paramname">x</td><td>X-coordinate </td></tr>
   4312     <tr><td class="paramname">y</td><td>Y-coordinate </td></tr>
   4313     <tr><td class="paramname">t</td><td>tile index </td></tr>
   4314   </table>
   4315   </dd>
   4316 </dl>
   4317 <dl class="section return"><dt>Returns</dt><dd>returns the address of tile, so you may use faster <a class="el" href="msx_8h.html#set_vram_byte">set_vram_byte()</a> later </dd></dl>
   4318 
   4319 </div>
   4320 </div>
   4321 <a id="set_tile_xy" name="set_tile_xy"></a>
   4322 <h2 class="memtitle"><span class="permalink"><a href="#set_tile_xy">&#9670;&nbsp;</a></span>set_tile_xy()</h2>
   4323 
   4324 <div class="memitem">
   4325 <div class="memproto">
   4326       <table class="memname">
   4327         <tr>
   4328           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> * set_tile_xy </td>
   4329           <td>(</td>
   4330           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4331           <td class="paramname"><em>x</em>, </td>
   4332         </tr>
   4333         <tr>
   4334           <td class="paramkey"></td>
   4335           <td></td>
   4336           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4337           <td class="paramname"><em>y</em>, </td>
   4338         </tr>
   4339         <tr>
   4340           <td class="paramkey"></td>
   4341           <td></td>
   4342           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4343           <td class="paramname"><em>t</em>&#160;</td>
   4344         </tr>
   4345         <tr>
   4346           <td></td>
   4347           <td>)</td>
   4348           <td></td><td></td>
   4349         </tr>
   4350       </table>
   4351 </div><div class="memdoc">
   4352 <p >Set single tile t on background layer at x,y </p><dl class="params"><dt>Parameters</dt><dd>
   4353   <table class="params">
   4354     <tr><td class="paramname">x</td><td>X-coordinate </td></tr>
   4355     <tr><td class="paramname">y</td><td>Y-coordinate </td></tr>
   4356     <tr><td class="paramname">t</td><td>tile index </td></tr>
   4357   </table>
   4358   </dd>
   4359 </dl>
   4360 <dl class="section return"><dt>Returns</dt><dd>returns the address of tile, so you may use faster <a class="el" href="msx_8h.html#set_vram_byte">set_vram_byte()</a> later </dd></dl>
   4361 
   4362 </div>
   4363 </div>
   4364 <a id="get_bkg_xy_addr" name="get_bkg_xy_addr"></a>
   4365 <h2 class="memtitle"><span class="permalink"><a href="#get_bkg_xy_addr">&#9670;&nbsp;</a></span>get_bkg_xy_addr()</h2>
   4366 
   4367 <div class="memitem">
   4368 <div class="memproto">
   4369       <table class="memname">
   4370         <tr>
   4371           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> * get_bkg_xy_addr </td>
   4372           <td>(</td>
   4373           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4374           <td class="paramname"><em>x</em>, </td>
   4375         </tr>
   4376         <tr>
   4377           <td class="paramkey"></td>
   4378           <td></td>
   4379           <td class="paramtype"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a>&#160;</td>
   4380           <td class="paramname"><em>y</em>&#160;</td>
   4381         </tr>
   4382         <tr>
   4383           <td></td>
   4384           <td>)</td>
   4385           <td></td><td></td>
   4386         </tr>
   4387       </table>
   4388 </div><div class="memdoc">
   4389 <p >Get address of X,Y tile of background map </p>
   4390 
   4391 </div>
   4392 </div>
   4393 <h2 class="groupheader">Variable Documentation</h2>
   4394 <a id="_SYSTEM" name="_SYSTEM"></a>
   4395 <h2 class="memtitle"><span class="permalink"><a href="#_SYSTEM">&#9670;&nbsp;</a></span>_SYSTEM</h2>
   4396 
   4397 <div class="memitem">
   4398 <div class="memproto">
   4399 <table class="mlabels">
   4400   <tr>
   4401   <td class="mlabels-left">
   4402       <table class="memname">
   4403         <tr>
   4404           <td class="memname">const <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _SYSTEM</td>
   4405         </tr>
   4406       </table>
   4407   </td>
   4408   <td class="mlabels-right">
   4409 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4410   </tr>
   4411 </table>
   4412 </div><div class="memdoc">
   4413 
   4414 </div>
   4415 </div>
   4416 <a id="c" name="c"></a>
   4417 <h2 class="memtitle"><span class="permalink"><a href="#c">&#9670;&nbsp;</a></span>c</h2>
   4418 
   4419 <div class="memitem">
   4420 <div class="memproto">
   4421       <table class="memname">
   4422         <tr>
   4423           <td class="memname">void c</td>
   4424         </tr>
   4425       </table>
   4426 </div><div class="memdoc">
   4427 
   4428 </div>
   4429 </div>
   4430 <a id="d" name="d"></a>
   4431 <h2 class="memtitle"><span class="permalink"><a href="#d">&#9670;&nbsp;</a></span>d</h2>
   4432 
   4433 <div class="memitem">
   4434 <div class="memproto">
   4435       <table class="memname">
   4436         <tr>
   4437           <td class="memname">void d</td>
   4438         </tr>
   4439       </table>
   4440 </div><div class="memdoc">
   4441 
   4442 </div>
   4443 </div>
   4444 <a id="e" name="e"></a>
   4445 <h2 class="memtitle"><span class="permalink"><a href="#e">&#9670;&nbsp;</a></span>e</h2>
   4446 
   4447 <div class="memitem">
   4448 <div class="memproto">
   4449       <table class="memname">
   4450         <tr>
   4451           <td class="memname">void e</td>
   4452         </tr>
   4453       </table>
   4454 </div><div class="memdoc">
   4455 
   4456 </div>
   4457 </div>
   4458 <a id="iyh" name="iyh"></a>
   4459 <h2 class="memtitle"><span class="permalink"><a href="#iyh">&#9670;&nbsp;</a></span>iyh</h2>
   4460 
   4461 <div class="memitem">
   4462 <div class="memproto">
   4463       <table class="memname">
   4464         <tr>
   4465           <td class="memname">void iyh</td>
   4466         </tr>
   4467       </table>
   4468 </div><div class="memdoc">
   4469 
   4470 </div>
   4471 </div>
   4472 <a id="iyl" name="iyl"></a>
   4473 <h2 class="memtitle"><span class="permalink"><a href="#iyl">&#9670;&nbsp;</a></span>iyl</h2>
   4474 
   4475 <div class="memitem">
   4476 <div class="memproto">
   4477       <table class="memname">
   4478         <tr>
   4479           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> iyl</td>
   4480         </tr>
   4481       </table>
   4482 </div><div class="memdoc">
   4483 <b>Initial value:</b><div class="fragment"><div class="line">{</div>
   4484 <div class="line">    __asm__(<span class="stringliteral">&quot;ei&quot;</span>)</div>
   4485 </div><!-- fragment -->
   4486 </div>
   4487 </div>
   4488 <a id="h" name="h"></a>
   4489 <h2 class="memtitle"><span class="permalink"><a href="#h">&#9670;&nbsp;</a></span>h</h2>
   4490 
   4491 <div class="memitem">
   4492 <div class="memproto">
   4493       <table class="memname">
   4494         <tr>
   4495           <td class="memname">void h</td>
   4496         </tr>
   4497       </table>
   4498 </div><div class="memdoc">
   4499 
   4500 </div>
   4501 </div>
   4502 <a id="l" name="l"></a>
   4503 <h2 class="memtitle"><span class="permalink"><a href="#l">&#9670;&nbsp;</a></span>l</h2>
   4504 
   4505 <div class="memitem">
   4506 <div class="memproto">
   4507       <table class="memname">
   4508         <tr>
   4509           <td class="memname">void l</td>
   4510         </tr>
   4511       </table>
   4512 </div><div class="memdoc">
   4513 
   4514 </div>
   4515 </div>
   4516 <a id="sys_time" name="sys_time"></a>
   4517 <h2 class="memtitle"><span class="permalink"><a href="#sys_time">&#9670;&nbsp;</a></span>sys_time</h2>
   4518 
   4519 <div class="memitem">
   4520 <div class="memproto">
   4521 <table class="mlabels">
   4522   <tr>
   4523   <td class="mlabels-left">
   4524       <table class="memname">
   4525         <tr>
   4526           <td class="memname">volatile <a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> sys_time</td>
   4527         </tr>
   4528       </table>
   4529   </td>
   4530   <td class="mlabels-right">
   4531 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4532   </tr>
   4533 </table>
   4534 </div><div class="memdoc">
   4535 <p >Global Time Counter in VBL periods (60Hz)</p>
   4536 <p >Increments once per Frame</p>
   4537 <p >Will wrap around every ~18 minutes (unsigned 16 bits = 65535 / 60 / 60 = 18.2) </p>
   4538 
   4539 </div>
   4540 </div>
   4541 <a id="_vbl_done" name="_vbl_done"></a>
   4542 <h2 class="memtitle"><span class="permalink"><a href="#_vbl_done">&#9670;&nbsp;</a></span>_vbl_done</h2>
   4543 
   4544 <div class="memitem">
   4545 <div class="memproto">
   4546 <table class="mlabels">
   4547   <tr>
   4548   <td class="mlabels-left">
   4549       <table class="memname">
   4550         <tr>
   4551           <td class="memname">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _vbl_done</td>
   4552         </tr>
   4553       </table>
   4554   </td>
   4555   <td class="mlabels-right">
   4556 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4557   </tr>
   4558 </table>
   4559 </div><div class="memdoc">
   4560 <p >Flag indicating the VBlank ISR has run</p>
   4561 <p >Flag gets cleared at the start of <a class="el" href="gb_8h.html#vsync">vsync()</a> / <a class="el" href="gb_8h.html#wait_vbl_done">wait_vbl_done()</a> and set in the default VBlank ISR handler. </p>
   4562 
   4563 </div>
   4564 </div>
   4565 <a id="_current_bank" name="_current_bank"></a>
   4566 <h2 class="memtitle"><span class="permalink"><a href="#_current_bank">&#9670;&nbsp;</a></span>_current_bank</h2>
   4567 
   4568 <div class="memitem">
   4569 <div class="memproto">
   4570 <table class="mlabels">
   4571   <tr>
   4572   <td class="mlabels-left">
   4573       <table class="memname">
   4574         <tr>
   4575           <td class="memname">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _current_bank</td>
   4576         </tr>
   4577       </table>
   4578   </td>
   4579   <td class="mlabels-right">
   4580 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4581   </tr>
   4582 </table>
   4583 </div><div class="memdoc">
   4584 <p >Tracks current active ROM bank in frame 1</p>
   4585 <p >Tracks current active ROM bank</p>
   4586 <p >In most cases the <a class="el" href="sms_8h.html#CURRENT_BANK">CURRENT_BANK</a> macro for this variable is recommended for use instead of the variable itself.</p>
   4587 <p >The active bank number is not tracked by <a class="el" href="nes_8h.html#_current_bank">_current_bank</a> when <a class="el" href="gb_8h.html#SWITCH_ROM_MBC5_8M">SWITCH_ROM_MBC5_8M</a> is used.</p>
   4588 <p >This variable is updated automatically when you call SWITCH_ROM_MBC1 or SWITCH_ROM_MBC5, <a class="el" href="gb_8h.html#SWITCH_ROM">SWITCH_ROM()</a>, or call a BANKED function.</p>
   4589 <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#SWITCH_ROM_MBC1">SWITCH_ROM_MBC1()</a>, <a class="el" href="gb_8h.html#SWITCH_ROM_MBC5">SWITCH_ROM_MBC5()</a>, <a class="el" href="gb_8h.html#SWITCH_ROM">SWITCH_ROM()</a> </dd></dl>
   4590 
   4591 </div>
   4592 </div>
   4593 <a id="b" name="b"></a>
   4594 <h2 class="memtitle"><span class="permalink"><a href="#b">&#9670;&nbsp;</a></span>b</h2>
   4595 
   4596 <div class="memitem">
   4597 <div class="memproto">
   4598       <table class="memname">
   4599         <tr>
   4600           <td class="memname">void b</td>
   4601         </tr>
   4602       </table>
   4603 </div><div class="memdoc">
   4604 
   4605 </div>
   4606 </div>
   4607 <a id="_current_2bpp_palette" name="_current_2bpp_palette"></a>
   4608 <h2 class="memtitle"><span class="permalink"><a href="#_current_2bpp_palette">&#9670;&nbsp;</a></span>_current_2bpp_palette</h2>
   4609 
   4610 <div class="memitem">
   4611 <div class="memproto">
   4612 <table class="mlabels">
   4613   <tr>
   4614   <td class="mlabels-left">
   4615       <table class="memname">
   4616         <tr>
   4617           <td class="memname"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> _current_2bpp_palette</td>
   4618         </tr>
   4619       </table>
   4620   </td>
   4621   <td class="mlabels-right">
   4622 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4623   </tr>
   4624 </table>
   4625 </div><div class="memdoc">
   4626 
   4627 </div>
   4628 </div>
   4629 <a id="_current_1bpp_colors" name="_current_1bpp_colors"></a>
   4630 <h2 class="memtitle"><span class="permalink"><a href="#_current_1bpp_colors">&#9670;&nbsp;</a></span>_current_1bpp_colors</h2>
   4631 
   4632 <div class="memitem">
   4633 <div class="memproto">
   4634 <table class="mlabels">
   4635   <tr>
   4636   <td class="mlabels-left">
   4637       <table class="memname">
   4638         <tr>
   4639           <td class="memname"><a class="el" href="stdint_8h.html#uint16_t">uint16_t</a> _current_1bpp_colors</td>
   4640         </tr>
   4641       </table>
   4642   </td>
   4643   <td class="mlabels-right">
   4644 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4645   </tr>
   4646 </table>
   4647 </div><div class="memdoc">
   4648 
   4649 </div>
   4650 </div>
   4651 <a id="_map_tile_offset" name="_map_tile_offset"></a>
   4652 <h2 class="memtitle"><span class="permalink"><a href="#_map_tile_offset">&#9670;&nbsp;</a></span>_map_tile_offset</h2>
   4653 
   4654 <div class="memitem">
   4655 <div class="memproto">
   4656 <table class="mlabels">
   4657   <tr>
   4658   <td class="mlabels-left">
   4659       <table class="memname">
   4660         <tr>
   4661           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _map_tile_offset</td>
   4662         </tr>
   4663       </table>
   4664   </td>
   4665   <td class="mlabels-right">
   4666 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4667   </tr>
   4668 </table>
   4669 </div><div class="memdoc">
   4670 
   4671 </div>
   4672 </div>
   4673 <a id="_submap_tile_offset" name="_submap_tile_offset"></a>
   4674 <h2 class="memtitle"><span class="permalink"><a href="#_submap_tile_offset">&#9670;&nbsp;</a></span>_submap_tile_offset</h2>
   4675 
   4676 <div class="memitem">
   4677 <div class="memproto">
   4678 <table class="mlabels">
   4679   <tr>
   4680   <td class="mlabels-left">
   4681       <table class="memname">
   4682         <tr>
   4683           <td class="memname"><a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _submap_tile_offset</td>
   4684         </tr>
   4685       </table>
   4686   </td>
   4687   <td class="mlabels-right">
   4688 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4689   </tr>
   4690 </table>
   4691 </div><div class="memdoc">
   4692 
   4693 </div>
   4694 </div>
   4695 <a id="shadow_OAM" name="shadow_OAM"></a>
   4696 <h2 class="memtitle"><span class="permalink"><a href="#shadow_OAM">&#9670;&nbsp;</a></span>shadow_OAM</h2>
   4697 
   4698 <div class="memitem">
   4699 <div class="memproto">
   4700 <table class="mlabels">
   4701   <tr>
   4702   <td class="mlabels-left">
   4703       <table class="memname">
   4704         <tr>
   4705           <td class="memname">volatile struct <a class="el" href="struct_o_a_m__item__t.html">OAM_item_t</a> shadow_OAM[]</td>
   4706         </tr>
   4707       </table>
   4708   </td>
   4709   <td class="mlabels-right">
   4710 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4711   </tr>
   4712 </table>
   4713 </div><div class="memdoc">
   4714 <p >Shadow OAM array in WRAM, that is DMA-transferred into the real OAM each VBlank </p>
   4715 
   4716 </div>
   4717 </div>
   4718 <a id="_shadow_OAM_base" name="_shadow_OAM_base"></a>
   4719 <h2 class="memtitle"><span class="permalink"><a href="#_shadow_OAM_base">&#9670;&nbsp;</a></span>_shadow_OAM_base</h2>
   4720 
   4721 <div class="memitem">
   4722 <div class="memproto">
   4723 <table class="mlabels">
   4724   <tr>
   4725   <td class="mlabels-left">
   4726       <table class="memname">
   4727         <tr>
   4728           <td class="memname">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _shadow_OAM_base</td>
   4729         </tr>
   4730       </table>
   4731   </td>
   4732   <td class="mlabels-right">
   4733 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4734   </tr>
   4735 </table>
   4736 </div><div class="memdoc">
   4737 <p >MSB of shadow_OAM address is used by OAM copying routine</p>
   4738 <p >MSB of shadow_OAM address is used by OAM DMA copying routine </p>
   4739 
   4740 </div>
   4741 </div>
   4742 <a id="_shadow_OAM_OFF" name="_shadow_OAM_OFF"></a>
   4743 <h2 class="memtitle"><span class="permalink"><a href="#_shadow_OAM_OFF">&#9670;&nbsp;</a></span>_shadow_OAM_OFF</h2>
   4744 
   4745 <div class="memitem">
   4746 <div class="memproto">
   4747 <table class="mlabels">
   4748   <tr>
   4749   <td class="mlabels-left">
   4750       <table class="memname">
   4751         <tr>
   4752           <td class="memname">volatile <a class="el" href="stdint_8h.html#uint8_t">uint8_t</a> _shadow_OAM_OFF</td>
   4753         </tr>
   4754       </table>
   4755   </td>
   4756   <td class="mlabels-right">
   4757 <span class="mlabels"><span class="mlabel">extern</span></span>  </td>
   4758   </tr>
   4759 </table>
   4760 </div><div class="memdoc">
   4761 <p >Flag for disabling of OAM copying routine</p>
   4762 <p >Values: </p><ul>
   4763 <li>1: OAM copy routine is disabled (non-isr VDP operation may be in progress) </li>
   4764 <li>0: OAM copy routine is enabled</li>
   4765 </ul>
   4766 <p>This flag is modified by all MSX GBDK API calls that write to the VDP. It is set to DISABLED when they start and ENABLED when they complete.</p>
   4767 <dl class="section note"><dt>Note</dt><dd>It is recommended to avoid writing to the Video Display Processor (VDP) during an interrupt service routine (ISR) since it can corrupt the VDP pointer of an VDP operation already in progress.</dd></dl>
   4768 <p>If it is necessary, this flag can be used during an ISR to determine whether a VDP operation is already in progress. If the value is <code>1</code> then avoid writing to the VDP (tiles, map, scrolling, colors, etc).</p>
   4769 <div class="fragment"><div class="line"><span class="comment">// at the beginning of and ISR that would write to the VDP</span></div>
   4770 <div class="line"><span class="keywordflow">if</span> (<a class="code hl_variable" href="msx_8h.html#_shadow_OAM_OFF">_shadow_OAM_OFF</a>) <span class="keywordflow">return</span>;</div>
   4771 <div class="ttc" id="amsx_8h_html__shadow_OAM_OFF"><div class="ttname"><a href="msx_8h.html#_shadow_OAM_OFF">_shadow_OAM_OFF</a></div><div class="ttdeci">volatile uint8_t _shadow_OAM_OFF</div></div>
   4772 </div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><a class="el" href="docs_supported_consoles.html#docs_consoles_safe_display_controller_access">docs_consoles_safe_display_controller_access</a> </dd></dl>
   4773 
   4774 </div>
   4775 </div>
   4776 </div><!-- contents -->
   4777 </div><!-- doc-content -->
   4778 <!-- start footer part -->
   4779 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
   4780   <ul>
   4781     <li class="navelem"><a class="el" href="dir_8bd3092e915ccc8a773a74e0a10d4d15.html">gbdk-lib</a></li><li class="navelem"><a class="el" href="dir_a9f896cff747ba031115e41245385c17.html">include</a></li><li class="navelem"><a class="el" href="dir_71c6fbf9500dd05f2fc30c566388269f.html">msx</a></li><li class="navelem"><a class="el" href="msx_8h.html">msx.h</a></li>
   4782     <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
   4783   </ul>
   4784 </div>
   4785 </body>
   4786 </html>

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.