932 lines
54 KiB
HTML
932 lines
54 KiB
HTML
<!-- HTML header for doxygen 1.10.0-->
|
|
<!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" lang="en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>Mario Kart 64: src/racing/memory.c File Reference</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>
|
|
<script type="text/javascript" src="clipboard.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="cookie.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" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
|
|
<link href="docs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="doxygen-awesome-darkmode-toggle.js"></script>
|
|
<script type="text/javascript">
|
|
DoxygenAwesomeDarkModeToggle.init()
|
|
</script>
|
|
</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 id="projectrow">
|
|
<td id="projectalign">
|
|
<div id="projectname">Mario Kart 64
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.13.2 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() { codefold.init(0); });
|
|
/* @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:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function(){initNavTree('memory_8c.html',''); initResizable(true); });
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- 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">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#define-members">Macros</a> |
|
|
<a href="#func-members">Functions</a> |
|
|
<a href="#var-members">Variables</a> </div>
|
|
<div class="headertitle"><div class="title">memory.c File Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<div class="textblock"><code>#include <libultraship.h></code><br />
|
|
<code>#include <libultra/types.h></code><br />
|
|
<code>#include <<a class="el" href="align__asset__macro_8h_source.html">align_asset_macro.h</a>></code><br />
|
|
<code>#include <<a class="el" href="macros_8h_source.html">macros.h</a>></code><br />
|
|
<code>#include <<a class="el" href="string_8h_source.html">string.h</a>></code><br />
|
|
<code>#include <<a class="el" href="common__structs_8h_source.html">common_structs.h</a>></code><br />
|
|
<code>#include <<a class="el" href="segments_8h_source.html">segments.h</a>></code><br />
|
|
<code>#include <<a class="el" href="decode_8h_source.html">decode.h</a>></code><br />
|
|
<code>#include <<a class="el" href="stubs_8h_source.html">stubs.h</a>></code><br />
|
|
<code>#include "<a class="el" href="memory_8h_source.html">memory.h</a>"</code><br />
|
|
<code>#include "<a class="el" href="main_8h_source.html">main.h</a>"</code><br />
|
|
<code>#include "<a class="el" href="code__800029B0_8h_source.html">code_800029B0.h</a>"</code><br />
|
|
<code>#include "<a class="el" href="defines_8h_source.html">defines.h</a>"</code><br />
|
|
<code>#include "<a class="el" href="course__offsets_8h_source.html">course_offsets.h</a>"</code><br />
|
|
<code>#include "<a class="el" href="Track_8h_source.html">engine/tracks/Track.h</a>"</code><br />
|
|
<code>#include "<a class="el" href="Editor_8h_source.html">engine/editor/Editor.h</a>"</code><br />
|
|
<code>#include <<a class="el" href="stdio_8h_source.html">stdio.h</a>></code><br />
|
|
<code>#include "<a class="el" href="Game_8h_source.html">port/Game.h</a>"</code><br />
|
|
</div><div class="textblock"><div class="dynheader">
|
|
Include dependency graph for memory.c:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c__incl.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
</div><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
|
|
Macros</h2></td></tr>
|
|
<tr class="memitem:a09c9707c3a6d8d12dbb62e2ebefa234a" id="r_a09c9707c3a6d8d12dbb62e2ebefa234a"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="#a09c9707c3a6d8d12dbb62e2ebefa234a">PRINT_MEMPOOL</a></td></tr>
|
|
<tr class="separator:a09c9707c3a6d8d12dbb62e2ebefa234a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr class="memitem:a7e6e89972c484db957ddbd70ba07ed92" id="r_a7e6e89972c484db957ddbd70ba07ed92"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7e6e89972c484db957ddbd70ba07ed92">get_next_available_memory_addr</a> (uintptr_t size)</td></tr>
|
|
<tr class="memdesc:a7e6e89972c484db957ddbd70ba07ed92"><td class="mdescLeft"> </td><td class="mdescRight">Returns the address of the next available memory location and updates the memory pointer to reference the next location of available memory based provided size to allocate. <br /></td></tr>
|
|
<tr class="separator:a7e6e89972c484db957ddbd70ba07ed92"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4d05c87787ed9f7836213fabd5902ad8" id="r_a4d05c87787ed9f7836213fabd5902ad8"><td class="memItemLeft" align="right" valign="top">static uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4d05c87787ed9f7836213fabd5902ad8">get_texture2</a> (size_t offset, const <a class="el" href="structcourse__texture.html">course_texture</a> *textures)</td></tr>
|
|
<tr class="separator:a4d05c87787ed9f7836213fabd5902ad8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a608e942142c4d0fae59c75c891f0bc1c" id="r_a608e942142c4d0fae59c75c891f0bc1c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a608e942142c4d0fae59c75c891f0bc1c">initialize_memory_pool</a> ()</td></tr>
|
|
<tr class="memdesc:a608e942142c4d0fae59c75c891f0bc1c"><td class="mdescLeft"> </td><td class="mdescRight">Sets the starting location for allocating memory and calculates pool size. <br /></td></tr>
|
|
<tr class="separator:a608e942142c4d0fae59c75c891f0bc1c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a08672f1381d39b459aa779748bf40143" id="r_a08672f1381d39b459aa779748bf40143"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a08672f1381d39b459aa779748bf40143">allocate_memory</a> (size_t size)</td></tr>
|
|
<tr class="memdesc:a08672f1381d39b459aa779748bf40143"><td class="mdescLeft"> </td><td class="mdescRight">Allocates memory and adjusts gFreeMemorySize. <br /></td></tr>
|
|
<tr class="separator:a08672f1381d39b459aa779748bf40143"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a63d52c7b032b06f60de721c05a4b75ff" id="r_a63d52c7b032b06f60de721c05a4b75ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a63d52c7b032b06f60de721c05a4b75ff">func_802A7D54</a> (s32 arg0, s32 arg1)</td></tr>
|
|
<tr class="separator:a63d52c7b032b06f60de721c05a4b75ff"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a39fa43d59922488da06f0709f5ded15c" id="r_a39fa43d59922488da06f0709f5ded15c"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a39fa43d59922488da06f0709f5ded15c">load_data</a> (uintptr_t startAddr, uintptr_t endAddr)</td></tr>
|
|
<tr class="memdesc:a39fa43d59922488da06f0709f5ded15c"><td class="mdescLeft"> </td><td class="mdescRight">Allocate and DMA. <br /></td></tr>
|
|
<tr class="separator:a39fa43d59922488da06f0709f5ded15c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad477f8ce8597144e770206a5011e2d7c" id="r_ad477f8ce8597144e770206a5011e2d7c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad477f8ce8597144e770206a5011e2d7c">main_pool_init</a> (uintptr_t start, uintptr_t end)</td></tr>
|
|
<tr class="separator:ad477f8ce8597144e770206a5011e2d7c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8a31f6da859d433a76fafd673eeefaaa" id="r_a8a31f6da859d433a76fafd673eeefaaa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8a31f6da859d433a76fafd673eeefaaa">main_pool_alloc</a> (uintptr_t size, uintptr_t side)</td></tr>
|
|
<tr class="separator:a8a31f6da859d433a76fafd673eeefaaa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afc6ca5942125a985be7e8542fd9a775d" id="r_afc6ca5942125a985be7e8542fd9a775d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#afc6ca5942125a985be7e8542fd9a775d">main_pool_free</a> (void *addr)</td></tr>
|
|
<tr class="separator:afc6ca5942125a985be7e8542fd9a775d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab03bcaf7df66bef336377406023da08e" id="r_ab03bcaf7df66bef336377406023da08e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void * </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab03bcaf7df66bef336377406023da08e">main_pool_realloc</a> (void *addr, uintptr_t size)</td></tr>
|
|
<tr class="separator:ab03bcaf7df66bef336377406023da08e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1f56451986a255ab52d79ef0d4c4d70e" id="r_a1f56451986a255ab52d79ef0d4c4d70e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1f56451986a255ab52d79ef0d4c4d70e">main_pool_available</a> (void)</td></tr>
|
|
<tr class="separator:a1f56451986a255ab52d79ef0d4c4d70e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a318891d2a867475417b7711391e11c38" id="r_a318891d2a867475417b7711391e11c38"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a318891d2a867475417b7711391e11c38">main_pool_push_state</a> (void)</td></tr>
|
|
<tr class="separator:a318891d2a867475417b7711391e11c38"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab253ea16eda3d86a32d3343eff5938fb" id="r_ab253ea16eda3d86a32d3343eff5938fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab253ea16eda3d86a32d3343eff5938fb">main_pool_pop_state</a> (void)</td></tr>
|
|
<tr class="separator:ab253ea16eda3d86a32d3343eff5938fb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae7d023f0c1a0b6a8996141ce3b04a287" id="r_ae7d023f0c1a0b6a8996141ce3b04a287"><td class="memItemLeft" align="right" valign="top"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void * </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae7d023f0c1a0b6a8996141ce3b04a287">func_802A80B0</a> (u8 *dest, u8 *srcStart, u8 *srcEnd)</td></tr>
|
|
<tr class="separator:ae7d023f0c1a0b6a8996141ce3b04a287"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a18ab4c1e32c3c90def2fbc839d7ee26c" id="r_a18ab4c1e32c3c90def2fbc839d7ee26c"><td class="memItemLeft" align="right" valign="top">uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a18ab4c1e32c3c90def2fbc839d7ee26c">MIO0_0F</a> (u8 *arg0, uintptr_t arg1, uintptr_t arg2)</td></tr>
|
|
<tr class="separator:a18ab4c1e32c3c90def2fbc839d7ee26c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3617f7116e3cc000b7ebf38ad3bae48f" id="r_a3617f7116e3cc000b7ebf38ad3bae48f"><td class="memItemLeft" align="right" valign="top">u8 * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3617f7116e3cc000b7ebf38ad3bae48f">load_lakitu_tlut_x64</a> (const char **textureList, size_t length)</td></tr>
|
|
<tr class="separator:a3617f7116e3cc000b7ebf38ad3bae48f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a57deef5dc6c4eaa0d5a6bbb91de0b8cd" id="r_a57deef5dc6c4eaa0d5a6bbb91de0b8cd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a57deef5dc6c4eaa0d5a6bbb91de0b8cd">load_track</a> (s32 trackId)</td></tr>
|
|
<tr class="memdesc:a57deef5dc6c4eaa0d5a6bbb91de0b8cd"><td class="mdescLeft"> </td><td class="mdescRight">Loads & DMAs track data. Vtx, textures, displaylists, etc. <br /></td></tr>
|
|
<tr class="separator:a57deef5dc6c4eaa0d5a6bbb91de0b8cd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
|
|
Variables</h2></td></tr>
|
|
<tr class="memitem:a2c62cbc3dde8015cb2cda46e7f5efeb6" id="r_a2c62cbc3dde8015cb2cda46e7f5efeb6"><td class="memItemLeft" align="right" valign="top">s32 </td><td class="memItemRight" valign="bottom"><a class="el" href="#a2c62cbc3dde8015cb2cda46e7f5efeb6">sGfxSeekPosition</a></td></tr>
|
|
<tr class="separator:a2c62cbc3dde8015cb2cda46e7f5efeb6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4a100da07df567da24c0deb145de8094" id="r_a4a100da07df567da24c0deb145de8094"><td class="memItemLeft" align="right" valign="top">s32 </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4a100da07df567da24c0deb145de8094">sPackedSeekPosition</a></td></tr>
|
|
<tr class="separator:a4a100da07df567da24c0deb145de8094"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a858b086d3b0b10b5ba111676f16e970c" id="r_a858b086d3b0b10b5ba111676f16e970c"><td class="memItemLeft" align="right" valign="top">static u8 </td><td class="memItemRight" valign="bottom"><a class="el" href="#a858b086d3b0b10b5ba111676f16e970c">sMemoryPool</a> [0xFFFFFFF]</td></tr>
|
|
<tr class="separator:a858b086d3b0b10b5ba111676f16e970c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8fbe607cbb34960f0419dcdd1f76e1e1" id="r_a8fbe607cbb34960f0419dcdd1f76e1e1"><td class="memItemLeft" align="right" valign="top">uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a8fbe607cbb34960f0419dcdd1f76e1e1">sPoolEnd</a> = <a class="el" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a> + sizeof(<a class="el" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a>)</td></tr>
|
|
<tr class="separator:a8fbe607cbb34960f0419dcdd1f76e1e1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a71ce9258e8a04f5657f17394b9fa8ac9" id="r_a71ce9258e8a04f5657f17394b9fa8ac9"><td class="memItemLeft" align="right" valign="top">uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a71ce9258e8a04f5657f17394b9fa8ac9">sPoolFreeSpace</a></td></tr>
|
|
<tr class="separator:a71ce9258e8a04f5657f17394b9fa8ac9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5acf731ae5b068194cef9f13e31e03dc" id="r_a5acf731ae5b068194cef9f13e31e03dc"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structMainPoolBlock.html">MainPoolBlock</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a5acf731ae5b068194cef9f13e31e03dc">sPoolListHeadL</a></td></tr>
|
|
<tr class="separator:a5acf731ae5b068194cef9f13e31e03dc"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7e6b81bec34f58da17f2de948ec44dc8" id="r_a7e6b81bec34f58da17f2de948ec44dc8"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structMainPoolBlock.html">MainPoolBlock</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#a7e6b81bec34f58da17f2de948ec44dc8">sPoolListHeadR</a></td></tr>
|
|
<tr class="separator:a7e6b81bec34f58da17f2de948ec44dc8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa124e5309ca66077ae36d26dae0b9036" id="r_aa124e5309ca66077ae36d26dae0b9036"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structMainPoolState.html">MainPoolState</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa124e5309ca66077ae36d26dae0b9036">gMainPoolState</a> = <a class="el" href="miniaudio_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a></td></tr>
|
|
<tr class="separator:aa124e5309ca66077ae36d26dae0b9036"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a20247197aa5ae9f963a5c2b6d923a37e" id="r_a20247197aa5ae9f963a5c2b6d923a37e"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structUnkStruct__802B8CD4.html">UnkStruct_802B8CD4</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a20247197aa5ae9f963a5c2b6d923a37e">D_802B8CD4</a> [] = { 0 }</td></tr>
|
|
<tr class="separator:a20247197aa5ae9f963a5c2b6d923a37e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af0191ff11f34cb788fc0f78fcc869ea0" id="r_af0191ff11f34cb788fc0f78fcc869ea0"><td class="memItemLeft" align="right" valign="top">s32 </td><td class="memItemRight" valign="bottom"><a class="el" href="#af0191ff11f34cb788fc0f78fcc869ea0">D_802B8CE4</a> = 0</td></tr>
|
|
<tr class="separator:af0191ff11f34cb788fc0f78fcc869ea0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa394d88a9879d85735bba30f7e198445" id="r_aa394d88a9879d85735bba30f7e198445"><td class="memItemLeft" align="right" valign="top">s32 </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa394d88a9879d85735bba30f7e198445">memoryPadding</a> [2]</td></tr>
|
|
<tr class="separator:aa394d88a9879d85735bba30f7e198445"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9ffd2fdc9057d78341e50960dbaac6c3" id="r_a9ffd2fdc9057d78341e50960dbaac6c3"><td class="memItemLeft" align="right" valign="top">uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a9ffd2fdc9057d78341e50960dbaac6c3">vtxSegEnd</a></td></tr>
|
|
<tr class="separator:a9ffd2fdc9057d78341e50960dbaac6c3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4018962483b7b377f940cf5542d2c5b3" id="r_a4018962483b7b377f940cf5542d2c5b3"><td class="memItemLeft" align="right" valign="top">uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4018962483b7b377f940cf5542d2c5b3">dlSegEnd</a></td></tr>
|
|
<tr class="separator:a4018962483b7b377f940cf5542d2c5b3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae2514c9358b328dff413f3aaa9a41f38" id="r_ae2514c9358b328dff413f3aaa9a41f38"><td class="memItemLeft" align="right" valign="top">uintptr_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae2514c9358b328dff413f3aaa9a41f38">texSegEnd</a></td></tr>
|
|
<tr class="separator:ae2514c9358b328dff413f3aaa9a41f38"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afb79b8bcc2ab63057230343b73acb9e5" id="r_afb79b8bcc2ab63057230343b73acb9e5"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="#afb79b8bcc2ab63057230343b73acb9e5">texSegSize</a></td></tr>
|
|
<tr class="separator:afb79b8bcc2ab63057230343b73acb9e5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afd9f9417375e240cc2a11ab2ce813a83" id="r_afd9f9417375e240cc2a11ab2ce813a83"><td class="memItemLeft" align="right" valign="top">Gfx * </td><td class="memItemRight" valign="bottom"><a class="el" href="#afd9f9417375e240cc2a11ab2ce813a83">testaaa</a></td></tr>
|
|
<tr class="separator:afd9f9417375e240cc2a11ab2ce813a83"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<h2 class="groupheader">Macro Definition Documentation</h2>
|
|
<a id="a09c9707c3a6d8d12dbb62e2ebefa234a" name="a09c9707c3a6d8d12dbb62e2ebefa234a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a09c9707c3a6d8d12dbb62e2ebefa234a">◆ </a></span>PRINT_MEMPOOL</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">#define PRINT_MEMPOOL</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<b>Value:</b><div class="fragment"><div class="line"> printf(<span class="stringliteral">"\nPool Start: %p, Pool End: %p, size: 0x%lX\ngNextFreeMemoryAddress: 0x%lX\n\n"</span>, (<span class="keywordtype">void</span>*) <a class="code hl_variable" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a>, \</div>
|
|
<div class="line"> (<span class="keywordtype">void</span>*) (<a class="code hl_variable" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a> + <span class="keyword">sizeof</span>(<a class="code hl_variable" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a>)), \</div>
|
|
<div class="line"> (<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>) (((<a class="code hl_variable" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a> + <span class="keyword">sizeof</span>(<a class="code hl_variable" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a>)) - <a class="code hl_variable" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a>)), \</div>
|
|
<div class="line"> (<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>) <a class="code hl_variable" href="code__800029B0_8c.html#acd2abe1d3f00f9dee4d679d14074480e">gNextFreeMemoryAddress</a>)</div>
|
|
<div class="ttc" id="acode__800029B0_8c_html_acd2abe1d3f00f9dee4d679d14074480e"><div class="ttname"><a href="code__800029B0_8c.html#acd2abe1d3f00f9dee4d679d14074480e">gNextFreeMemoryAddress</a></div><div class="ttdeci">uintptr_t gNextFreeMemoryAddress</div><div class="ttdef"><b>Definition</b> code_800029B0.c:122</div></div>
|
|
<div class="ttc" id="amemory__pool_8c_html_afd9f792a1f297c9829bb3d02f883427c"><div class="ttname"><a href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a></div><div class="ttdeci">u8 sMemoryPool[MEMORY_POOL_SIZE]</div><div class="ttdef"><b>Definition</b> memory_pool.c:12</div></div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Function Documentation</h2>
|
|
<a id="a08672f1381d39b459aa779748bf40143" name="a08672f1381d39b459aa779748bf40143"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a08672f1381d39b459aa779748bf40143">◆ </a></span>allocate_memory()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void * allocate_memory </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>size</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Allocates memory and adjusts gFreeMemorySize. </p>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_a08672f1381d39b459aa779748bf40143_icgraph.svg" width="282" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a63d52c7b032b06f60de721c05a4b75ff" name="a63d52c7b032b06f60de721c05a4b75ff"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a63d52c7b032b06f60de721c05a4b75ff">◆ </a></span>func_802A7D54()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void func_802A7D54 </td>
|
|
<td>(</td>
|
|
<td class="paramtype">s32</td> <td class="paramname"><span class="paramname"><em>arg0</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">s32</td> <td class="paramname"><span class="paramname"><em>arg1</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae7d023f0c1a0b6a8996141ce3b04a287" name="ae7d023f0c1a0b6a8996141ce3b04a287"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae7d023f0c1a0b6a8996141ce3b04a287">◆ </a></span>func_802A80B0()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void * func_802A80B0 </td>
|
|
<td>(</td>
|
|
<td class="paramtype">u8 *</td> <td class="paramname"><span class="paramname"><em>dest</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">u8 *</td> <td class="paramname"><span class="paramname"><em>srcStart</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">u8 *</td> <td class="paramname"><span class="paramname"><em>srcEnd</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_ae7d023f0c1a0b6a8996141ce3b04a287_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7e6e89972c484db957ddbd70ba07ed92" name="a7e6e89972c484db957ddbd70ba07ed92"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7e6e89972c484db957ddbd70ba07ed92">◆ </a></span>get_next_available_memory_addr()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void * get_next_available_memory_addr </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>size</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the address of the next available memory location and updates the memory pointer to reference the next location of available memory based provided size to allocate. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">size</td><td>of memory to allocate. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Address of free memory </dd></dl>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a7e6e89972c484db957ddbd70ba07ed92_icgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4d05c87787ed9f7836213fabd5902ad8" name="a4d05c87787ed9f7836213fabd5902ad8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4d05c87787ed9f7836213fabd5902ad8">◆ </a></span>get_texture2()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">static uintptr_t get_texture2 </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>offset</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="structcourse__texture.html">course_texture</a> *</td> <td class="paramname"><span class="paramname"><em>textures</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a608e942142c4d0fae59c75c891f0bc1c" name="a608e942142c4d0fae59c75c891f0bc1c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a608e942142c4d0fae59c75c891f0bc1c">◆ </a></span>initialize_memory_pool()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void initialize_memory_pool </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the starting location for allocating memory and calculates pool size. </p>
|
|
<p>Default memory size, 701.984 Kilobytes. </p>
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_a608e942142c4d0fae59c75c891f0bc1c_cgraph.svg" width="292" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a608e942142c4d0fae59c75c891f0bc1c_icgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a39fa43d59922488da06f0709f5ded15c" name="a39fa43d59922488da06f0709f5ded15c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a39fa43d59922488da06f0709f5ded15c">◆ </a></span>load_data()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void * load_data </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>startAddr</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>endAddr</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Allocate and DMA. </p>
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a39fa43d59922488da06f0709f5ded15c_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3617f7116e3cc000b7ebf38ad3bae48f" name="a3617f7116e3cc000b7ebf38ad3bae48f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3617f7116e3cc000b7ebf38ad3bae48f">◆ </a></span>load_lakitu_tlut_x64()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">u8 * load_lakitu_tlut_x64 </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const char **</td> <td class="paramname"><span class="paramname"><em>textureList</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t</td> <td class="paramname"><span class="paramname"><em>length</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_a3617f7116e3cc000b7ebf38ad3bae48f_cgraph.svg" width="292" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a3617f7116e3cc000b7ebf38ad3bae48f_icgraph.svg" width="100%" height="450"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a57deef5dc6c4eaa0d5a6bbb91de0b8cd" name="a57deef5dc6c4eaa0d5a6bbb91de0b8cd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a57deef5dc6c4eaa0d5a6bbb91de0b8cd">◆ </a></span>load_track()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void load_track </td>
|
|
<td>(</td>
|
|
<td class="paramtype">s32</td> <td class="paramname"><span class="paramname"><em>trackId</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Loads & DMAs track data. Vtx, textures, displaylists, etc. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">trackId</td><td></td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a57deef5dc6c4eaa0d5a6bbb91de0b8cd_cgraph.svg" width="100%" height="401"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a57deef5dc6c4eaa0d5a6bbb91de0b8cd_icgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8a31f6da859d433a76fafd673eeefaaa" name="a8a31f6da859d433a76fafd673eeefaaa"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8a31f6da859d433a76fafd673eeefaaa">◆ </a></span>main_pool_alloc()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void * main_pool_alloc </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>size</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>side</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Allocate a block of memory from the pool of given size, and from the specified side of the pool (MEMORY_POOL_LEFT or MEMORY_POOL_RIGHT). If there is not enough space, return NULL. </p>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_a8a31f6da859d433a76fafd673eeefaaa_icgraph.svg" width="355" height="135"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1f56451986a255ab52d79ef0d4c4d70e" name="a1f56451986a255ab52d79ef0d4c4d70e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1f56451986a255ab52d79ef0d4c4d70e">◆ </a></span>main_pool_available()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t main_pool_available </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afc6ca5942125a985be7e8542fd9a775d" name="afc6ca5942125a985be7e8542fd9a775d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afc6ca5942125a985be7e8542fd9a775d">◆ </a></span>main_pool_free()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t main_pool_free </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>addr</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Free a block of memory that was allocated from the pool. The block must be the most recently allocated block from its end of the pool, otherwise all newer blocks are freed as well. Return the amount of free space left in the pool. </p>
|
|
<div class="dynheader">
|
|
Here is the caller graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_afc6ca5942125a985be7e8542fd9a775d_icgraph.svg" width="323" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad477f8ce8597144e770206a5011e2d7c" name="ad477f8ce8597144e770206a5011e2d7c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad477f8ce8597144e770206a5011e2d7c">◆ </a></span>main_pool_init()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void main_pool_init </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>start</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>end</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab253ea16eda3d86a32d3343eff5938fb" name="ab253ea16eda3d86a32d3343eff5938fb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab253ea16eda3d86a32d3343eff5938fb">◆ </a></span>main_pool_pop_state()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t main_pool_pop_state </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Restore pool state from a previous call to main_pool_push_state. Return the amount of free space left in the pool. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a318891d2a867475417b7711391e11c38" name="a318891d2a867475417b7711391e11c38"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a318891d2a867475417b7711391e11c38">◆ </a></span>main_pool_push_state()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> uintptr_t main_pool_push_state </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_a318891d2a867475417b7711391e11c38_cgraph.svg" width="355" height="36"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab03bcaf7df66bef336377406023da08e" name="ab03bcaf7df66bef336377406023da08e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab03bcaf7df66bef336377406023da08e">◆ </a></span>main_pool_realloc()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="macros_8h.html#addf5ec070e9499d36b7f2009ce736076">UNUSED</a> void * main_pool_realloc </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>addr</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>size</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="memory_8c_ab03bcaf7df66bef336377406023da08e_cgraph.svg" width="328" height="86"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a18ab4c1e32c3c90def2fbc839d7ee26c" name="a18ab4c1e32c3c90def2fbc839d7ee26c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a18ab4c1e32c3c90def2fbc839d7ee26c">◆ </a></span>MIO0_0F()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uintptr_t MIO0_0F </td>
|
|
<td>(</td>
|
|
<td class="paramtype">u8 *</td> <td class="paramname"><span class="paramname"><em>arg0</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>arg1</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uintptr_t</td> <td class="paramname"><span class="paramname"><em>arg2</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="memory_8c_a18ab4c1e32c3c90def2fbc839d7ee26c_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Variable Documentation</h2>
|
|
<a id="a20247197aa5ae9f963a5c2b6d923a37e" name="a20247197aa5ae9f963a5c2b6d923a37e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a20247197aa5ae9f963a5c2b6d923a37e">◆ </a></span>D_802B8CD4</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">struct <a class="el" href="structUnkStruct__802B8CD4.html">UnkStruct_802B8CD4</a> D_802B8CD4[] = { 0 }</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af0191ff11f34cb788fc0f78fcc869ea0" name="af0191ff11f34cb788fc0f78fcc869ea0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af0191ff11f34cb788fc0f78fcc869ea0">◆ </a></span>D_802B8CE4</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">s32 D_802B8CE4 = 0</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4018962483b7b377f940cf5542d2c5b3" name="a4018962483b7b377f940cf5542d2c5b3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4018962483b7b377f940cf5542d2c5b3">◆ </a></span>dlSegEnd</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uintptr_t dlSegEnd</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa124e5309ca66077ae36d26dae0b9036" name="aa124e5309ca66077ae36d26dae0b9036"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa124e5309ca66077ae36d26dae0b9036">◆ </a></span>gMainPoolState</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">struct <a class="el" href="structMainPoolState.html">MainPoolState</a>* gMainPoolState = <a class="el" href="miniaudio_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa394d88a9879d85735bba30f7e198445" name="aa394d88a9879d85735bba30f7e198445"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa394d88a9879d85735bba30f7e198445">◆ </a></span>memoryPadding</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">s32 memoryPadding[2]</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2c62cbc3dde8015cb2cda46e7f5efeb6" name="a2c62cbc3dde8015cb2cda46e7f5efeb6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2c62cbc3dde8015cb2cda46e7f5efeb6">◆ </a></span>sGfxSeekPosition</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">s32 sGfxSeekPosition</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a858b086d3b0b10b5ba111676f16e970c" name="a858b086d3b0b10b5ba111676f16e970c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a858b086d3b0b10b5ba111676f16e970c">◆ </a></span>sMemoryPool</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">u8 sMemoryPool[0xFFFFFFF]</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4a100da07df567da24c0deb145de8094" name="a4a100da07df567da24c0deb145de8094"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4a100da07df567da24c0deb145de8094">◆ </a></span>sPackedSeekPosition</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">s32 sPackedSeekPosition</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8fbe607cbb34960f0419dcdd1f76e1e1" name="a8fbe607cbb34960f0419dcdd1f76e1e1"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8fbe607cbb34960f0419dcdd1f76e1e1">◆ </a></span>sPoolEnd</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uintptr_t sPoolEnd = <a class="el" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a> + sizeof(<a class="el" href="memory__pool_8c.html#afd9f792a1f297c9829bb3d02f883427c">sMemoryPool</a>)</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a71ce9258e8a04f5657f17394b9fa8ac9" name="a71ce9258e8a04f5657f17394b9fa8ac9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a71ce9258e8a04f5657f17394b9fa8ac9">◆ </a></span>sPoolFreeSpace</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uintptr_t sPoolFreeSpace</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5acf731ae5b068194cef9f13e31e03dc" name="a5acf731ae5b068194cef9f13e31e03dc"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5acf731ae5b068194cef9f13e31e03dc">◆ </a></span>sPoolListHeadL</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">struct <a class="el" href="structMainPoolBlock.html">MainPoolBlock</a>* sPoolListHeadL</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7e6b81bec34f58da17f2de948ec44dc8" name="a7e6b81bec34f58da17f2de948ec44dc8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7e6b81bec34f58da17f2de948ec44dc8">◆ </a></span>sPoolListHeadR</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">struct <a class="el" href="structMainPoolBlock.html">MainPoolBlock</a>* sPoolListHeadR</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afd9f9417375e240cc2a11ab2ce813a83" name="afd9f9417375e240cc2a11ab2ce813a83"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afd9f9417375e240cc2a11ab2ce813a83">◆ </a></span>testaaa</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">Gfx* testaaa</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae2514c9358b328dff413f3aaa9a41f38" name="ae2514c9358b328dff413f3aaa9a41f38"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae2514c9358b328dff413f3aaa9a41f38">◆ </a></span>texSegEnd</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uintptr_t texSegEnd</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afb79b8bcc2ab63057230343b73acb9e5" name="afb79b8bcc2ab63057230343b73acb9e5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afb79b8bcc2ab63057230343b73acb9e5">◆ </a></span>texSegSize</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">size_t texSegSize</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9ffd2fdc9057d78341e50960dbaac6c3" name="a9ffd2fdc9057d78341e50960dbaac6c3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9ffd2fdc9057d78341e50960dbaac6c3">◆ </a></span>vtxSegEnd</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uintptr_t vtxSegEnd</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b624d86e5671d82a613a73eb9566e66f.html">racing</a></li><li class="navelem"><a class="el" href="memory_8c.html">memory.c</a></li>
|
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|