<trclass="memdesc:ga777fe70258ea43c780b5faa352932668"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Defines the ID of a display usable with OSScreen. <ahref="#ga777fe70258ea43c780b5faa352932668">More...</a><br/></td></tr>
<trclass="memdesc:ga31055493febf1e72ada55aa0b2380f37"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Defines the ID of a display usable with OSScreen. <ahref="group__coreinit__screen.html#ga31055493febf1e72ada55aa0b2380f37">More...</a><br/></td></tr>
<trclass="memdesc:gac678395798fae82a857a824eedebd7de"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Initialises the OSScreen library for use. <ahref="#gac678395798fae82a857a824eedebd7de">More...</a><br/></td></tr>
<trclass="memdesc:ga10098ced2ffbf0107930932af69665a3"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Cleans up and shuts down the OSScreen library. <ahref="#ga10098ced2ffbf0107930932af69665a3">More...</a><br/></td></tr>
<trclass="memdesc:ga14a0a2e005fc00ddd23ac58aff566ee5"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Gets the amount of memory required to fit both buffers of a given screen. <ahref="#ga14a0a2e005fc00ddd23ac58aff566ee5">More...</a><br/></td></tr>
<trclass="memdesc:gae7f7bf93df292c52972baf07b0ba8116"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Sets the memory location for both buffers of a given screen. <ahref="#gae7f7bf93df292c52972baf07b0ba8116">More...</a><br/></td></tr>
<trclass="memdesc:gaa265bdc1d4e801a8e9495ab4f4cabafe"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Clear the work buffer of the given screen by setting all of its pixels to a given colour. <ahref="#gaa265bdc1d4e801a8e9495ab4f4cabafe">More...</a><br/></td></tr>
<trclass="memdesc:ga09b9072ab8dd2095f97ba39e24e3b76b"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Swap the buffers of the given screen. <ahref="#ga09b9072ab8dd2095f97ba39e24e3b76b">More...</a><br/></td></tr>
<trclass="memdesc:gacf5e67a9873092ab755c3af2db421a01"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Draws text at the given position. <ahref="#gacf5e67a9873092ab755c3af2db421a01">More...</a><br/></td></tr>
<trclass="memdesc:ga3f4b6594fdc62b57e5ceb6cdc0e57d5a"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Draws a single pixel at the given position. <ahref="#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">More...</a><br/></td></tr>
<trclass="memdesc:ga0dd2476b23f7f4e52a5167f2335773e3"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Enables or disables a given screen. <ahref="#ga0dd2476b23f7f4e52a5167f2335773e3">More...</a><br/></td></tr>
<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 <aclass="el"href="group__coreinit__screen.html#gac678395798fae82a857a824eedebd7de">OSScreenInit</a>. Then, allocate a memory area and pass it to OSScreen with <aclass="el"href="group__coreinit__screen.html#gae7f7bf93df292c52972baf07b0ba8116">OSScreenSetBufferEx</a> - after enabling the screens with <aclass="el"href="group__coreinit__screen.html#ga0dd2476b23f7f4e52a5167f2335773e3">OSScreenEnableEx</a>, the library will be ready to draw! Drawing is accomplished with <aclass="el"href="group__coreinit__screen.html#gaa265bdc1d4e801a8e9495ab4f4cabafe">OSScreenClearBufferEx</a>, <aclass="el"href="group__coreinit__screen.html#gacf5e67a9873092ab755c3af2db421a01">OSScreenPutFontEx</a> and <aclass="el"href="group__coreinit__screen.html#ga3f4b6594fdc62b57e5ceb6cdc0e57d5a">OSScreenPutPixelEx</a>. Once drawing is complete, call <aclass="el"href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a> to show the results on-screen. Rinse and repeat! </p>
<tr><thcolspan="2">Enumerator</th></tr><tr><tdclass="fieldname"><aid="gga31055493febf1e72ada55aa0b2380f37a258310cb1445b158bc6ed1dac866754a"></a>SCREEN_TV </td><tdclass="fielddoc"><p>Represents the TV connected to the system. </p>
<tr><tdclass="fieldname"><aid="gga31055493febf1e72ada55aa0b2380f37a282d5ab88bd9929a9d5a2be6a3df4b81"></a>SCREEN_DRC </td><tdclass="fielddoc"><p>Represents the screen in the DRC (gamepad). </p>
<pclass="definition">Definition at line <aclass="el"href="screen_8h_source.html#l00044">44</a> of file <aclass="el"href="screen_8h_source.html">screen.h</a>.</p>
<p>Sets the memory location for both buffers of a given screen. </p>
<p>This location must be of the size prescribed by <aclass="el"href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">OSScreenGetBufferSizeEx</a> and at an address aligned to 0x100 bytes.</p>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">screen</td><td>The ID of the screen whose memory location should be changed.</td></tr>
<tr><tdclass="paramname">addr</td><td>Pointer to the memory to use. This area must be 0x100 aligned, and of the size given by <aclass="el"href="group__coreinit__screen.html#ga14a0a2e005fc00ddd23ac58aff566ee5">OSScreenGetBufferSizeEx</a>.</td></tr>
<p>Clear the work buffer of the given screen by setting all of its pixels to a given colour. </p>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">screen</td><td>The ID of the screen to clear. Only the work buffer will be cleared.</td></tr>
<tr><tdclass="paramname">colour</td><td>The colour to use, in big-endian RGBX8 format - 0xRRGGBBXX, where X bits are ignored.</td></tr>
</table>
</dd>
</dl>
<dlclass="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 <aclass="el"href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a>.</dd></dl>
<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>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">screen</td><td>The ID of the screen to flip. </td></tr>
<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>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">screen</td><td>The ID of the screen to draw to. Only the work buffer will be affected.</td></tr>
<tr><tdclass="paramname">row</td><td>The row, in characters, to place the text in. 0 corresponds to the top of the screen.</td></tr>
<tr><tdclass="paramname">column</td><td>The column, in characters, to place the text at. 0 corresponds to the left of the screen.</td></tr>
<tr><tdclass="paramname">buffer</td><td>Pointer to the string of text to draw. Null-terminated.</td></tr>
</table>
</dd>
</dl>
<dlclass="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 <aclass="el"href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a>.</dd></dl>
<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>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">screen</td><td>The ID of the screen to place the pixel in.</td></tr>
<tr><tdclass="paramname">x</td><td>The x-coordinate, in pixels, to draw the pixel at.</td></tr>
<tr><tdclass="paramname">y</td><td>The y-coordinate, in pixels, to draw the pixel at.</td></tr>
<tr><tdclass="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>
<dlclass="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 <aclass="el"href="group__coreinit__screen.html#ga09b9072ab8dd2095f97ba39e24e3b76b">OSScreenFlipBuffersEx</a>.</dd></dl>