wut/group__coreinit__screen.html
2020-03-26 16:49:18 +11:00

536 lines
30 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>wut: Screen</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">wut
&#160;<span id="projectnumber">1.0.0-beta9</span>
</div>
<div id="projectbrief">Wii U Toolchain</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Screen<div class="ingroups"><a class="el" href="group__coreinit.html">coreinit</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gac61fff8beb9265220bdfabcca9e5da08"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#gac61fff8beb9265220bdfabcca9e5da08">OSScreenID</a></td></tr>
<tr class="memdesc:gac61fff8beb9265220bdfabcca9e5da08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines the ID of a display usable with OSScreen. <a href="group__coreinit__screen.html#gac61fff8beb9265220bdfabcca9e5da08">More...</a><br /></td></tr>
<tr class="separator:gac61fff8beb9265220bdfabcca9e5da08"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga31055493febf1e72ada55aa0b2380f37"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> { <br />
&#160;&#160;<a class="el" href="group__coreinit__screen.html#gga31055493febf1e72ada55aa0b2380f37a258310cb1445b158bc6ed1dac866754a">SCREEN_TV</a> = 0,
<br />
&#160;&#160;<a class="el" href="group__coreinit__screen.html#gga31055493febf1e72ada55aa0b2380f37a282d5ab88bd9929a9d5a2be6a3df4b81">SCREEN_DRC</a> = 1
<br />
}</td></tr>
<tr class="memdesc:ga31055493febf1e72ada55aa0b2380f37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines the ID of a display usable with OSScreen. <a href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">More...</a><br /></td></tr>
<tr class="separator:ga31055493febf1e72ada55aa0b2380f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gac678395798fae82a857a824eedebd7de"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#gac678395798fae82a857a824eedebd7de">OSScreenInit</a> ()</td></tr>
<tr class="memdesc:gac678395798fae82a857a824eedebd7de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialises the OSScreen library for use. <a href="group__coreinit__screen.html#gac678395798fae82a857a824eedebd7de">More...</a><br /></td></tr>
<tr class="separator:gac678395798fae82a857a824eedebd7de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga10098ced2ffbf0107930932af69665a3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#ga10098ced2ffbf0107930932af69665a3">OSScreenShutdown</a> ()</td></tr>
<tr class="memdesc:ga10098ced2ffbf0107930932af69665a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cleans up and shuts down the OSScreen library. <a href="group__coreinit__screen.html#ga10098ced2ffbf0107930932af69665a3">More...</a><br /></td></tr>
<tr class="separator:ga10098ced2ffbf0107930932af69665a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga14a0a2e005fc00ddd23ac58aff566ee5"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">OSScreenGetBufferSizeEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen)</td></tr>
<tr class="memdesc:ga14a0a2e005fc00ddd23ac58aff566ee5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the amount of memory required to fit both buffers of a given screen. <a href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">More...</a><br /></td></tr>
<tr class="separator:ga14a0a2e005fc00ddd23ac58aff566ee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae7f7bf93df292c52972baf07b0ba8116"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#gae7f7bf93df292c52972baf07b0ba8116">OSScreenSetBufferEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen, void *addr)</td></tr>
<tr class="memdesc:gae7f7bf93df292c52972baf07b0ba8116"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the memory location for both buffers of a given screen. <a href="group__coreinit__screen.html#gae7f7bf93df292c52972baf07b0ba8116">More...</a><br /></td></tr>
<tr class="separator:gae7f7bf93df292c52972baf07b0ba8116"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa265bdc1d4e801a8e9495ab4f4cabafe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#gaa265bdc1d4e801a8e9495ab4f4cabafe">OSScreenClearBufferEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen, uint32_t colour)</td></tr>
<tr class="memdesc:gaa265bdc1d4e801a8e9495ab4f4cabafe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the work buffer of the given screen by setting all of its pixels to a given colour. <a href="group__coreinit__screen.html#gaa265bdc1d4e801a8e9495ab4f4cabafe">More...</a><br /></td></tr>
<tr class="separator:gaa265bdc1d4e801a8e9495ab4f4cabafe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga09b9072ab8dd2095f97ba39e24e3b76b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen)</td></tr>
<tr class="memdesc:ga09b9072ab8dd2095f97ba39e24e3b76b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Swap the buffers of the given screen. <a href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">More...</a><br /></td></tr>
<tr class="separator:ga09b9072ab8dd2095f97ba39e24e3b76b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf5e67a9873092ab755c3af2db421a01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#gacf5e67a9873092ab755c3af2db421a01">OSScreenPutFontEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen, uint32_t row, uint32_t column, const char *buffer)</td></tr>
<tr class="memdesc:gacf5e67a9873092ab755c3af2db421a01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws text at the given position. <a href="group__coreinit__screen.html#gacf5e67a9873092ab755c3af2db421a01">More...</a><br /></td></tr>
<tr class="separator:gacf5e67a9873092ab755c3af2db421a01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3f4b6594fdc62b57e5ceb6cdc0e57d5a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">OSScreenPutPixelEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen, uint32_t x, uint32_t y, uint32_t colour)</td></tr>
<tr class="memdesc:ga3f4b6594fdc62b57e5ceb6cdc0e57d5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws a single pixel at the given position. <a href="group__coreinit__screen.html#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">More...</a><br /></td></tr>
<tr class="separator:ga3f4b6594fdc62b57e5ceb6cdc0e57d5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0dd2476b23f7f4e52a5167f2335773e3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreinit__screen.html#ga0dd2476b23f7f4e52a5167f2335773e3">OSScreenEnableEx</a> (<a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> screen, <a class="el" href="wut__types_8h.html#a975dbe9e4396bf9e0064ce01827fa372">BOOL</a> enable)</td></tr>
<tr class="memdesc:ga0dd2476b23f7f4e52a5167f2335773e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables or disables a given screen. <a href="group__coreinit__screen.html#ga0dd2476b23f7f4e52a5167f2335773e3">More...</a><br /></td></tr>
<tr class="separator:ga0dd2476b23f7f4e52a5167f2335773e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Software-rendered graphics system, suitable for text output and simple graphics.</p>
<p>OSScreen is much more straightforward than GX2, which makes it appealing for situations that do not require complex graphics. It can draw text and pixels (one at a time!) to both the Gamepad and TV.</p>
<p>To use OSScreen, first call <a class="el" href="group__coreinit__screen.html#gac678395798fae82a857a824eedebd7de">OSScreenInit</a>. Then, allocate a memory area and pass it to OSScreen with <a class="el" href="group__coreinit__screen.html#gae7f7bf93df292c52972baf07b0ba8116">OSScreenSetBufferEx</a> - after enabling the screens with <a class="el" href="group__coreinit__screen.html#ga0dd2476b23f7f4e52a5167f2335773e3">OSScreenEnableEx</a>, the library will be ready to draw! Drawing is accomplished with <a class="el" href="group__coreinit__screen.html#gaa265bdc1d4e801a8e9495ab4f4cabafe">OSScreenClearBufferEx</a>, <a class="el" href="group__coreinit__screen.html#gacf5e67a9873092ab755c3af2db421a01">OSScreenPutFontEx</a> and <a class="el" href="group__coreinit__screen.html#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">OSScreenPutPixelEx</a>. Once drawing is complete, call <a class="el" href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a> to show the results on-screen. Rinse and repeat! </p>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="gac61fff8beb9265220bdfabcca9e5da08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac61fff8beb9265220bdfabcca9e5da08">&#9670;&nbsp;</a></span>OSScreenID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a> <a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Defines the ID of a display usable with OSScreen. </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="ga31055493febf1e72ada55aa0b2380f37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga31055493febf1e72ada55aa0b2380f37">&#9670;&nbsp;</a></span>OSScreenID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Defines the ID of a display usable with OSScreen. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga31055493febf1e72ada55aa0b2380f37a258310cb1445b158bc6ed1dac866754a"></a>SCREEN_TV&#160;</td><td class="fielddoc"><p>Represents the TV connected to the system. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga31055493febf1e72ada55aa0b2380f37a282d5ab88bd9929a9d5a2be6a3df4b81"></a>SCREEN_DRC&#160;</td><td class="fielddoc"><p>Represents the screen in the DRC (gamepad). </p>
</td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="screen_8h_source.html#l00044">44</a> of file <a class="el" href="screen_8h_source.html">screen.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="gac678395798fae82a857a824eedebd7de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac678395798fae82a857a824eedebd7de">&#9670;&nbsp;</a></span>OSScreenInit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenInit </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialises the OSScreen library for use. </p>
<p>This function must be called before using any other OSScreen functions.</p>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#gae7f7bf93df292c52972baf07b0ba8116">OSScreenSetBufferEx</a> </li>
<li>
<a class="el" href="group__coreinit__screen.html#ga0dd2476b23f7f4e52a5167f2335773e3">OSScreenEnableEx</a> </li>
<li>
<a class="el" href="group__coreinit__screen.html#ga10098ced2ffbf0107930932af69665a3">OSScreenShutdown</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="ga10098ced2ffbf0107930932af69665a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga10098ced2ffbf0107930932af69665a3">&#9670;&nbsp;</a></span>OSScreenShutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenShutdown </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Cleans up and shuts down the OSScreen library. </p>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#ga0dd2476b23f7f4e52a5167f2335773e3">OSScreenEnableEx</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="ga14a0a2e005fc00ddd23ac58aff566ee5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga14a0a2e005fc00ddd23ac58aff566ee5">&#9670;&nbsp;</a></span>OSScreenGetBufferSizeEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint32_t OSScreenGetBufferSizeEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the amount of memory required to fit both buffers of a given screen. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen to be sized.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#gae7f7bf93df292c52972baf07b0ba8116">OSScreenSetBufferEx</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="gae7f7bf93df292c52972baf07b0ba8116"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae7f7bf93df292c52972baf07b0ba8116">&#9670;&nbsp;</a></span>OSScreenSetBufferEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenSetBufferEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>addr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the memory location for both buffers of a given screen. </p>
<p>This location must be of the size prescribed by <a class="el" href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">OSScreenGetBufferSizeEx</a> and at an address aligned to 0x100 bytes.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen whose memory location should be changed.</td></tr>
<tr><td class="paramname">addr</td><td>Pointer to the memory to use. This area must be 0x100 aligned, and of the size given by <a class="el" href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">OSScreenGetBufferSizeEx</a>.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">OSScreenGetBufferSizeEx</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="gaa265bdc1d4e801a8e9495ab4f4cabafe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa265bdc1d4e801a8e9495ab4f4cabafe">&#9670;&nbsp;</a></span>OSScreenClearBufferEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenClearBufferEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>colour</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Clear the work buffer of the given screen by setting all of its pixels to a given colour. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen to clear. Only the work buffer will be cleared.</td></tr>
<tr><td class="paramname">colour</td><td>The colour to use, in big-endian RGBX8 format - 0xRRGGBBXX, where X bits are ignored.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Since this function only affects the <em>work buffer</em>, its effect will not appear on screen immediately. See <a class="el" href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a>.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#gacf5e67a9873092ab755c3af2db421a01">OSScreenPutFontEx</a> </li>
<li>
<a class="el" href="group__coreinit__screen.html#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">OSScreenPutPixelEx</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="ga09b9072ab8dd2095f97ba39e24e3b76b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga09b9072ab8dd2095f97ba39e24e3b76b">&#9670;&nbsp;</a></span>OSScreenFlipBuffersEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenFlipBuffersEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Swap the buffers of the given screen. </p>
<p>The work buffer will become the visible buffer and will start being shown on-screen, while the visible buffer becomes the new work buffer. This operation is known as "flipping" the buffers.</p>
<p>You must call this function once drawing is complete, otherwise draws will not appear on-screen.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen to flip. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gacf5e67a9873092ab755c3af2db421a01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacf5e67a9873092ab755c3af2db421a01">&#9670;&nbsp;</a></span>OSScreenPutFontEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenPutFontEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>row</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>column</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>buffer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Draws text at the given position. </p>
<p>The text will be drawn to the work buffer with a built-in monospace font, coloured white, and anti-aliased. The position coordinates are in <em>characters</em>, not pixels.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen to draw to. Only the work buffer will be affected.</td></tr>
<tr><td class="paramname">row</td><td>The row, in characters, to place the text in. 0 corresponds to the top of the screen.</td></tr>
<tr><td class="paramname">column</td><td>The column, in characters, to place the text at. 0 corresponds to the left of the screen.</td></tr>
<tr><td class="paramname">buffer</td><td>Pointer to the string of text to draw. Null-terminated.</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Since this function only affects the <em>work buffer</em>, its effect will not appear on screen immediately. See <a class="el" href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a>.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">OSScreenPutPixelEx</a> </li>
<li>
<a class="el" href="group__coreinit__screen.html#gaa265bdc1d4e801a8e9495ab4f4cabafe">OSScreenClearBufferEx</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="ga3f4b6594fdc62b57e5ceb6cdc0e57d5a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">&#9670;&nbsp;</a></span>OSScreenPutPixelEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenPutPixelEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>colour</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Draws a single pixel at the given position. </p>
<p>The pixel, a 32-bit RGBX colour, will be placed in the work buffer at the coordinates given.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen to place the pixel in.</td></tr>
<tr><td class="paramname">x</td><td>The x-coordinate, in pixels, to draw the pixel at.</td></tr>
<tr><td class="paramname">y</td><td>The y-coordinate, in pixels, to draw the pixel at.</td></tr>
<tr><td class="paramname">colour</td><td>The desired colour of the pixel to draw, in RGBX32 colour (0xRRGGBBXX, where the XX value is ignored).</td></tr>
</table>
</dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Since this function only affects the <em>work buffer</em>, its effect will not appear on screen immediately. See <a class="el" href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a>.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><ul>
<li>
<a class="el" href="group__coreinit__screen.html#gacf5e67a9873092ab755c3af2db421a01">OSScreenPutFontEx</a> </li>
<li>
<a class="el" href="group__coreinit__screen.html#gaa265bdc1d4e801a8e9495ab4f4cabafe">OSScreenClearBufferEx</a> </li>
</ul>
</dd></dl>
</div>
</div>
<a id="ga0dd2476b23f7f4e52a5167f2335773e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0dd2476b23f7f4e52a5167f2335773e3">&#9670;&nbsp;</a></span>OSScreenEnableEx()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void OSScreenEnableEx </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">OSScreenID</a>&#160;</td>
<td class="paramname"><em>screen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="wut__types_8h.html#a975dbe9e4396bf9e0064ce01827fa372">BOOL</a>&#160;</td>
<td class="paramname"><em>enable</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enables or disables a given screen. </p>
<p>If a screen is disabled, it shows black.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">screen</td><td>The ID of the screen to enable or disable.</td></tr>
<tr><td class="paramname">enable</td><td><code>true</code> if the screen should be enabled, otherwise false. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>