git.y1.nz

gbdk-2020

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

commit 53c24d0af7b3142324e4f2ec4bd707b4098bbdab
parent 5442233f0aef7c7ad84033e96907dd670effd5cc
Author: toxa <untoxa@mail.ru>
Date:   Sat, 14 Nov 2020 22:49:55 +0300

docs update

Diffstat:
Mdocs/api/bgb__emu_8h.html4++--
Mdocs/api/console_8h_source.html2+-
Mdocs/api/ctype_8h_source.html2+-
Mdocs/api/gb_8h.html55++++++++++++++++++++++++++++++++++++-------------------
Mdocs/api/gb_8h_source.html764+++++++++++++++++++++++++++++++++++++++----------------------------------------
Mdocs/api/stdio_8h_source.html2+-
Mdocs/api/string_8h_source.html2+-
Mdocs/api/time_8h.html2+-
Mdocs/api/todo.html4+---
9 files changed, 422 insertions(+), 415 deletions(-)

diff --git a/docs/api/bgb__emu_8h.html b/docs/api/bgb__emu_8h.html @@ -232,7 +232,7 @@ Functions</h2></td></tr> <div class="line"> .ascii message_text \</div> <div class="line">lbl: \</div> <div class="line">__endasm</div> -<div class="ttc" id="gb_8h_html_a0a3d95ad0ab8ad213016101d2e9c3d3e"><div class="ttname"><a href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a></div><div class="ttdeci">void d</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> +<div class="ttc" id="gb_8h_html_a0a3d95ad0ab8ad213016101d2e9c3d3e"><div class="ttname"><a href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a></div><div class="ttdeci">void d</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> </div><!-- fragment --> </div> </div> @@ -338,7 +338,7 @@ Functions</h2></td></tr> <div class="line"> .dw 0 \</div> <div class="line">lbl: \</div> <div class="line">__endasm</div> -<div class="ttc" id="gb_8h_html_a0a3d95ad0ab8ad213016101d2e9c3d3e"><div class="ttname"><a href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a></div><div class="ttdeci">void d</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> +<div class="ttc" id="gb_8h_html_a0a3d95ad0ab8ad213016101d2e9c3d3e"><div class="ttname"><a href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a></div><div class="ttdeci">void d</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> </div><!-- fragment --> </div> </div> diff --git a/docs/api/console_8h_source.html b/docs/api/console_8h_source.html @@ -131,7 +131,7 @@ $(document).ready(function(){initNavTree('console_8h_source.html','');}); <div class="ttc" id="console_8h_html_a39cc3b71f4262838512c8589e755bbd3"><div class="ttname"><a href="console_8h.html#a39cc3b71f4262838512c8589e755bbd3">setchar</a></div><div class="ttdeci">void setchar(char c)</div></div> <div class="ttc" id="console_8h_html_a4826277cc150ddc0f4de4bd464a34909"><div class="ttname"><a href="console_8h.html#a4826277cc150ddc0f4de4bd464a34909">cls</a></div><div class="ttdeci">void cls()</div></div> <div class="ttc" id="console_8h_html_a87f5702d0e74f791414576f7636b4b74"><div class="ttname"><a href="console_8h.html#a87f5702d0e74f791414576f7636b4b74">posx</a></div><div class="ttdeci">UINT8 posx(void)</div></div> -<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:279</div></div> +<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:278</div></div> <div class="ttc" id="console_8h_html_a3cd0543b4adebf0bfb5c93a6d0a6f1a2"><div class="ttname"><a href="console_8h.html#a3cd0543b4adebf0bfb5c93a6d0a6f1a2">gotoxy</a></div><div class="ttdeci">void gotoxy(UINT8 x, UINT8 y)</div></div> <div class="ttc" id="asm_2gbz80_2types_8h_html_ab27e9918b538ce9d8ca692479b375b6a"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a></div><div class="ttdeci">unsigned char UINT8</div><div class="ttdef"><b>Definition:</b> types.h:21</div></div> </div><!-- fragment --></div><!-- contents --> diff --git a/docs/api/ctype_8h_source.html b/docs/api/ctype_8h_source.html @@ -140,7 +140,7 @@ $(document).ready(function(){initNavTree('ctype_8h_source.html','');}); <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _CTYPE_H */</span><span class="preprocessor"></span></div> <div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</a></div></div> <div class="ttc" id="ctype_8h_html_a207391fc2c5fa7786d5e0b9ef8ba5e80"><div class="ttname"><a href="ctype_8h.html#a207391fc2c5fa7786d5e0b9ef8ba5e80">tolower</a></div><div class="ttdeci">char tolower(char c)</div></div> -<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:279</div></div> +<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:278</div></div> <div class="ttc" id="ctype_8h_html_afe7b3895d13be3e313967576c095aa98"><div class="ttname"><a href="ctype_8h.html#afe7b3895d13be3e313967576c095aa98">isdigit</a></div><div class="ttdeci">BOOLEAN isdigit(char c)</div></div> <div class="ttc" id="ctype_8h_html_ae71a491d659acc84ca7e72ee88df0b2e"><div class="ttname"><a href="ctype_8h.html#ae71a491d659acc84ca7e72ee88df0b2e">isupper</a></div><div class="ttdeci">BOOLEAN isupper(char c)</div></div> <div class="ttc" id="asm_2types_8h_html_a5e2fb030036b42012a298e24aca66071"><div class="ttname"><a href="asm_2types_8h.html#a5e2fb030036b42012a298e24aca66071">BOOLEAN</a></div><div class="ttdeci">INT8 BOOLEAN</div><div class="ttdef"><b>Definition:</b> types.h:30</div></div> diff --git a/docs/api/gb_8h.html b/docs/api/gb_8h.html @@ -896,9 +896,9 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> -<p>Forces MBC1 and compatible to switch the active ROM bank </p><dl class="params"><dt>Parameters</dt><dd> +<p>Makes MBC1 and other compatible MBCs to switch the active ROM bank </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> - <tr><td class="paramname">b</td><td>Bank to switch to </td></tr> + <tr><td class="paramname">b</td><td>ROM bank to switch to </td></tr> </table> </dd> </dl> @@ -918,6 +918,12 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> +<p>Switches SRAM bank on MBC1 and other compaticle MBCs </p><dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">b</td><td>SRAM bank to switch to </td></tr> + </table> + </dd> +</dl> </div> </div> @@ -930,6 +936,7 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> +<p>Enables SRAM on MBC1 </p> </div> </div> @@ -942,6 +949,7 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> +<p>Disables SRAM on MBC1 </p> </div> </div> @@ -985,9 +993,15 @@ Variables</h2></td></tr> <b>Value:</b><div class="fragment"><div class="line"><a class="code" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a> = (<a class="code" href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a>), \</div> <div class="line"> *(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *)0x3000 = 0, \</div> <div class="line"> *(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *)0x2000 = (<a class="code" href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a>)</div> -<div class="ttc" id="gb_8h_html_a4c2e4adef74067fdbb49005bc73de937"><div class="ttname"><a href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a></div><div class="ttdeci">void b</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> -<div class="ttc" id="gb_8h_html_a98b848953a95ce2fff6fda643575d74a"><div class="ttname"><a href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a></div><div class="ttdeci">__REG _current_bank</div><div class="ttdef"><b>Definition:</b> gb.h:366</div></div> -</div><!-- fragment --><p>Forces MBC5 to switch the active ROM bank; only 4M roms are supported, </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a6c15ebc660abd3a978137493ab63ffe9">SWITCH_ROM_MBC5_8M()</a></dd></dl> +<div class="ttc" id="gb_8h_html_a4c2e4adef74067fdbb49005bc73de937"><div class="ttname"><a href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a></div><div class="ttdeci">void b</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> +<div class="ttc" id="gb_8h_html_a98b848953a95ce2fff6fda643575d74a"><div class="ttname"><a href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a></div><div class="ttdeci">__REG _current_bank</div><div class="ttdef"><b>Definition:</b> gb.h:348</div></div> +</div><!-- fragment --><p>Makes MBC5 to switch the active ROM bank; only 4M roms are supported, </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a6c15ebc660abd3a978137493ab63ffe9">SWITCH_ROM_MBC5_8M()</a> </dd></dl> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">b</td><td>ROM bank to switch to</td></tr> + </table> + </dd> +</dl> <p>Note the order used here. Writing the other way around on a MBC1 always selects bank 1 </p> </div> @@ -1008,8 +1022,14 @@ Variables</h2></td></tr> <b>Value:</b><div class="fragment"><div class="line">*(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *)0x3000 = ((<a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a>)(<a class="code" href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a>) &gt;&gt; 8), \</div> <div class="line"> *(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *)0x2000 = (<a class="code" href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a>)</div> <div class="ttc" id="asm_2gbz80_2types_8h_html_a805c2c164bdd38d72a30c46e84fb568b"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a></div><div class="ttdeci">unsigned int UINT16</div><div class="ttdef"><b>Definition:</b> types.h:27</div></div> -<div class="ttc" id="gb_8h_html_a4c2e4adef74067fdbb49005bc73de937"><div class="ttname"><a href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a></div><div class="ttdeci">void b</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> -</div><!-- fragment --><p>Forces MBC5 to switch the active ROM bank; active bank number is not tracked by _current_bank if you use this macro </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a></dd></dl> +<div class="ttc" id="gb_8h_html_a4c2e4adef74067fdbb49005bc73de937"><div class="ttname"><a href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a></div><div class="ttdeci">void b</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> +</div><!-- fragment --><p>Makes MBC5 to switch the active ROM bank; active bank number is not tracked by _current_bank if you use this macro </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a> </dd></dl> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">b</td><td>ROM bank to switch to</td></tr> + </table> + </dd> +</dl> <p>Note the order used here. Writing the other way around on a MBC1 always selects bank 1 </p> </div> @@ -1027,6 +1047,12 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> +<p>Switches SRAM bank on MBC5 </p><dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramname">b</td><td>SRAM bank to switch to </td></tr> + </table> + </dd> +</dl> </div> </div> @@ -1039,6 +1065,7 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> +<p>Enables SRAM on MBC5 </p> </div> </div> @@ -1051,6 +1078,7 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> +<p>Disables SRAM on MBC5 </p> </div> </div> @@ -3471,18 +3499,7 @@ Variables</h2></td></tr> </tr> </table> </div><div class="memdoc"> -<p>Switches the upper 16k bank of the 32k rom to bank rombank using the MBC1 controller. By default the upper 16k bank is 1. Make sure the rom you compile has more than just bank 0 and bank 1, a 32k rom.</p> -<p>At the compile stage this is done with these lcc.exe switches: </p><ul> -<li>-Wf-bo# where # is the number of the ROM banks </li> -<li>-Wf-ba# where # is the number of the RAM banks</li> -</ul> -<p>At the link stage this is done with these lcc.exe switches: </p><ul> -<li>-Wl-yt# where # is the type of cartridge. 1 for ROM+MBC1 </li> -<li>-Wl-yo# where # is the number of ROM banks. 2,4,8,16,32 </li> -<li>-Wl-ya# where # is the number of RAM banks. 2,4,8,16,32</li> -</ul> -<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>This should probably be moved into a general section about Banking </dd></dl> -<p>Tracks current active ROM bank </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a19558f5bbc9fea767f945001ae9cd13f">SWITCH_ROM_MBC1()</a>, <a class="el" href="gb_8h.html#a92d040284342702026eb19dab59b586e">SWITCH_ROM_MBC5()</a> </dd></dl> +<p>Tracks current active ROM bank </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a19558f5bbc9fea767f945001ae9cd13f">SWITCH_ROM_MBC1()</a>, <a class="el" href="gb_8h.html#a92d040284342702026eb19dab59b586e">SWITCH_ROM_MBC5()</a> This variable is updated automatically when you call <a class="el" href="gb_8h.html#a19558f5bbc9fea767f945001ae9cd13f">SWITCH_ROM_MBC1</a> or <a class="el" href="gb_8h.html#a92d040284342702026eb19dab59b586e">SWITCH_ROM_MBC5</a>, or call a <a class="el" href="asm_2gbz80_2types_8h.html#aa8480aed89a168ec484727f5ac985cd0">BANKED</a> function. </dd></dl> </div> </div> diff --git a/docs/api/gb_8h_source.html b/docs/api/gb_8h_source.html @@ -170,415 +170,407 @@ $(document).ready(function(){initNavTree('gb_8h_source.html','');}); <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div> <div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="gb_8h.html#ad57f2f8c54204687f02801d8ab1bd150"> 115</a></span>&#160;<span class="preprocessor">#define MAXWNDPOSY 0x8FU</span></div> <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div> -<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div> -<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d"> 121</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a>)(void) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div> -<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a3b3171b2e81e23b7d1bc402275a9ac71">remove_VBL</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div> -<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a4c5db32641410613d785911bafd09ac7">remove_LCD</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div> -<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1ad25695f4885f15325a82ec935e8579">remove_TIM</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div> -<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a18857adb60025a986dbb44ee289b7a7c">remove_SIO</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div> -<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae4510032b28f9f4cdaaa96b0b892cf57">remove_JOY</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div> -<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2412b9f97cb59acfcb2383eb9f204ddf">add_VBL</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div> -<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a6cc76ea12ac894c4947f85fa1999117c">add_LCD</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> -<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div> -<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a411914e5dc5f28ce0afa7cf692a18af1">add_TIM</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div> +<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d"> 120</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a>)(void) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div> +<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a3b3171b2e81e23b7d1bc402275a9ac71">remove_VBL</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div> +<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a4c5db32641410613d785911bafd09ac7">remove_LCD</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div> +<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1ad25695f4885f15325a82ec935e8579">remove_TIM</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div> +<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a18857adb60025a986dbb44ee289b7a7c">remove_SIO</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div> +<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae4510032b28f9f4cdaaa96b0b892cf57">remove_JOY</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div> +<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2412b9f97cb59acfcb2383eb9f204ddf">add_VBL</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div> +<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a6cc76ea12ac894c4947f85fa1999117c">add_LCD</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div> +<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a411914e5dc5f28ce0afa7cf692a18af1">add_TIM</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div> <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div> -<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div> -<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a024fc35ef0ad258d67c8f9dfb0751ee7">add_SIO</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a024fc35ef0ad258d67c8f9dfb0751ee7">add_SIO</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div> <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div> -<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div> -<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a81f1a67549d3a26dcca22367141eb21b">add_JOY</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a81f1a67549d3a26dcca22367141eb21b">add_JOY</a>(<a class="code" href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a> <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div> <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div> -<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div> -<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a115eb30ec86f6af039a27918ffe4cf8c">nowait_int_handler</a>(<span class="keywordtype">void</span>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a115eb30ec86f6af039a27918ffe4cf8c">nowait_int_handler</a>(<span class="keywordtype">void</span>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div> <div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div> -<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div> -<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#af461d38864cfc5720f0d9f4d1113cf07">wait_int_handler</a>(<span class="keywordtype">void</span>) NONBANKED;</div> +<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#af461d38864cfc5720f0d9f4d1113cf07">wait_int_handler</a>(<span class="keywordtype">void</span>) NONBANKED;</div> +<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div> <div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div> -<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;</div> -<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ac269dc3e0ff2d5dc7c0c0fd90e9b1608">mode</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> m) NONBANKED;</div> -<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div> -<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a"> 279</a></span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a60baa1622feae07982562dcbc243751e">get_mode</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(<a class="code" href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a>, <a class="code" href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a>);</div> -<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div> -<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;extern <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#adbc4b02721d3ab48caf53e0228fd3eb5">_cpu</a>;</div> -<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div> -<div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="gb_8h.html#a0031c07799247a6d6c1bfa3decac79d0"> 286</a></span>&#160;<span class="preprocessor">#define DMG_TYPE 0x01</span></div> -<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div> -<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="gb_8h.html#ae996ed4fd8bb6b308b9c8708a91df06b"> 289</a></span>&#160;<span class="preprocessor">#define MGB_TYPE 0xFF</span></div> -<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div> -<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="gb_8h.html#aee435a3a0dde3dbd7b6112dbb456cde8"> 292</a></span>&#160;<span class="preprocessor">#define CGB_TYPE 0x11</span></div> -<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div> -<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> <a class="code" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a>;</div> +<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;</div> +<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ac269dc3e0ff2d5dc7c0c0fd90e9b1608">mode</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> m) NONBANKED;</div> +<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;</div> +<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a"> 278</a></span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a60baa1622feae07982562dcbc243751e">get_mode</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(<a class="code" href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a>, <a class="code" href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a>);</div> +<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;</div> +<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;extern <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#adbc4b02721d3ab48caf53e0228fd3eb5">_cpu</a>;</div> +<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;</div> +<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="gb_8h.html#a0031c07799247a6d6c1bfa3decac79d0"> 285</a></span>&#160;<span class="preprocessor">#define DMG_TYPE 0x01</span></div> +<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div> +<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="gb_8h.html#ae996ed4fd8bb6b308b9c8708a91df06b"> 288</a></span>&#160;<span class="preprocessor">#define MGB_TYPE 0xFF</span></div> +<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div> +<div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="gb_8h.html#aee435a3a0dde3dbd7b6112dbb456cde8"> 291</a></span>&#160;<span class="preprocessor">#define CGB_TYPE 0x11</span></div> +<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div> +<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> <a class="code" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a>;</div> +<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;</div> <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div> -<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;</div> -<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1259cf3a23fd2166a9d1a2e93942e30e">send_byte</a>(<span class="keywordtype">void</span>);</div> -<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;</div> -<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a34d6500215984e8f9a986523a2f2dadd">receive_byte</a>(<span class="keywordtype">void</span>);</div> -<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;</div> -<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a83d08d752bb2f2406084a9afa7988b98">_io_status</a>;</div> -<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;</div> -<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a7783f5ed79717411d55f62b8ef3f4592">_io_in</a>;</div> -<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div> -<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a29d93722542506d0acb9b23c85ff1c5e">_io_out</a>;</div> -<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;</div> -<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;<span class="comment">/* Status codes */</span></div> -<div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="gb_8h.html#a268cc6c704e16f3fa02dd1cf0e17070a"> 335</a></span>&#160;<span class="preprocessor">#define IO_IDLE 0x00U</span></div> -<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;</div> -<div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="gb_8h.html#ab69a3f7cd2c6b5eb4f518aefee099007"> 337</a></span>&#160;<span class="preprocessor">#define IO_SENDING 0x01U</span></div> -<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;</div> -<div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="gb_8h.html#aee03efddee0f2f6fbcaec789301aaa9b"> 339</a></span>&#160;<span class="preprocessor">#define IO_RECEIVING 0x02U</span></div> -<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;</div> -<div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="gb_8h.html#a5d4c9c7b61a0326a939f9109f96d7423"> 341</a></span>&#160;<span class="preprocessor">#define IO_ERROR 0x04U</span></div> +<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div> +<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1259cf3a23fd2166a9d1a2e93942e30e">send_byte</a>(<span class="keywordtype">void</span>);</div> +<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;</div> +<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a34d6500215984e8f9a986523a2f2dadd">receive_byte</a>(<span class="keywordtype">void</span>);</div> +<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div> +<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a83d08d752bb2f2406084a9afa7988b98">_io_status</a>;</div> +<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;</div> +<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a7783f5ed79717411d55f62b8ef3f4592">_io_in</a>;</div> +<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div> +<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a29d93722542506d0acb9b23c85ff1c5e">_io_out</a>;</div> +<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div> +<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="comment">/* Status codes */</span></div> +<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="gb_8h.html#a268cc6c704e16f3fa02dd1cf0e17070a"> 334</a></span>&#160;<span class="preprocessor">#define IO_IDLE 0x00U</span></div> +<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div> +<div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="gb_8h.html#ab69a3f7cd2c6b5eb4f518aefee099007"> 336</a></span>&#160;<span class="preprocessor">#define IO_SENDING 0x01U</span></div> +<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;</div> +<div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="gb_8h.html#aee03efddee0f2f6fbcaec789301aaa9b"> 338</a></span>&#160;<span class="preprocessor">#define IO_RECEIVING 0x02U</span></div> +<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div> +<div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="gb_8h.html#a5d4c9c7b61a0326a939f9109f96d7423"> 340</a></span>&#160;<span class="preprocessor">#define IO_ERROR 0x04U</span></div> +<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div> <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;</div> -<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;</div> -<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="comment">/* Multiple banks */</span></div> -<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div> -<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a"> 366</a></span>&#160;<a class="code" href="hardware_8h.html#a0b42e4dadd74c927e8b801b4f42c0e44">__REG</a> <a class="code" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a>;</div> -<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;</div> -<div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="gb_8h.html#a19558f5bbc9fea767f945001ae9cd13f"> 371</a></span>&#160;<span class="preprocessor">#define SWITCH_ROM_MBC1(b) \</span></div> -<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="preprocessor"> _current_bank = (b), *(unsigned char *)0x2000 = (b)</span></div> -<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div> -<div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="gb_8h.html#a38ea3e4dfe02b8eae70df27f39d4a951"> 374</a></span>&#160;<span class="preprocessor">#define SWITCH_RAM_MBC1(b) \</span></div> -<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;<span class="preprocessor"> *(unsigned char *)0x4000 = (b)</span></div> -<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div> -<div class="line"><a name="l00377"></a><span class="lineno"><a class="line" href="gb_8h.html#ae202f64307ec00f6970ef9225e54646c"> 377</a></span>&#160;<span class="preprocessor">#define ENABLE_RAM_MBC1 \</span></div> -<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x0A</span></div> -<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;</div> -<div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="gb_8h.html#a177fadce938422926b186a8e42575d1d"> 380</a></span>&#160;<span class="preprocessor">#define DISABLE_RAM_MBC1 \</span></div> -<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x00</span></div> -<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div> -<div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="gb_8h.html#a0c689c5a814f1c347c4d98f28ed6c7d6"> 383</a></span>&#160;<span class="preprocessor">#define SWITCH_16_8_MODE_MBC1 \</span></div> -<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;<span class="preprocessor"> *(unsigned char *)0x6000 = 0x00</span></div> -<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div> -<div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="gb_8h.html#aa5d64e386a00b373f22ffdc5a152c7ba"> 386</a></span>&#160;<span class="preprocessor">#define SWITCH_4_32_MODE_MBC1 \</span></div> -<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="preprocessor"> *(unsigned char *)0x6000 = 0x01</span></div> -<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div> -<div class="line"><a name="l00393"></a><span class="lineno"><a class="line" href="gb_8h.html#a92d040284342702026eb19dab59b586e"> 393</a></span>&#160;<span class="preprocessor">#define SWITCH_ROM_MBC5(b) \</span></div> -<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<span class="preprocessor"> _current_bank = (b), \</span></div> -<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="preprocessor"> *(unsigned char *)0x3000 = 0, \</span></div> +<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div> +<div class="line"><a name="l00348"></a><span class="lineno"><a class="line" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a"> 348</a></span>&#160;<a class="code" href="hardware_8h.html#a0b42e4dadd74c927e8b801b4f42c0e44">__REG</a> <a class="code" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a>;</div> +<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;</div> +<div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="gb_8h.html#a19558f5bbc9fea767f945001ae9cd13f"> 353</a></span>&#160;<span class="preprocessor">#define SWITCH_ROM_MBC1(b) \</span></div> +<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="preprocessor"> _current_bank = (b), *(unsigned char *)0x2000 = (b)</span></div> +<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div> +<div class="line"><a name="l00359"></a><span class="lineno"><a class="line" href="gb_8h.html#a38ea3e4dfe02b8eae70df27f39d4a951"> 359</a></span>&#160;<span class="preprocessor">#define SWITCH_RAM_MBC1(b) \</span></div> +<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="preprocessor"> *(unsigned char *)0x4000 = (b)</span></div> +<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div> +<div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="gb_8h.html#ae202f64307ec00f6970ef9225e54646c"> 364</a></span>&#160;<span class="preprocessor">#define ENABLE_RAM_MBC1 \</span></div> +<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x0A</span></div> +<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;</div> +<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="gb_8h.html#a177fadce938422926b186a8e42575d1d"> 369</a></span>&#160;<span class="preprocessor">#define DISABLE_RAM_MBC1 \</span></div> +<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x00</span></div> +<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;</div> +<div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="gb_8h.html#a0c689c5a814f1c347c4d98f28ed6c7d6"> 372</a></span>&#160;<span class="preprocessor">#define SWITCH_16_8_MODE_MBC1 \</span></div> +<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="preprocessor"> *(unsigned char *)0x6000 = 0x00</span></div> +<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div> +<div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="gb_8h.html#aa5d64e386a00b373f22ffdc5a152c7ba"> 375</a></span>&#160;<span class="preprocessor">#define SWITCH_4_32_MODE_MBC1 \</span></div> +<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;<span class="preprocessor"> *(unsigned char *)0x6000 = 0x01</span></div> +<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div> +<div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="gb_8h.html#a92d040284342702026eb19dab59b586e"> 383</a></span>&#160;<span class="preprocessor">#define SWITCH_ROM_MBC5(b) \</span></div> +<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;<span class="preprocessor"> _current_bank = (b), \</span></div> +<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;<span class="preprocessor"> *(unsigned char *)0x3000 = 0, \</span></div> +<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;<span class="preprocessor"> *(unsigned char *)0x2000 = (b)</span></div> +<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div> +<div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="gb_8h.html#a6c15ebc660abd3a978137493ab63ffe9"> 394</a></span>&#160;<span class="preprocessor">#define SWITCH_ROM_MBC5_8M(b) \</span></div> +<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="preprocessor"> *(unsigned char *)0x3000 = ((UINT16)(b) &gt;&gt; 8), \</span></div> <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;<span class="preprocessor"> *(unsigned char *)0x2000 = (b)</span></div> <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div> -<div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="gb_8h.html#a6c15ebc660abd3a978137493ab63ffe9"> 403</a></span>&#160;<span class="preprocessor">#define SWITCH_ROM_MBC5_8M(b) \</span></div> -<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;<span class="preprocessor"> *(unsigned char *)0x3000 = ((UINT16)(b) &gt;&gt; 8), \</span></div> -<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="preprocessor"> *(unsigned char *)0x2000 = (b)</span></div> -<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div> -<div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="gb_8h.html#a361d5055a7ae880fc1c9d6e0d1164fd6"> 407</a></span>&#160;<span class="preprocessor">#define SWITCH_RAM_MBC5(b) \</span></div> -<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;<span class="preprocessor"> *(unsigned char *)0x4000 = (b)</span></div> -<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;</div> -<div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="gb_8h.html#a3f033f00c8d781637f9a665b06750937"> 410</a></span>&#160;<span class="preprocessor">#define ENABLE_RAM_MBC5 \</span></div> -<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x0A</span></div> -<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div> -<div class="line"><a name="l00413"></a><span class="lineno"><a class="line" href="gb_8h.html#a60191cdfa50ed9b88515f181747eaba2"> 413</a></span>&#160;<span class="preprocessor">#define DISABLE_RAM_MBC5 \</span></div> -<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x00</span></div> +<div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="gb_8h.html#a361d5055a7ae880fc1c9d6e0d1164fd6"> 401</a></span>&#160;<span class="preprocessor">#define SWITCH_RAM_MBC5(b) \</span></div> +<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="preprocessor"> *(unsigned char *)0x4000 = (b)</span></div> +<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;</div> +<div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="gb_8h.html#a3f033f00c8d781637f9a665b06750937"> 406</a></span>&#160;<span class="preprocessor">#define ENABLE_RAM_MBC5 \</span></div> +<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x0A</span></div> +<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;</div> +<div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="gb_8h.html#a60191cdfa50ed9b88515f181747eaba2"> 411</a></span>&#160;<span class="preprocessor">#define DISABLE_RAM_MBC5 \</span></div> +<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="preprocessor"> *(unsigned char *)0x0000 = 0x00</span></div> +<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div> +<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div> <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;</div> -<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div> -<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#acd271e2c976761568d2f95900a213212">delay</a>(<a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> <a class="code" href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#acd271e2c976761568d2f95900a213212">delay</a>(<a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> <a class="code" href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a>) <a class="code" href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a>;</div> +<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div> +<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div> <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div> -<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;</div> -<div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff"> 431</a></span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a81654fb8ed020754dfaf20e4a98a7784">joypad</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(b, c, <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>, <a class="code" href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff">l</a>);</div> -<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div> -<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a393072c2b36f11306510c69aa6efea0f">waitpad</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> mask) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div> -<div class="line"><a name="l00452"></a><span class="lineno"><a class="line" href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79"> 452</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae1f1358e53ec1b153f071d1e16d8ab0e">waitpadup</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(a, b, c, <a class="code" href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a>, <a class="code" href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79">e</a>, h, l);</div> -<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;</div> -<div class="line"><a name="l00459"></a><span class="lineno"><a class="line" href="structjoypads__t.html"> 459</a></span>&#160;typedef struct {</div> -<div class="line"><a name="l00460"></a><span class="lineno"><a class="line" href="structjoypads__t.html#a3e384ae17e19fdb55eea5fc9c9c7201a"> 460</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="structjoypads__t.html#a3e384ae17e19fdb55eea5fc9c9c7201a">npads</a>;</div> -<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keyword">union </span>{</div> -<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keyword">struct </span>{</div> -<div class="line"><a name="l00463"></a><span class="lineno"><a class="line" href="structjoypads__t.html#a9f293bf587af55f5c11b29617ca5547b"> 463</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> joy0, joy1, joy2, <a class="code" href="structjoypads__t.html#a9f293bf587af55f5c11b29617ca5547b">joy3</a>;</div> -<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; };</div> -<div class="line"><a name="l00465"></a><span class="lineno"><a class="line" href="structjoypads__t.html#af82f67ee80b1877732dc10cc23b5982f"> 465</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> joypads[4];</div> -<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; };</div> -<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;} <a class="code" href="structjoypads__t.html">joypads_t</a>;</div> -<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div> -<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a69553962c85a34c7c8f7c3edbcc41688">joypad_init</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> npads, <a class="code" href="structjoypads__t.html">joypads_t</a> * joypads);</div> -<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;</div> -<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a5782338a9936b18e999e322be80c2995">joypad_ex</a>(<a class="code" href="structjoypads__t.html">joypads_t</a> * joypads);</div> +<div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff"> 429</a></span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a81654fb8ed020754dfaf20e4a98a7784">joypad</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(b, c, <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>, <a class="code" href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff">l</a>);</div> +<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div> +<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a393072c2b36f11306510c69aa6efea0f">waitpad</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> mask) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;</div> +<div class="line"><a name="l00450"></a><span class="lineno"><a class="line" href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79"> 450</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae1f1358e53ec1b153f071d1e16d8ab0e">waitpadup</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(a, b, c, <a class="code" href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a>, <a class="code" href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79">e</a>, h, l);</div> +<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;</div> +<div class="line"><a name="l00457"></a><span class="lineno"><a class="line" href="structjoypads__t.html"> 457</a></span>&#160;typedef struct {</div> +<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="structjoypads__t.html#a3e384ae17e19fdb55eea5fc9c9c7201a"> 458</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="structjoypads__t.html#a3e384ae17e19fdb55eea5fc9c9c7201a">npads</a>;</div> +<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keyword">union </span>{</div> +<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keyword">struct </span>{</div> +<div class="line"><a name="l00461"></a><span class="lineno"><a class="line" href="structjoypads__t.html#a9f293bf587af55f5c11b29617ca5547b"> 461</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> joy0, joy1, joy2, <a class="code" href="structjoypads__t.html#a9f293bf587af55f5c11b29617ca5547b">joy3</a>;</div> +<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; };</div> +<div class="line"><a name="l00463"></a><span class="lineno"><a class="line" href="structjoypads__t.html#af82f67ee80b1877732dc10cc23b5982f"> 463</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> joypads[4];</div> +<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; };</div> +<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;} <a class="code" href="structjoypads__t.html">joypads_t</a>;</div> +<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;</div> +<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a69553962c85a34c7c8f7c3edbcc41688">joypad_init</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> npads, <a class="code" href="structjoypads__t.html">joypads_t</a> * joypads);</div> +<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;</div> +<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a5782338a9936b18e999e322be80c2995">joypad_ex</a>(<a class="code" href="structjoypads__t.html">joypads_t</a> * joypads);</div> +<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;</div> +<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div> <div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div> -<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div> -<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a97039b6477537c37f83e74561de78c1b">enable_interrupts</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(a, b, c, <a class="code" href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a>, <a class="code" href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79">e</a>, <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>, <a class="code" href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff">l</a>);</div> -<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;</div> -<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ad8d2df514d3b5d3d08db3671f0d5af14">disable_interrupts</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(a, b, c, d, e, h, l);</div> -<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;</div> -<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae33fc234393ba50e8f30cbef403ded19">set_interrupts</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> flags) NONBANKED __preserves_regs(b, c, d, e);</div> -<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div> -<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#af4a728ba51de424a0bed286ac65d3242">reset</a>(<span class="keywordtype">void</span>) NONBANKED;</div> -<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;</div> -<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#adf6ef63efc4bb4950428015c623bca14">wait_vbl_done</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(b, c, d, e, h, l);</div> -<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;</div> -<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aed072359b42854fffae4cd29c1f34ea1">display_off</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(b, c, d, e, h, l);</div> +<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a97039b6477537c37f83e74561de78c1b">enable_interrupts</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(a, b, c, <a class="code" href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a>, <a class="code" href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79">e</a>, <a class="code" href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a>, <a class="code" href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff">l</a>);</div> +<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div> +<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ad8d2df514d3b5d3d08db3671f0d5af14">disable_interrupts</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(a, b, c, d, e, h, l);</div> +<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;</div> +<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae33fc234393ba50e8f30cbef403ded19">set_interrupts</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> flags) NONBANKED __preserves_regs(b, c, d, e);</div> +<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;</div> +<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#af4a728ba51de424a0bed286ac65d3242">reset</a>(<span class="keywordtype">void</span>) NONBANKED;</div> +<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;</div> +<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#adf6ef63efc4bb4950428015c623bca14">wait_vbl_done</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(b, c, d, e, h, l);</div> +<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;</div> +<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aed072359b42854fffae4cd29c1f34ea1">display_off</a>(<span class="keywordtype">void</span>) NONBANKED __preserves_regs(b, c, d, e, h, l);</div> +<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;</div> +<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div> <div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;</div> -<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;</div> -<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div> -<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#afd45c10f4566ca284cdab4044c5645b3">hiramcpy</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> dst,</div> -<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; const <span class="keywordtype">void</span> *src,</div> -<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> n) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div> -<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;</div> -<div class="line"><a name="l00553"></a><span class="lineno"><a class="line" href="gb_8h.html#a5ae6b05b3e1559c97f0d1b2daaaa0ee4"> 553</a></span>&#160;<span class="preprocessor">#define DISPLAY_ON \</span></div> -<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;<span class="preprocessor"> LCDC_REG|=0x80U</span></div> -<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div> -<div class="line"><a name="l00559"></a><span class="lineno"><a class="line" href="gb_8h.html#ad2ec9831813c5e7069917aa4455af682"> 559</a></span>&#160;<span class="preprocessor">#define DISPLAY_OFF \</span></div> -<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;<span class="preprocessor"> display_off();</span></div> -<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div> -<div class="line"><a name="l00565"></a><span class="lineno"><a class="line" href="gb_8h.html#a8e3f36aa68ac036695816757f2a1322c"> 565</a></span>&#160;<span class="preprocessor">#define SHOW_BKG \</span></div> -<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="preprocessor"> LCDC_REG|=0x01U</span></div> -<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;</div> -<div class="line"><a name="l00571"></a><span class="lineno"><a class="line" href="gb_8h.html#a6d25f7c43b1cbbb48b95cda7ab2c3141"> 571</a></span>&#160;<span class="preprocessor">#define HIDE_BKG \</span></div> -<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xFEU</span></div> -<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;</div> -<div class="line"><a name="l00577"></a><span class="lineno"><a class="line" href="gb_8h.html#ab19da2ab719bb8897bc0843a84af28f8"> 577</a></span>&#160;<span class="preprocessor">#define SHOW_WIN \</span></div> -<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;<span class="preprocessor"> LCDC_REG|=0x20U</span></div> -<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;</div> -<div class="line"><a name="l00583"></a><span class="lineno"><a class="line" href="gb_8h.html#aedb6e32c42d4b1d25ad11adccd7100c3"> 583</a></span>&#160;<span class="preprocessor">#define HIDE_WIN \</span></div> -<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xDFU</span></div> -<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div> -<div class="line"><a name="l00589"></a><span class="lineno"><a class="line" href="gb_8h.html#a495bc9f405f916f02ad5d97e6e730134"> 589</a></span>&#160;<span class="preprocessor">#define SHOW_SPRITES \</span></div> -<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;<span class="preprocessor"> LCDC_REG|=0x02U</span></div> -<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;</div> -<div class="line"><a name="l00595"></a><span class="lineno"><a class="line" href="gb_8h.html#a69ef98aee664b8abd8d1a3d45f016dda"> 595</a></span>&#160;<span class="preprocessor">#define HIDE_SPRITES \</span></div> -<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xFDU</span></div> -<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;</div> -<div class="line"><a name="l00601"></a><span class="lineno"><a class="line" href="gb_8h.html#af91d252f07f4764996154820f970c101"> 601</a></span>&#160;<span class="preprocessor">#define SPRITES_8x16 \</span></div> -<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;<span class="preprocessor"> LCDC_REG|=0x04U</span></div> -<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;</div> -<div class="line"><a name="l00607"></a><span class="lineno"><a class="line" href="gb_8h.html#aa87bec0d134136fdb727f52cb773b792"> 607</a></span>&#160;<span class="preprocessor">#define SPRITES_8x8 \</span></div> -<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xFBU</span></div> -<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;</div> -<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;</div> -<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div> -<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#afaa7bb8881d67d51c646e35dfdb01d40">set_bkg_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div> -<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;</div> -<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a27ebc0d484fbf789f8a2172977a8d3b5">set_bkg_1bit_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;</div> -<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div> -<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2a236e483749590877d9207e9430e6ce">get_bkg_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div> -<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;</div> -<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#acf7527c3fce32df7b20d6cc4ec217f0b">set_bkg_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> -<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> -<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> -<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> -<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div> -<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;</div> -<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a93b0cf6697ab892eda6231d26bf17fc9">get_bkg_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> -<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> -<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> -<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> -<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;</div> -<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div> -<div class="line"><a name="l00759"></a><span class="lineno"><a class="line" href="gb_8h.html#a6c87db0b71ad17d5b242d18ed3df667b"> 759</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a6c87db0b71ad17d5b242d18ed3df667b">move_bkg</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y) {</div> -<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; <a class="code" href="hardware_8h.html#a86cc170585319565195f2c163250be1f">SCX_REG</a>=x, <a class="code" href="hardware_8h.html#a244b162cf13bbcb4fe842d7e298b39c2">SCY_REG</a>=y;</div> -<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160;}</div> -<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160;</div> -<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160;</div> -<div class="line"><a name="l00773"></a><span class="lineno"><a class="line" href="gb_8h.html#a2f00009081050122c11e6625ecaf0584"> 773</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2f00009081050122c11e6625ecaf0584">scroll_bkg</a>(<a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> y) {</div> -<div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; <a class="code" href="hardware_8h.html#a86cc170585319565195f2c163250be1f">SCX_REG</a>+=x, <a class="code" href="hardware_8h.html#a244b162cf13bbcb4fe842d7e298b39c2">SCY_REG</a>+=y;</div> -<div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;}</div> -<div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;</div> -<div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;</div> -<div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160;</div> -<div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a015094949fc631921e5e5219320eee87">set_win_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160;</div> -<div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160;</div> -<div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a8be00b00d16945fbe6c0f5f58a36b76d">set_win_1bit_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;</div> -<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;</div> -<div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae2a527ffae5cad8083726470c3f30475">get_win_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160;</div> -<div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;</div> -<div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aaf9d0b393d38385168d207f96acd800c">set_win_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> -<div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> -<div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> -<div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> -<div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160;</div> -<div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160;</div> -<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aebd45a328b90ddda0154d5fb41b8bbc1">get_win_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> -<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> -<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> -<div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> -<div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160;</div> -<div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160;</div> -<div class="line"><a name="l00892"></a><span class="lineno"><a class="line" href="gb_8h.html#a2faff6aef9e272b15a1912a4f911e385"> 892</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2faff6aef9e272b15a1912a4f911e385">move_win</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y) {</div> -<div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <a class="code" href="hardware_8h.html#a310aa43fbee2fd6b6b419df48acce1e0">WX_REG</a>=x, <a class="code" href="hardware_8h.html#a1c8d52607616ef37da335447e4cbe850">WY_REG</a>=y;</div> -<div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160;}</div> -<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160;</div> -<div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div> -<div class="line"><a name="l00906"></a><span class="lineno"><a class="line" href="gb_8h.html#a7aa0d057d5eeb3e24e61460056750d05"> 906</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a7aa0d057d5eeb3e24e61460056750d05">scroll_win</a>(<a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> y) {</div> -<div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; <a class="code" href="hardware_8h.html#a310aa43fbee2fd6b6b419df48acce1e0">WX_REG</a>+=x, <a class="code" href="hardware_8h.html#a1c8d52607616ef37da335447e4cbe850">WY_REG</a>+=y;</div> -<div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160;}</div> -<div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160;</div> -<div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160;</div> -<div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160;</div> -<div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a65971730b7a58df99fc43be0162226ac">set_sprite_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160;</div> -<div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160;</div> -<div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#adc3c0a38af3e27723c7607b2c923d3d6">set_sprite_1bit_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;</div> -<div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;</div> -<div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a5ce794b7f0c3361c79c887b500fcaf19">get_sprite_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> -<div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> -<div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160;</div> -<div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160;</div> -<div class="line"><a name="l00976"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html"> 976</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> {</div> -<div class="line"><a name="l00977"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5"> 977</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>; <span class="comment">//&lt; X, Y Coordinates of the sprite on screen</span></div> -<div class="line"><a name="l00978"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10"> 978</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>; <span class="comment">//&lt; Sprite tile number</span></div> -<div class="line"><a name="l00979"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19"> 979</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>; <span class="comment">//&lt; OAM Property Flags</span></div> -<div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160;} <a class="code" href="gb_8h.html#a77225717d67c57fd1dc7fdf27fa2f4f4">OAM_item_t</a>;</div> +<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#afd45c10f4566ca284cdab4044c5645b3">hiramcpy</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> dst,</div> +<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; const <span class="keywordtype">void</span> *src,</div> +<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> n) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;</div> +<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;</div> +<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;</div> +<div class="line"><a name="l00550"></a><span class="lineno"><a class="line" href="gb_8h.html#a5ae6b05b3e1559c97f0d1b2daaaa0ee4"> 550</a></span>&#160;<span class="preprocessor">#define DISPLAY_ON \</span></div> +<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;<span class="preprocessor"> LCDC_REG|=0x80U</span></div> +<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;</div> +<div class="line"><a name="l00556"></a><span class="lineno"><a class="line" href="gb_8h.html#ad2ec9831813c5e7069917aa4455af682"> 556</a></span>&#160;<span class="preprocessor">#define DISPLAY_OFF \</span></div> +<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;<span class="preprocessor"> display_off();</span></div> +<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div> +<div class="line"><a name="l00562"></a><span class="lineno"><a class="line" href="gb_8h.html#a8e3f36aa68ac036695816757f2a1322c"> 562</a></span>&#160;<span class="preprocessor">#define SHOW_BKG \</span></div> +<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="preprocessor"> LCDC_REG|=0x01U</span></div> +<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;</div> +<div class="line"><a name="l00568"></a><span class="lineno"><a class="line" href="gb_8h.html#a6d25f7c43b1cbbb48b95cda7ab2c3141"> 568</a></span>&#160;<span class="preprocessor">#define HIDE_BKG \</span></div> +<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xFEU</span></div> +<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div> +<div class="line"><a name="l00574"></a><span class="lineno"><a class="line" href="gb_8h.html#ab19da2ab719bb8897bc0843a84af28f8"> 574</a></span>&#160;<span class="preprocessor">#define SHOW_WIN \</span></div> +<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="preprocessor"> LCDC_REG|=0x20U</span></div> +<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div> +<div class="line"><a name="l00580"></a><span class="lineno"><a class="line" href="gb_8h.html#aedb6e32c42d4b1d25ad11adccd7100c3"> 580</a></span>&#160;<span class="preprocessor">#define HIDE_WIN \</span></div> +<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xDFU</span></div> +<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;</div> +<div class="line"><a name="l00586"></a><span class="lineno"><a class="line" href="gb_8h.html#a495bc9f405f916f02ad5d97e6e730134"> 586</a></span>&#160;<span class="preprocessor">#define SHOW_SPRITES \</span></div> +<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;<span class="preprocessor"> LCDC_REG|=0x02U</span></div> +<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;</div> +<div class="line"><a name="l00592"></a><span class="lineno"><a class="line" href="gb_8h.html#a69ef98aee664b8abd8d1a3d45f016dda"> 592</a></span>&#160;<span class="preprocessor">#define HIDE_SPRITES \</span></div> +<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xFDU</span></div> +<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;</div> +<div class="line"><a name="l00598"></a><span class="lineno"><a class="line" href="gb_8h.html#af91d252f07f4764996154820f970c101"> 598</a></span>&#160;<span class="preprocessor">#define SPRITES_8x16 \</span></div> +<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;<span class="preprocessor"> LCDC_REG|=0x04U</span></div> +<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;</div> +<div class="line"><a name="l00604"></a><span class="lineno"><a class="line" href="gb_8h.html#aa87bec0d134136fdb727f52cb773b792"> 604</a></span>&#160;<span class="preprocessor">#define SPRITES_8x8 \</span></div> +<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;<span class="preprocessor"> LCDC_REG&amp;=0xFBU</span></div> +<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;</div> +<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div> +<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;</div> +<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#afaa7bb8881d67d51c646e35dfdb01d40">set_bkg_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div> +<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;</div> +<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a27ebc0d484fbf789f8a2172977a8d3b5">set_bkg_1bit_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;</div> +<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;</div> +<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2a236e483749590877d9207e9430e6ce">get_bkg_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;</div> +<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;</div> +<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#acf7527c3fce32df7b20d6cc4ec217f0b">set_bkg_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> +<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> +<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> +<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> +<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;</div> +<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;</div> +<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a93b0cf6697ab892eda6231d26bf17fc9">get_bkg_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> +<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> +<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> +<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> +<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;</div> +<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;</div> +<div class="line"><a name="l00755"></a><span class="lineno"><a class="line" href="gb_8h.html#a6c87db0b71ad17d5b242d18ed3df667b"> 755</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a6c87db0b71ad17d5b242d18ed3df667b">move_bkg</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y) {</div> +<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <a class="code" href="hardware_8h.html#a86cc170585319565195f2c163250be1f">SCX_REG</a>=x, <a class="code" href="hardware_8h.html#a244b162cf13bbcb4fe842d7e298b39c2">SCY_REG</a>=y;</div> +<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160;}</div> +<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;</div> +<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;</div> +<div class="line"><a name="l00769"></a><span class="lineno"><a class="line" href="gb_8h.html#a2f00009081050122c11e6625ecaf0584"> 769</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2f00009081050122c11e6625ecaf0584">scroll_bkg</a>(<a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> y) {</div> +<div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <a class="code" href="hardware_8h.html#a86cc170585319565195f2c163250be1f">SCX_REG</a>+=x, <a class="code" href="hardware_8h.html#a244b162cf13bbcb4fe842d7e298b39c2">SCY_REG</a>+=y;</div> +<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;}</div> +<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div> +<div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;</div> +<div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;</div> +<div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a015094949fc631921e5e5219320eee87">set_win_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div> +<div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160;</div> +<div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a8be00b00d16945fbe6c0f5f58a36b76d">set_win_1bit_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;</div> +<div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160;</div> +<div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#ae2a527ffae5cad8083726470c3f30475">get_win_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;</div> +<div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160;</div> +<div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aaf9d0b393d38385168d207f96acd800c">set_win_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> +<div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> +<div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> +<div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> +<div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160;</div> +<div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160;</div> +<div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aebd45a328b90ddda0154d5fb41b8bbc1">get_win_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x,</div> +<div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y,</div> +<div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> +<div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> +<div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;</div> +<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160;</div> +<div class="line"><a name="l00887"></a><span class="lineno"><a class="line" href="gb_8h.html#a2faff6aef9e272b15a1912a4f911e385"> 887</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2faff6aef9e272b15a1912a4f911e385">move_win</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> y) {</div> +<div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <a class="code" href="hardware_8h.html#a310aa43fbee2fd6b6b419df48acce1e0">WX_REG</a>=x, <a class="code" href="hardware_8h.html#a1c8d52607616ef37da335447e4cbe850">WY_REG</a>=y;</div> +<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160;}</div> +<div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160;</div> +<div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160;</div> +<div class="line"><a name="l00901"></a><span class="lineno"><a class="line" href="gb_8h.html#a7aa0d057d5eeb3e24e61460056750d05"> 901</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a7aa0d057d5eeb3e24e61460056750d05">scroll_win</a>(<a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> x, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> y) {</div> +<div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <a class="code" href="hardware_8h.html#a310aa43fbee2fd6b6b419df48acce1e0">WX_REG</a>+=x, <a class="code" href="hardware_8h.html#a1c8d52607616ef37da335447e4cbe850">WY_REG</a>+=y;</div> +<div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;}</div> +<div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;</div> +<div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160;</div> +<div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160;</div> +<div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a65971730b7a58df99fc43be0162226ac">set_sprite_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160;</div> +<div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160;</div> +<div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#adc3c0a38af3e27723c7607b2c923d3d6">set_sprite_1bit_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160;</div> +<div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160;</div> +<div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a5ce794b7f0c3361c79c887b500fcaf19">get_sprite_data</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> first_tile,</div> +<div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb_tiles,</div> +<div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160;</div> +<div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160;</div> +<div class="line"><a name="l00970"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html"> 970</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> {</div> +<div class="line"><a name="l00971"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5"> 971</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>; <span class="comment">//&lt; X, Y Coordinates of the sprite on screen</span></div> +<div class="line"><a name="l00972"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10"> 972</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>; <span class="comment">//&lt; Sprite tile number</span></div> +<div class="line"><a name="l00973"></a><span class="lineno"><a class="line" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19"> 973</a></span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>; <span class="comment">//&lt; OAM Property Flags</span></div> +<div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160;} <a class="code" href="gb_8h.html#a77225717d67c57fd1dc7fdf27fa2f4f4">OAM_item_t</a>;</div> +<div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160;</div> +<div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160;</div> +<div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <span class="keyword">struct </span><a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[];</div> +<div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160;</div> <div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160;</div> -<div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160;</div> -<div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160;<span class="keyword">extern</span> <span class="keyword">volatile</span> <span class="keyword">struct </span><a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[];</div> -<div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160;</div> -<div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160;</div> -<div class="line"><a name="l01004"></a><span class="lineno"><a class="line" href="gb_8h.html#aae19a6086cc17811759b01a6e0a3cda4"> 1004</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aae19a6086cc17811759b01a6e0a3cda4">set_sprite_tile</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>) {</div> -<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>=<a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>;</div> -<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;}</div> -<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;</div> -<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;</div> -<div class="line"><a name="l01015"></a><span class="lineno"><a class="line" href="gb_8h.html#a54ffb7990fd37939bbe1a8b1e663e439"> 1015</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a54ffb7990fd37939bbe1a8b1e663e439">get_sprite_tile</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb) {</div> -<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; <span class="keywordflow">return</span> <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>;</div> -<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;}</div> -<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;</div> -<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;</div> -<div class="line"><a name="l01050"></a><span class="lineno"><a class="line" href="gb_8h.html#aea162a4e034d163bfd4f32a10cce4ba4"> 1050</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aea162a4e034d163bfd4f32a10cce4ba4">set_sprite_prop</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>){</div> -<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>=<a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>;</div> -<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;}</div> -<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;</div> -<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;</div> -<div class="line"><a name="l01060"></a><span class="lineno"><a class="line" href="gb_8h.html#a4b4feb80407d4f1e80579ed932821035"> 1060</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a4b4feb80407d4f1e80579ed932821035">get_sprite_prop</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb){</div> -<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; <span class="keywordflow">return</span> <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>;</div> -<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;}</div> -<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;</div> -<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160;</div> -<div class="line"><a name="l01077"></a><span class="lineno"><a class="line" href="gb_8h.html#aae11e78e2a24e467e72893056f319d51"> 1077</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aae11e78e2a24e467e72893056f319d51">move_sprite</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>) {</div> -<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; <a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> * itm = &amp;<a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb];</div> -<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>=<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>=<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>;</div> -<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;}</div> -<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;</div> -<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;</div> -<div class="line"><a name="l01093"></a><span class="lineno"><a class="line" href="gb_8h.html#abf6f5422a3c98cf440736f1491e1aa4c"> 1093</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#abf6f5422a3c98cf440736f1491e1aa4c">scroll_sprite</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>) {</div> -<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; <a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> * itm = &amp;<a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb];</div> -<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>+=<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>+=<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>;</div> -<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;}</div> -<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;</div> -<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;</div> -<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;</div> -<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a95775ef4f212ca897135ff6c8f823c0f">set_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr,</div> -<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data,</div> -<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> len) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;</div> -<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;</div> -<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a4a6bb50835ab2e9294bf17ea32a1e4cd">get_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data,</div> -<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr,</div> -<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> len) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;</div> -<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;</div> -<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a3c955cdccaeca3b016911594afc31aee">set_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>,</div> -<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>,</div> -<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> -<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> -<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr,</div> -<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;</div> -<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;</div> -<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a4c3d68eb3ff5ec0995541e691a6e8259">get_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>,</div> -<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>,</div> -<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> -<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> -<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles,</div> -<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160;</div> -<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160;</div> -<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160;</div> +<div class="line"><a name="l00998"></a><span class="lineno"><a class="line" href="gb_8h.html#aae19a6086cc17811759b01a6e0a3cda4"> 998</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aae19a6086cc17811759b01a6e0a3cda4">set_sprite_tile</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>) {</div> +<div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>=<a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>;</div> +<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;}</div> +<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div> +<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;</div> +<div class="line"><a name="l01009"></a><span class="lineno"><a class="line" href="gb_8h.html#a54ffb7990fd37939bbe1a8b1e663e439"> 1009</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a54ffb7990fd37939bbe1a8b1e663e439">get_sprite_tile</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb) {</div> +<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; <span class="keywordflow">return</span> <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>;</div> +<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;}</div> +<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;</div> +<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;</div> +<div class="line"><a name="l01044"></a><span class="lineno"><a class="line" href="gb_8h.html#aea162a4e034d163bfd4f32a10cce4ba4"> 1044</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aea162a4e034d163bfd4f32a10cce4ba4">set_sprite_prop</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>){</div> +<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>=<a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>;</div> +<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;}</div> +<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;</div> +<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;</div> +<div class="line"><a name="l01054"></a><span class="lineno"><a class="line" href="gb_8h.html#a4b4feb80407d4f1e80579ed932821035"> 1054</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="gb_8h.html#a4b4feb80407d4f1e80579ed932821035">get_sprite_prop</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb){</div> +<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; <span class="keywordflow">return</span> <a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb].<a class="code" href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">prop</a>;</div> +<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;}</div> +<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;</div> +<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;</div> +<div class="line"><a name="l01071"></a><span class="lineno"><a class="line" href="gb_8h.html#aae11e78e2a24e467e72893056f319d51"> 1071</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#aae11e78e2a24e467e72893056f319d51">move_sprite</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>) {</div> +<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; <a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> * itm = &amp;<a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb];</div> +<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>=<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>=<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>;</div> +<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;}</div> +<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;</div> +<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;</div> +<div class="line"><a name="l01087"></a><span class="lineno"><a class="line" href="gb_8h.html#abf6f5422a3c98cf440736f1491e1aa4c"> 1087</a></span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="gb_8h.html#abf6f5422a3c98cf440736f1491e1aa4c">scroll_sprite</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> nb, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>) {</div> +<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; <a class="code" href="struct_o_a_m__item__t.html">OAM_item_t</a> * itm = &amp;<a class="code" href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a>[nb];</div> +<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160; itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>+=<a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, itm-&gt;<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>+=<a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>;</div> +<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;}</div> +<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;</div> +<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;</div> +<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;</div> +<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;</div> +<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a95775ef4f212ca897135ff6c8f823c0f">set_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr,</div> +<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data,</div> +<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> len) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;</div> +<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;</div> +<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a4a6bb50835ab2e9294bf17ea32a1e4cd">get_data</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data,</div> +<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr,</div> +<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a> len) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;</div> +<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;</div> +<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a3c955cdccaeca3b016911594afc31aee">set_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>,</div> +<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>,</div> +<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> +<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> +<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr,</div> +<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;</div> +<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;</div> +<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a4c3d68eb3ff5ec0995541e691a6e8259">get_tiles</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>,</div> +<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>,</div> +<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w,</div> +<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h,</div> +<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *tiles,</div> +<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *vram_addr) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160;</div> +<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;</div> +<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;</div> +<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;</div> +<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2b4665e62849b60b579803b076661fe4">init_win</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> c) NONBANKED __preserves_regs(b, c);</div> <div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160;</div> -<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a2b4665e62849b60b579803b076661fe4">init_win</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> c) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a8520286e663067a3f6869db4ff1b74c3">init_bkg</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> c) NONBANKED __preserves_regs(b, c);</div> <div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;</div> -<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a8520286e663067a3f6869db4ff1b74c3">init_bkg</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> c) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;</div> -<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a8cf949b6e2654b6a8bd9e403a49ee4b3">vmemset</a> (<span class="keywordtype">void</span> *s, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> c, <span class="keywordtype">size_t</span> n) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;</div> -<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;<span class="comment">/* ************************************************************ */</span></div> -<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;</div> -<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1af6b32a1760e56fad768352db7c4530">fill_bkg_rect</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;</div> -<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1bfd48083278d723d0c49f487720cdd0">fill_win_rect</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>) NONBANKED __preserves_regs(b, c);</div> -<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;</div> -<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _GB_H */</span><span class="preprocessor"></span></div> +<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a8cf949b6e2654b6a8bd9e403a49ee4b3">vmemset</a> (<span class="keywordtype">void</span> *s, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> c, <span class="keywordtype">size_t</span> n) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;</div> +<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;</div> +<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;</div> +<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1af6b32a1760e56fad768352db7c4530">fill_bkg_rect</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;</div> +<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160;<span class="keywordtype">void</span> <a class="code" href="gb_8h.html#a1bfd48083278d723d0c49f487720cdd0">fill_win_rect</a>(<a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">x</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">y</a>, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> w, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> h, <a class="code" href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a> <a class="code" href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">tile</a>) NONBANKED __preserves_regs(b, c);</div> +<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;</div> +<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _GB_H */</span><span class="preprocessor"></span></div> <div class="ttc" id="gb_8h_html_a4c5db32641410613d785911bafd09ac7"><div class="ttname"><a href="gb_8h.html#a4c5db32641410613d785911bafd09ac7">remove_LCD</a></div><div class="ttdeci">void remove_LCD(int_handler h) NONBANKED</div></div> <div class="ttc" id="gb_8h_html_ae1f1358e53ec1b153f071d1e16d8ab0e"><div class="ttname"><a href="gb_8h.html#ae1f1358e53ec1b153f071d1e16d8ab0e">waitpadup</a></div><div class="ttdeci">void waitpadup(void) NONBANKED __preserves_regs(a</div></div> <div class="ttc" id="gb_8h_html_a1bfd48083278d723d0c49f487720cdd0"><div class="ttname"><a href="gb_8h.html#a1bfd48083278d723d0c49f487720cdd0">fill_win_rect</a></div><div class="ttdeci">void fill_win_rect(UINT8 x, UINT8 y, UINT8 w, UINT8 h, UINT8 tile) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="structjoypads__t_html"><div class="ttname"><a href="structjoypads__t.html">joypads_t</a></div><div class="ttdef"><b>Definition:</b> gb.h:459</div></div> +<div class="ttc" id="structjoypads__t_html"><div class="ttname"><a href="structjoypads__t.html">joypads_t</a></div><div class="ttdef"><b>Definition:</b> gb.h:457</div></div> <div class="ttc" id="gb_8h_html_ae33fc234393ba50e8f30cbef403ded19"><div class="ttname"><a href="gb_8h.html#ae33fc234393ba50e8f30cbef403ded19">set_interrupts</a></div><div class="ttdeci">void set_interrupts(UINT8 flags) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_aebd45a328b90ddda0154d5fb41b8bbc1"><div class="ttname"><a href="gb_8h.html#aebd45a328b90ddda0154d5fb41b8bbc1">get_win_tiles</a></div><div class="ttdeci">void get_win_tiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, unsigned char *tiles) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="gb_8h_html_a4b4feb80407d4f1e80579ed932821035"><div class="ttname"><a href="gb_8h.html#a4b4feb80407d4f1e80579ed932821035">get_sprite_prop</a></div><div class="ttdeci">UINT8 get_sprite_prop(UINT8 nb)</div><div class="ttdef"><b>Definition:</b> gb.h:1060</div></div> +<div class="ttc" id="gb_8h_html_a4b4feb80407d4f1e80579ed932821035"><div class="ttname"><a href="gb_8h.html#a4b4feb80407d4f1e80579ed932821035">get_sprite_prop</a></div><div class="ttdeci">UINT8 get_sprite_prop(UINT8 nb)</div><div class="ttdef"><b>Definition:</b> gb.h:1054</div></div> <div class="ttc" id="gb_8h_html_a4a6bb50835ab2e9294bf17ea32a1e4cd"><div class="ttname"><a href="gb_8h.html#a4a6bb50835ab2e9294bf17ea32a1e4cd">get_data</a></div><div class="ttdeci">void get_data(unsigned char *data, unsigned char *vram_addr, UINT16 len) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_ac269dc3e0ff2d5dc7c0c0fd90e9b1608"><div class="ttname"><a href="gb_8h.html#ac269dc3e0ff2d5dc7c0c0fd90e9b1608">mode</a></div><div class="ttdeci">void mode(UINT8 m) NONBANKED</div></div> <div class="ttc" id="gb_8h_html_a024fc35ef0ad258d67c8f9dfb0751ee7"><div class="ttname"><a href="gb_8h.html#a024fc35ef0ad258d67c8f9dfb0751ee7">add_SIO</a></div><div class="ttdeci">void add_SIO(int_handler h) NONBANKED</div></div> -<div class="ttc" id="gb_8h_html_a6c87db0b71ad17d5b242d18ed3df667b"><div class="ttname"><a href="gb_8h.html#a6c87db0b71ad17d5b242d18ed3df667b">move_bkg</a></div><div class="ttdeci">void move_bkg(UINT8 x, UINT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:759</div></div> -<div class="ttc" id="gb_8h_html_aae11e78e2a24e467e72893056f319d51"><div class="ttname"><a href="gb_8h.html#aae11e78e2a24e467e72893056f319d51">move_sprite</a></div><div class="ttdeci">void move_sprite(UINT8 nb, UINT8 x, UINT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:1077</div></div> +<div class="ttc" id="gb_8h_html_a6c87db0b71ad17d5b242d18ed3df667b"><div class="ttname"><a href="gb_8h.html#a6c87db0b71ad17d5b242d18ed3df667b">move_bkg</a></div><div class="ttdeci">void move_bkg(UINT8 x, UINT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:755</div></div> +<div class="ttc" id="gb_8h_html_aae11e78e2a24e467e72893056f319d51"><div class="ttname"><a href="gb_8h.html#aae11e78e2a24e467e72893056f319d51">move_sprite</a></div><div class="ttdeci">void move_sprite(UINT8 nb, UINT8 x, UINT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:1071</div></div> <div class="ttc" id="gb_8h_html_a6cc76ea12ac894c4947f85fa1999117c"><div class="ttname"><a href="gb_8h.html#a6cc76ea12ac894c4947f85fa1999117c">add_LCD</a></div><div class="ttdeci">void add_LCD(int_handler h) NONBANKED</div></div> <div class="ttc" id="hardware_8h_html_a0b42e4dadd74c927e8b801b4f42c0e44"><div class="ttname"><a href="hardware_8h.html#a0b42e4dadd74c927e8b801b4f42c0e44">__REG</a></div><div class="ttdeci">#define __REG</div><div class="ttdef"><b>Definition:</b> hardware.h:10</div></div> <div class="ttc" id="gb_8h_html_af4a728ba51de424a0bed286ac65d3242"><div class="ttname"><a href="gb_8h.html#af4a728ba51de424a0bed286ac65d3242">reset</a></div><div class="ttdeci">void reset(void) NONBANKED</div></div> <div class="ttc" id="gb_8h_html_a320fd91d5aa12ba9d1435ab908420998"><div class="ttname"><a href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a></div><div class="ttdeci">volatile UINT16 sys_time</div></div> <div class="ttc" id="gb_8h_html_a93b0cf6697ab892eda6231d26bf17fc9"><div class="ttname"><a href="gb_8h.html#a93b0cf6697ab892eda6231d26bf17fc9">get_bkg_tiles</a></div><div class="ttdeci">void get_bkg_tiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, unsigned char *tiles) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_afaa7bb8881d67d51c646e35dfdb01d40"><div class="ttname"><a href="gb_8h.html#afaa7bb8881d67d51c646e35dfdb01d40">set_bkg_data</a></div><div class="ttdeci">void set_bkg_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="gb_8h_html_af79b920bcb642bba2e652874c4f7eeff"><div class="ttname"><a href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff">l</a></div><div class="ttdeci">UINT8 l</div><div class="ttdef"><b>Definition:</b> gb.h:431</div></div> +<div class="ttc" id="gb_8h_html_af79b920bcb642bba2e652874c4f7eeff"><div class="ttname"><a href="gb_8h.html#af79b920bcb642bba2e652874c4f7eeff">l</a></div><div class="ttdeci">UINT8 l</div><div class="ttdef"><b>Definition:</b> gb.h:429</div></div> <div class="ttc" id="gb_8h_html_aed072359b42854fffae4cd29c1f34ea1"><div class="ttname"><a href="gb_8h.html#aed072359b42854fffae4cd29c1f34ea1">display_off</a></div><div class="ttdeci">void display_off(void) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a1259cf3a23fd2166a9d1a2e93942e30e"><div class="ttname"><a href="gb_8h.html#a1259cf3a23fd2166a9d1a2e93942e30e">send_byte</a></div><div class="ttdeci">void send_byte(void)</div></div> -<div class="ttc" id="gb_8h_html_aae19a6086cc17811759b01a6e0a3cda4"><div class="ttname"><a href="gb_8h.html#aae19a6086cc17811759b01a6e0a3cda4">set_sprite_tile</a></div><div class="ttdeci">void set_sprite_tile(UINT8 nb, UINT8 tile)</div><div class="ttdef"><b>Definition:</b> gb.h:1004</div></div> +<div class="ttc" id="gb_8h_html_aae19a6086cc17811759b01a6e0a3cda4"><div class="ttname"><a href="gb_8h.html#aae19a6086cc17811759b01a6e0a3cda4">set_sprite_tile</a></div><div class="ttdeci">void set_sprite_tile(UINT8 nb, UINT8 tile)</div><div class="ttdef"><b>Definition:</b> gb.h:998</div></div> <div class="ttc" id="gb_8h_html_adc3c0a38af3e27723c7607b2c923d3d6"><div class="ttname"><a href="gb_8h.html#adc3c0a38af3e27723c7607b2c923d3d6">set_sprite_1bit_data</a></div><div class="ttdeci">void set_sprite_1bit_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="structjoypads__t_html_a9f293bf587af55f5c11b29617ca5547b"><div class="ttname"><a href="structjoypads__t.html#a9f293bf587af55f5c11b29617ca5547b">joypads_t::joy3</a></div><div class="ttdeci">UINT8 joy3</div><div class="ttdef"><b>Definition:</b> gb.h:463</div></div> +<div class="ttc" id="structjoypads__t_html_a9f293bf587af55f5c11b29617ca5547b"><div class="ttname"><a href="structjoypads__t.html#a9f293bf587af55f5c11b29617ca5547b">joypads_t::joy3</a></div><div class="ttdeci">UINT8 joy3</div><div class="ttdef"><b>Definition:</b> gb.h:461</div></div> <div class="ttc" id="gb_8h_html_a18857adb60025a986dbb44ee289b7a7c"><div class="ttname"><a href="gb_8h.html#a18857adb60025a986dbb44ee289b7a7c">remove_SIO</a></div><div class="ttdeci">void remove_SIO(int_handler h) NONBANKED</div></div> <div class="ttc" id="gb_8h_html_a3619f9cb1e3c92238a033ead79a0c551"><div class="ttname"><a href="gb_8h.html#a3619f9cb1e3c92238a033ead79a0c551">shadow_OAM</a></div><div class="ttdeci">volatile struct OAM_item_t shadow_OAM[]</div></div> <div class="ttc" id="gb_8h_html_a97039b6477537c37f83e74561de78c1b"><div class="ttname"><a href="gb_8h.html#a97039b6477537c37f83e74561de78c1b">enable_interrupts</a></div><div class="ttdeci">void enable_interrupts(void) NONBANKED __preserves_regs(a</div></div> <div class="ttc" id="gb_8h_html_a77225717d67c57fd1dc7fdf27fa2f4f4"><div class="ttname"><a href="gb_8h.html#a77225717d67c57fd1dc7fdf27fa2f4f4">OAM_item_t</a></div><div class="ttdeci">struct OAM_item_t OAM_item_t</div></div> <div class="ttc" id="asm_2gbz80_2types_8h_html_a805c2c164bdd38d72a30c46e84fb568b"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#a805c2c164bdd38d72a30c46e84fb568b">UINT16</a></div><div class="ttdeci">unsigned int UINT16</div><div class="ttdef"><b>Definition:</b> types.h:27</div></div> -<div class="ttc" id="struct_o_a_m__item__t_html_abe231d7583c7769e481c66ca8c6e8a10"><div class="ttname"><a href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">OAM_item_t::tile</a></div><div class="ttdeci">UINT8 tile</div><div class="ttdef"><b>Definition:</b> gb.h:978</div></div> +<div class="ttc" id="struct_o_a_m__item__t_html_abe231d7583c7769e481c66ca8c6e8a10"><div class="ttname"><a href="struct_o_a_m__item__t.html#abe231d7583c7769e481c66ca8c6e8a10">OAM_item_t::tile</a></div><div class="ttdeci">UINT8 tile</div><div class="ttdef"><b>Definition:</b> gb.h:972</div></div> <div class="ttc" id="gb_8h_html_a3b3171b2e81e23b7d1bc402275a9ac71"><div class="ttname"><a href="gb_8h.html#a3b3171b2e81e23b7d1bc402275a9ac71">remove_VBL</a></div><div class="ttdeci">void remove_VBL(int_handler h) NONBANKED</div></div> -<div class="ttc" id="gb_8h_html_a7aa0d057d5eeb3e24e61460056750d05"><div class="ttname"><a href="gb_8h.html#a7aa0d057d5eeb3e24e61460056750d05">scroll_win</a></div><div class="ttdeci">void scroll_win(INT8 x, INT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:906</div></div> -<div class="ttc" id="struct_o_a_m__item__t_html_a03ef382139bd7cde2008109345e79f19"><div class="ttname"><a href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">OAM_item_t::prop</a></div><div class="ttdeci">UINT8 prop</div><div class="ttdef"><b>Definition:</b> gb.h:979</div></div> +<div class="ttc" id="gb_8h_html_a7aa0d057d5eeb3e24e61460056750d05"><div class="ttname"><a href="gb_8h.html#a7aa0d057d5eeb3e24e61460056750d05">scroll_win</a></div><div class="ttdeci">void scroll_win(INT8 x, INT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:901</div></div> +<div class="ttc" id="struct_o_a_m__item__t_html_a03ef382139bd7cde2008109345e79f19"><div class="ttname"><a href="struct_o_a_m__item__t.html#a03ef382139bd7cde2008109345e79f19">OAM_item_t::prop</a></div><div class="ttdeci">UINT8 prop</div><div class="ttdef"><b>Definition:</b> gb.h:973</div></div> <div class="ttc" id="gb_8h_html_ae2a527ffae5cad8083726470c3f30475"><div class="ttname"><a href="gb_8h.html#ae2a527ffae5cad8083726470c3f30475">get_win_data</a></div><div class="ttdeci">void get_win_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a4c3d68eb3ff5ec0995541e691a6e8259"><div class="ttname"><a href="gb_8h.html#a4c3d68eb3ff5ec0995541e691a6e8259">get_tiles</a></div><div class="ttdeci">void get_tiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, unsigned char *tiles, unsigned char *vram_addr) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a8be00b00d16945fbe6c0f5f58a36b76d"><div class="ttname"><a href="gb_8h.html#a8be00b00d16945fbe6c0f5f58a36b76d">set_win_1bit_data</a></div><div class="ttdeci">void set_win_1bit_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> @@ -587,9 +579,9 @@ $(document).ready(function(){initNavTree('gb_8h_source.html','');}); <div class="ttc" id="gb_8h_html_a29d93722542506d0acb9b23c85ff1c5e"><div class="ttname"><a href="gb_8h.html#a29d93722542506d0acb9b23c85ff1c5e">_io_out</a></div><div class="ttdeci">volatile UINT8 _io_out</div></div> <div class="ttc" id="gb_8h_html_a27ebc0d484fbf789f8a2172977a8d3b5"><div class="ttname"><a href="gb_8h.html#a27ebc0d484fbf789f8a2172977a8d3b5">set_bkg_1bit_data</a></div><div class="ttdeci">void set_bkg_1bit_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_af461d38864cfc5720f0d9f4d1113cf07"><div class="ttname"><a href="gb_8h.html#af461d38864cfc5720f0d9f4d1113cf07">wait_int_handler</a></div><div class="ttdeci">void wait_int_handler(void) NONBANKED</div></div> -<div class="ttc" id="struct_o_a_m__item__t_html_a7a0dc012815fd69a75347136e2a050dc"><div class="ttname"><a href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">OAM_item_t::x</a></div><div class="ttdeci">UINT8 x</div><div class="ttdef"><b>Definition:</b> gb.h:977</div></div> -<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:279</div></div> -<div class="ttc" id="gb_8h_html_a9508f919d9482d1d51534ccac212454d"><div class="ttname"><a href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a></div><div class="ttdeci">void(* int_handler)(void) NONBANKED</div><div class="ttdef"><b>Definition:</b> gb.h:121</div></div> +<div class="ttc" id="struct_o_a_m__item__t_html_a7a0dc012815fd69a75347136e2a050dc"><div class="ttname"><a href="struct_o_a_m__item__t.html#a7a0dc012815fd69a75347136e2a050dc">OAM_item_t::x</a></div><div class="ttdeci">UINT8 x</div><div class="ttdef"><b>Definition:</b> gb.h:971</div></div> +<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:278</div></div> +<div class="ttc" id="gb_8h_html_a9508f919d9482d1d51534ccac212454d"><div class="ttname"><a href="gb_8h.html#a9508f919d9482d1d51534ccac212454d">int_handler</a></div><div class="ttdeci">void(* int_handler)(void) NONBANKED</div><div class="ttdef"><b>Definition:</b> gb.h:120</div></div> <div class="ttc" id="gb_8h_html_a115eb30ec86f6af039a27918ffe4cf8c"><div class="ttname"><a href="gb_8h.html#a115eb30ec86f6af039a27918ffe4cf8c">nowait_int_handler</a></div><div class="ttdeci">void nowait_int_handler(void) NONBANKED</div></div> <div class="ttc" id="hardware_8h_html_a244b162cf13bbcb4fe842d7e298b39c2"><div class="ttname"><a href="hardware_8h.html#a244b162cf13bbcb4fe842d7e298b39c2">SCY_REG</a></div><div class="ttdeci">__REG SCY_REG</div><div class="ttdef"><b>Definition:</b> hardware.h:43</div></div> <div class="ttc" id="gb_8h_html_a411914e5dc5f28ce0afa7cf692a18af1"><div class="ttname"><a href="gb_8h.html#a411914e5dc5f28ce0afa7cf692a18af1">add_TIM</a></div><div class="ttdeci">void add_TIM(int_handler h) NONBANKED</div></div> @@ -598,43 +590,43 @@ $(document).ready(function(){initNavTree('gb_8h_source.html','');}); <div class="ttc" id="gb_8h_html_a8520286e663067a3f6869db4ff1b74c3"><div class="ttname"><a href="gb_8h.html#a8520286e663067a3f6869db4ff1b74c3">init_bkg</a></div><div class="ttdeci">void init_bkg(UINT8 c) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="hardware_8h_html"><div class="ttname"><a href="hardware_8h.html">hardware.h</a></div></div> <div class="ttc" id="gb_8h_html_a2412b9f97cb59acfcb2383eb9f204ddf"><div class="ttname"><a href="gb_8h.html#a2412b9f97cb59acfcb2383eb9f204ddf">add_VBL</a></div><div class="ttdeci">void add_VBL(int_handler h) NONBANKED</div></div> -<div class="ttc" id="gb_8h_html_a0a3d95ad0ab8ad213016101d2e9c3d3e"><div class="ttname"><a href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a></div><div class="ttdeci">void d</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> +<div class="ttc" id="gb_8h_html_a0a3d95ad0ab8ad213016101d2e9c3d3e"><div class="ttname"><a href="gb_8h.html#a0a3d95ad0ab8ad213016101d2e9c3d3e">d</a></div><div class="ttdeci">void d</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> <div class="ttc" id="gb_8h_html_adbc4b02721d3ab48caf53e0228fd3eb5"><div class="ttname"><a href="gb_8h.html#adbc4b02721d3ab48caf53e0228fd3eb5">_cpu</a></div><div class="ttdeci">UINT8 _cpu</div></div> <div class="ttc" id="gb_8h_html_a2a236e483749590877d9207e9430e6ce"><div class="ttname"><a href="gb_8h.html#a2a236e483749590877d9207e9430e6ce">get_bkg_data</a></div><div class="ttdeci">void get_bkg_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="gb_8h_html_aea162a4e034d163bfd4f32a10cce4ba4"><div class="ttname"><a href="gb_8h.html#aea162a4e034d163bfd4f32a10cce4ba4">set_sprite_prop</a></div><div class="ttdeci">void set_sprite_prop(UINT8 nb, UINT8 prop)</div><div class="ttdef"><b>Definition:</b> gb.h:1050</div></div> +<div class="ttc" id="gb_8h_html_aea162a4e034d163bfd4f32a10cce4ba4"><div class="ttname"><a href="gb_8h.html#aea162a4e034d163bfd4f32a10cce4ba4">set_sprite_prop</a></div><div class="ttdeci">void set_sprite_prop(UINT8 nb, UINT8 prop)</div><div class="ttdef"><b>Definition:</b> gb.h:1044</div></div> <div class="ttc" id="gb_8h_html_a2b4665e62849b60b579803b076661fe4"><div class="ttname"><a href="gb_8h.html#a2b4665e62849b60b579803b076661fe4">init_win</a></div><div class="ttdeci">void init_win(UINT8 c) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a393072c2b36f11306510c69aa6efea0f"><div class="ttname"><a href="gb_8h.html#a393072c2b36f11306510c69aa6efea0f">waitpad</a></div><div class="ttdeci">UINT8 waitpad(UINT8 mask) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="cgb_8h_html"><div class="ttname"><a href="cgb_8h.html">cgb.h</a></div></div> -<div class="ttc" id="struct_o_a_m__item__t_html"><div class="ttname"><a href="struct_o_a_m__item__t.html">OAM_item_t</a></div><div class="ttdef"><b>Definition:</b> gb.h:976</div></div> -<div class="ttc" id="structjoypads__t_html_a3e384ae17e19fdb55eea5fc9c9c7201a"><div class="ttname"><a href="structjoypads__t.html#a3e384ae17e19fdb55eea5fc9c9c7201a">joypads_t::npads</a></div><div class="ttdeci">UINT8 npads</div><div class="ttdef"><b>Definition:</b> gb.h:460</div></div> -<div class="ttc" id="gb_8h_html_a2f00009081050122c11e6625ecaf0584"><div class="ttname"><a href="gb_8h.html#a2f00009081050122c11e6625ecaf0584">scroll_bkg</a></div><div class="ttdeci">void scroll_bkg(INT8 x, INT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:773</div></div> +<div class="ttc" id="struct_o_a_m__item__t_html"><div class="ttname"><a href="struct_o_a_m__item__t.html">OAM_item_t</a></div><div class="ttdef"><b>Definition:</b> gb.h:970</div></div> +<div class="ttc" id="structjoypads__t_html_a3e384ae17e19fdb55eea5fc9c9c7201a"><div class="ttname"><a href="structjoypads__t.html#a3e384ae17e19fdb55eea5fc9c9c7201a">joypads_t::npads</a></div><div class="ttdeci">UINT8 npads</div><div class="ttdef"><b>Definition:</b> gb.h:458</div></div> +<div class="ttc" id="gb_8h_html_a2f00009081050122c11e6625ecaf0584"><div class="ttname"><a href="gb_8h.html#a2f00009081050122c11e6625ecaf0584">scroll_bkg</a></div><div class="ttdeci">void scroll_bkg(INT8 x, INT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:769</div></div> <div class="ttc" id="asm_2gbz80_2types_8h_html_ab27e9918b538ce9d8ca692479b375b6a"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#ab27e9918b538ce9d8ca692479b375b6a">UINT8</a></div><div class="ttdeci">unsigned char UINT8</div><div class="ttdef"><b>Definition:</b> types.h:21</div></div> <div class="ttc" id="gb_8h_html_afd45c10f4566ca284cdab4044c5645b3"><div class="ttname"><a href="gb_8h.html#afd45c10f4566ca284cdab4044c5645b3">hiramcpy</a></div><div class="ttdeci">void hiramcpy(UINT8 dst, const void *src, UINT8 n) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a5782338a9936b18e999e322be80c2995"><div class="ttname"><a href="gb_8h.html#a5782338a9936b18e999e322be80c2995">joypad_ex</a></div><div class="ttdeci">void joypad_ex(joypads_t *joypads)</div></div> <div class="ttc" id="gb_8h_html_a015094949fc631921e5e5219320eee87"><div class="ttname"><a href="gb_8h.html#a015094949fc631921e5e5219320eee87">set_win_data</a></div><div class="ttdeci">void set_win_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_aaf9d0b393d38385168d207f96acd800c"><div class="ttname"><a href="gb_8h.html#aaf9d0b393d38385168d207f96acd800c">set_win_tiles</a></div><div class="ttdeci">void set_win_tiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, unsigned char *tiles) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="hardware_8h_html_a310aa43fbee2fd6b6b419df48acce1e0"><div class="ttname"><a href="hardware_8h.html#a310aa43fbee2fd6b6b419df48acce1e0">WX_REG</a></div><div class="ttdeci">__REG WX_REG</div><div class="ttdef"><b>Definition:</b> hardware.h:52</div></div> -<div class="ttc" id="struct_o_a_m__item__t_html_a48c4d7253494259403cd4597e8c19ca5"><div class="ttname"><a href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">OAM_item_t::y</a></div><div class="ttdeci">UINT8 y</div><div class="ttdef"><b>Definition:</b> gb.h:977</div></div> -<div class="ttc" id="gb_8h_html_aeda4515a31485c9688c4601ac5ce2d79"><div class="ttname"><a href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79">e</a></div><div class="ttdeci">void e</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> -<div class="ttc" id="gb_8h_html_a2faff6aef9e272b15a1912a4f911e385"><div class="ttname"><a href="gb_8h.html#a2faff6aef9e272b15a1912a4f911e385">move_win</a></div><div class="ttdeci">void move_win(UINT8 x, UINT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:892</div></div> +<div class="ttc" id="struct_o_a_m__item__t_html_a48c4d7253494259403cd4597e8c19ca5"><div class="ttname"><a href="struct_o_a_m__item__t.html#a48c4d7253494259403cd4597e8c19ca5">OAM_item_t::y</a></div><div class="ttdeci">UINT8 y</div><div class="ttdef"><b>Definition:</b> gb.h:971</div></div> +<div class="ttc" id="gb_8h_html_aeda4515a31485c9688c4601ac5ce2d79"><div class="ttname"><a href="gb_8h.html#aeda4515a31485c9688c4601ac5ce2d79">e</a></div><div class="ttdeci">void e</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> +<div class="ttc" id="gb_8h_html_a2faff6aef9e272b15a1912a4f911e385"><div class="ttname"><a href="gb_8h.html#a2faff6aef9e272b15a1912a4f911e385">move_win</a></div><div class="ttdeci">void move_win(UINT8 x, UINT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:887</div></div> <div class="ttc" id="gb_8h_html_a3c955cdccaeca3b016911594afc31aee"><div class="ttname"><a href="gb_8h.html#a3c955cdccaeca3b016911594afc31aee">set_tiles</a></div><div class="ttdeci">void set_tiles(UINT8 x, UINT8 y, UINT8 w, UINT8 h, unsigned char *vram_addr, unsigned char *tiles) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a5ce794b7f0c3361c79c887b500fcaf19"><div class="ttname"><a href="gb_8h.html#a5ce794b7f0c3361c79c887b500fcaf19">get_sprite_data</a></div><div class="ttdeci">void get_sprite_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a7783f5ed79717411d55f62b8ef3f4592"><div class="ttname"><a href="gb_8h.html#a7783f5ed79717411d55f62b8ef3f4592">_io_in</a></div><div class="ttdeci">volatile UINT8 _io_in</div></div> <div class="ttc" id="gb_8h_html_a69553962c85a34c7c8f7c3edbcc41688"><div class="ttname"><a href="gb_8h.html#a69553962c85a34c7c8f7c3edbcc41688">joypad_init</a></div><div class="ttdeci">UINT8 joypad_init(UINT8 npads, joypads_t *joypads)</div></div> <div class="ttc" id="sgb_8h_html"><div class="ttname"><a href="sgb_8h.html">sgb.h</a></div></div> <div class="ttc" id="asm_2gbz80_2types_8h_html_a7ebe70ceca856797319175e30bcf003d"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#a7ebe70ceca856797319175e30bcf003d">INT8</a></div><div class="ttdeci">signed char INT8</div><div class="ttdef"><b>Definition:</b> types.h:18</div></div> -<div class="ttc" id="gb_8h_html_a54ffb7990fd37939bbe1a8b1e663e439"><div class="ttname"><a href="gb_8h.html#a54ffb7990fd37939bbe1a8b1e663e439">get_sprite_tile</a></div><div class="ttdeci">UINT8 get_sprite_tile(UINT8 nb)</div><div class="ttdef"><b>Definition:</b> gb.h:1015</div></div> -<div class="ttc" id="gb_8h_html_a4c2e4adef74067fdbb49005bc73de937"><div class="ttname"><a href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a></div><div class="ttdeci">void b</div><div class="ttdef"><b>Definition:</b> gb.h:452</div></div> +<div class="ttc" id="gb_8h_html_a54ffb7990fd37939bbe1a8b1e663e439"><div class="ttname"><a href="gb_8h.html#a54ffb7990fd37939bbe1a8b1e663e439">get_sprite_tile</a></div><div class="ttdeci">UINT8 get_sprite_tile(UINT8 nb)</div><div class="ttdef"><b>Definition:</b> gb.h:1009</div></div> +<div class="ttc" id="gb_8h_html_a4c2e4adef74067fdbb49005bc73de937"><div class="ttname"><a href="gb_8h.html#a4c2e4adef74067fdbb49005bc73de937">b</a></div><div class="ttdeci">void b</div><div class="ttdef"><b>Definition:</b> gb.h:450</div></div> <div class="ttc" id="gb_8h_html_a65971730b7a58df99fc43be0162226ac"><div class="ttname"><a href="gb_8h.html#a65971730b7a58df99fc43be0162226ac">set_sprite_data</a></div><div class="ttdeci">void set_sprite_data(UINT8 first_tile, UINT8 nb_tiles, unsigned char *data) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="gb_8h_html_a83d08d752bb2f2406084a9afa7988b98"><div class="ttname"><a href="gb_8h.html#a83d08d752bb2f2406084a9afa7988b98">_io_status</a></div><div class="ttdeci">volatile UINT8 _io_status</div></div> <div class="ttc" id="gb_8h_html_a1ad25695f4885f15325a82ec935e8579"><div class="ttname"><a href="gb_8h.html#a1ad25695f4885f15325a82ec935e8579">remove_TIM</a></div><div class="ttdeci">void remove_TIM(int_handler h) NONBANKED</div></div> <div class="ttc" id="gb_8h_html_a81654fb8ed020754dfaf20e4a98a7784"><div class="ttname"><a href="gb_8h.html#a81654fb8ed020754dfaf20e4a98a7784">joypad</a></div><div class="ttdeci">UINT8 joypad(void) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="gb_8h_html_aba4fa6f13f80e53daeb0caa7b1ec8afb"><div class="ttname"><a href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a></div><div class="ttdeci">UINT8 h</div><div class="ttdef"><b>Definition:</b> gb.h:431</div></div> +<div class="ttc" id="gb_8h_html_aba4fa6f13f80e53daeb0caa7b1ec8afb"><div class="ttname"><a href="gb_8h.html#aba4fa6f13f80e53daeb0caa7b1ec8afb">h</a></div><div class="ttdeci">UINT8 h</div><div class="ttdef"><b>Definition:</b> gb.h:429</div></div> <div class="ttc" id="gb_8h_html_a60baa1622feae07982562dcbc243751e"><div class="ttname"><a href="gb_8h.html#a60baa1622feae07982562dcbc243751e">get_mode</a></div><div class="ttdeci">UINT8 get_mode(void) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="hardware_8h_html_a1c8d52607616ef37da335447e4cbe850"><div class="ttname"><a href="hardware_8h.html#a1c8d52607616ef37da335447e4cbe850">WY_REG</a></div><div class="ttdeci">__REG WY_REG</div><div class="ttdef"><b>Definition:</b> hardware.h:51</div></div> -<div class="ttc" id="gb_8h_html_a98b848953a95ce2fff6fda643575d74a"><div class="ttname"><a href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a></div><div class="ttdeci">__REG _current_bank</div><div class="ttdef"><b>Definition:</b> gb.h:366</div></div> +<div class="ttc" id="gb_8h_html_a98b848953a95ce2fff6fda643575d74a"><div class="ttname"><a href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a></div><div class="ttdeci">__REG _current_bank</div><div class="ttdef"><b>Definition:</b> gb.h:348</div></div> <div class="ttc" id="gb_8h_html_a8cf949b6e2654b6a8bd9e403a49ee4b3"><div class="ttname"><a href="gb_8h.html#a8cf949b6e2654b6a8bd9e403a49ee4b3">vmemset</a></div><div class="ttdeci">void vmemset(void *s, UINT8 c, size_t n) NONBANKED __preserves_regs(b</div></div> -<div class="ttc" id="gb_8h_html_abf6f5422a3c98cf440736f1491e1aa4c"><div class="ttname"><a href="gb_8h.html#abf6f5422a3c98cf440736f1491e1aa4c">scroll_sprite</a></div><div class="ttdeci">void scroll_sprite(UINT8 nb, INT8 x, INT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:1093</div></div> +<div class="ttc" id="gb_8h_html_abf6f5422a3c98cf440736f1491e1aa4c"><div class="ttname"><a href="gb_8h.html#abf6f5422a3c98cf440736f1491e1aa4c">scroll_sprite</a></div><div class="ttdeci">void scroll_sprite(UINT8 nb, INT8 x, INT8 y)</div><div class="ttdef"><b>Definition:</b> gb.h:1087</div></div> <div class="ttc" id="gb_8h_html_adf6ef63efc4bb4950428015c623bca14"><div class="ttname"><a href="gb_8h.html#adf6ef63efc4bb4950428015c623bca14">wait_vbl_done</a></div><div class="ttdeci">void wait_vbl_done(void) NONBANKED __preserves_regs(b</div></div> <div class="ttc" id="hardware_8h_html_a86cc170585319565195f2c163250be1f"><div class="ttname"><a href="hardware_8h.html#a86cc170585319565195f2c163250be1f">SCX_REG</a></div><div class="ttdeci">__REG SCX_REG</div><div class="ttdef"><b>Definition:</b> hardware.h:44</div></div> <div class="ttc" id="gb_8h_html_a81f1a67549d3a26dcca22367141eb21b"><div class="ttname"><a href="gb_8h.html#a81f1a67549d3a26dcca22367141eb21b">add_JOY</a></div><div class="ttdeci">void add_JOY(int_handler h) NONBANKED</div></div> diff --git a/docs/api/stdio_8h_source.html b/docs/api/stdio_8h_source.html @@ -137,7 +137,7 @@ $(document).ready(function(){initNavTree('stdio_8h_source.html','');}); <div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</a></div></div> <div class="ttc" id="stdio_8h_html_a6c8d9c5b5b6a760b5b2787f0f96b690e"><div class="ttname"><a href="stdio_8h.html#a6c8d9c5b5b6a760b5b2787f0f96b690e">sprintf</a></div><div class="ttdeci">void sprintf(char *str, const char *format,...) NONBANKED</div></div> <div class="ttc" id="stdio_8h_html_a79c1db3e4a2aaa60d5afa76f7d984d0b"><div class="ttname"><a href="stdio_8h.html#a79c1db3e4a2aaa60d5afa76f7d984d0b">printf</a></div><div class="ttdeci">void printf(const char *format,...) NONBANKED</div></div> -<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:279</div></div> +<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:278</div></div> <div class="ttc" id="stdio_8h_html_a326ca91ffb1187c28f9d8ee680094e51"><div class="ttname"><a href="stdio_8h.html#a326ca91ffb1187c28f9d8ee680094e51">getchar</a></div><div class="ttdeci">char getchar(void)</div></div> <div class="ttc" id="asm_2gbz80_2types_8h_html_a7ed081d8dfb6902784b2fc730bbb7f96"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a></div><div class="ttdeci">#define NONBANKED</div><div class="ttdef"><b>Definition:</b> types.h:11</div></div> <div class="ttc" id="stdio_8h_html_a948b7a0779c308ac5502c57e282e6933"><div class="ttname"><a href="stdio_8h.html#a948b7a0779c308ac5502c57e282e6933">putchar</a></div><div class="ttdeci">void putchar(char c)</div></div> diff --git a/docs/api/string_8h_source.html b/docs/api/string_8h_source.html @@ -142,7 +142,7 @@ $(document).ready(function(){initNavTree('string_8h_source.html','');}); <div class="ttc" id="string_8h_html_a861dba2d93de82f087707bb795f5c602"><div class="ttname"><a href="string_8h.html#a861dba2d93de82f087707bb795f5c602">strncmp</a></div><div class="ttdeci">int strncmp(const char *s1, const char *s2, int n) NONBANKED</div></div> <div class="ttc" id="string_8h_html_a168580a0ddcb7fe754a711309966c99d"><div class="ttname"><a href="string_8h.html#a168580a0ddcb7fe754a711309966c99d">strncat</a></div><div class="ttdeci">char * strncat(char *s1, const char *s2, int n) NONBANKED</div></div> <div class="ttc" id="string_8h_html_acdb04aa44dd4014b313a88d2aa7db89d"><div class="ttname"><a href="string_8h.html#acdb04aa44dd4014b313a88d2aa7db89d">strlen</a></div><div class="ttdeci">int strlen(const char *s) NONBANKED</div></div> -<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:279</div></div> +<div class="ttc" id="gb_8h_html_a0b3366755f3276b0243c1e0497471b7a"><div class="ttname"><a href="gb_8h.html#a0b3366755f3276b0243c1e0497471b7a">c</a></div><div class="ttdeci">UINT8 c</div><div class="ttdef"><b>Definition:</b> gb.h:278</div></div> <div class="ttc" id="asm_2gbz80_2types_8h_html_a7ed081d8dfb6902784b2fc730bbb7f96"><div class="ttname"><a href="asm_2gbz80_2types_8h.html#a7ed081d8dfb6902784b2fc730bbb7f96">NONBANKED</a></div><div class="ttdeci">#define NONBANKED</div><div class="ttdef"><b>Definition:</b> types.h:11</div></div> <div class="ttc" id="string_8h_html_a13c88f5a8475fd7de5d81553cb29724a"><div class="ttname"><a href="string_8h.html#a13c88f5a8475fd7de5d81553cb29724a">strcat</a></div><div class="ttdeci">char * strcat(char *s1, const char *s2) NONBANKED</div></div> <div class="ttc" id="string_8h_html_af0863b31e4ef29647e8181e60c9bd55e"><div class="ttname"><a href="string_8h.html#af0863b31e4ef29647e8181e60c9bd55e">reverse</a></div><div class="ttdeci">char * reverse(char *s)</div></div> diff --git a/docs/api/time_8h.html b/docs/api/time_8h.html @@ -181,7 +181,7 @@ Functions</h2></td></tr> <p>The value returned is the CPU time used so far as a <a class="el" href="asm_2gbz80_2types_8h.html#ad666a63cb94701b620ce999f84629d23">clock_t</a>.</p> <p>To get the number of seconds used, divide by <a class="el" href="time_8h.html#a3d9fc3c745d0880902fe3ea3d5d5f71e">CLOCKS_PER_SEC</a>.</p> <p>This is based on <a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a>, which will wrap around every ~18 minutes. (unsigned 16 bits = 65535 / 60 / 60 = 18.2)</p> -<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>: Why is CLOCKS_PER_SEC 100 instead of 60 if <a class="el" href="time_8h.html#aec80425d74a9644112e61b235fc9ffa9">clock()</a> uses <a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a> which is updated once per VBL? <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a>, <a class="el" href="time_8h.html#ae7841e681c8c9d59818568d39553642c">time()</a> </dd></dl> +<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>: Why is CLOCKS_PER_SEC 100 instead of 60 if <a class="el" href="time_8h.html#aec80425d74a9644112e61b235fc9ffa9">clock()</a> uses <a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a> which is updated once per VBL? <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a>, <a class="el" href="time_8h.html#ae7841e681c8c9d59818568d39553642c">time()</a> </dd></dl> </dd></dl> </div> diff --git a/docs/api/todo.html b/docs/api/todo.html @@ -105,9 +105,7 @@ $(document).ready(function(){initNavTree('todo.html','');}); </div><!--header--> <div class="contents"> <div class="textblock"><dl class="reflist"> -<dt><a class="anchor" id="_todo000001"></a>Global <a class="el" href="gb_8h.html#a98b848953a95ce2fff6fda643575d74a">_current_bank</a> </dt> -<dd>This should probably be moved into a general section about Banking </dd> -<dt><a class="anchor" id="_todo000002"></a>Global <a class="el" href="time_8h.html#aec80425d74a9644112e61b235fc9ffa9">clock</a> (void) NONBANKED</dt> +<dt><a class="anchor" id="_todo000001"></a>Global <a class="el" href="time_8h.html#aec80425d74a9644112e61b235fc9ffa9">clock</a> (void) NONBANKED</dt> <dd>: Why is CLOCKS_PER_SEC 100 instead of 60 if <a class="el" href="time_8h.html#aec80425d74a9644112e61b235fc9ffa9">clock()</a> uses <a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a> which is updated once per VBL? <dl class="section see"><dt>See also</dt><dd><a class="el" href="gb_8h.html#a320fd91d5aa12ba9d1435ab908420998">sys_time</a>, <a class="el" href="time_8h.html#ae7841e681c8c9d59818568d39553642c">time()</a> </dd></dl> </dd> </dl>

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