<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tp/include/global.h, branch main</title>
<subtitle>Decompilation of The Legend of Zelda: Twilight Princess (GCN)</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/'/>
<entry>
<title>JAHostIO and friends (#3131)</title>
<updated>2026-03-27T01:54:07+00:00</updated>
<author>
<name>Roman Sandu</name>
<email>roma.sandu@gmail.com</email>
</author>
<published>2026-03-27T01:54:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=0fc019dcfa2ed1834825e9754d47e7948e1745f7'/>
<id>0fc019dcfa2ed1834825e9754d47e7948e1745f7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix a bunch of compiler warnings and document several more bugs (#3130)</title>
<updated>2026-03-18T05:38:05+00:00</updated>
<author>
<name>Max Roncace</name>
<email>me@caseif.net</email>
</author>
<published>2026-03-18T05:38:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=6694c1b281a142972fce587bd20cd82ee65ab38f'/>
<id>6694c1b281a142972fce587bd20cd82ee65ab38f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>More GCC compatibility/warning fixes (#3118)</title>
<updated>2026-03-01T04:19:17+00:00</updated>
<author>
<name>Luke Street</name>
<email>luke@street.dev</email>
</author>
<published>2026-03-01T04:19:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=6a48380461bc9baabe1706ba57ca0cedfa2d0c51'/>
<id>6a48380461bc9baabe1706ba57ca0cedfa2d0c51</id>
<content type='text'>
* Wrap &gt;4-char literals in a MULTI_CHAR macro

Modern compilers do not support CW's non-standard behavior with
&gt;4 char literals. We can, however, use a constexpr function to
compute the u64 values directly. This leaves &lt;=4 char literals
unchanged.

* Replace non-pointer usages of NULL with 0

* Define NULL to nullptr on C++11 and above

* Fix more -Wpointer-arith and -Woverflow warnings

* Replace u32/s32 with uintptr_t/intptr_t where appropriate

* JSUOutputStream: Overload all standard int types</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Wrap &gt;4-char literals in a MULTI_CHAR macro

Modern compilers do not support CW's non-standard behavior with
&gt;4 char literals. We can, however, use a constexpr function to
compute the u64 values directly. This leaves &lt;=4 char literals
unchanged.

* Replace non-pointer usages of NULL with 0

* Define NULL to nullptr on C++11 and above

* Fix more -Wpointer-arith and -Woverflow warnings

* Replace u32/s32 with uintptr_t/intptr_t where appropriate

* JSUOutputStream: Overload all standard int types</pre>
</div>
</content>
</entry>
<entry>
<title>Another round of GCC fixes (#3115)</title>
<updated>2026-02-28T21:35:07+00:00</updated>
<author>
<name>Luke Street</name>
<email>luke@street.dev</email>
</author>
<published>2026-02-28T21:35:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=b5d3b8c059c10711370437f7db7539cd90f1cb29'/>
<id>b5d3b8c059c10711370437f7db7539cd90f1cb29</id>
<content type='text'>
* Fix remaining &lt;string&gt; -&gt; &lt;cstring&gt; for GCC compilation (#3114 follow-up)

MWerks' &lt;string&gt; header transitively includes C string functions
(memcpy, strlen, strcmp, etc.), but GCC/Clang's &lt;string&gt; is the C++
std::string header. These files all use C string functions and should
include &lt;cstring&gt; instead.

* Use std::isnan instead of isnan for GCC compilation

GCC's &lt;cmath&gt; places isnan in the std namespace. Using the unqualified
isnan fails to compile with GCC/Clang.

* Fix cCcD_Src types: s32 -&gt; u32 for bitmask fields

cCcD_SrcObjCommonBase::mSPrm, cCcD_SrcObjTg::mType, and
cCcD_SrcObjAt::mType are used as bitmasks (SetType/SetSPrm take u32,
MskType/MskSPrm use u32, values like 0xFFFFFFFF are common in
aggregate inits). Change from s32 to u32 to match usage.

Also fix AT_TYPE_WOLF_ATTACK/AT_TYPE_UNK to use unsigned literals,
and remove now-unnecessary (s32) casts on hex literals in collision
source data.

* Mark dummy() functions as static to avoid multiple definition errors

These decomp artifact functions have the same name and signature across
TUs, causing linker errors when building as a single binary.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Fix remaining &lt;string&gt; -&gt; &lt;cstring&gt; for GCC compilation (#3114 follow-up)

MWerks' &lt;string&gt; header transitively includes C string functions
(memcpy, strlen, strcmp, etc.), but GCC/Clang's &lt;string&gt; is the C++
std::string header. These files all use C string functions and should
include &lt;cstring&gt; instead.

* Use std::isnan instead of isnan for GCC compilation

GCC's &lt;cmath&gt; places isnan in the std namespace. Using the unqualified
isnan fails to compile with GCC/Clang.

* Fix cCcD_Src types: s32 -&gt; u32 for bitmask fields

cCcD_SrcObjCommonBase::mSPrm, cCcD_SrcObjTg::mType, and
cCcD_SrcObjAt::mType are used as bitmasks (SetType/SetSPrm take u32,
MskType/MskSPrm use u32, values like 0xFFFFFFFF are common in
aggregate inits). Change from s32 to u32 to match usage.

Also fix AT_TYPE_WOLF_ATTACK/AT_TYPE_UNK to use unsigned literals,
and remove now-unnecessary (s32) casts on hex literals in collision
source data.

* Mark dummy() functions as static to avoid multiple definition errors

These decomp artifact functions have the same name and signature across
TUs, causing linker errors when building as a single binary.</pre>
</div>
</content>
</entry>
<entry>
<title>DBG npc_henna and mg_fshop equiv (#3069)</title>
<updated>2026-01-28T22:19:46+00:00</updated>
<author>
<name>YunataSavior</name>
<email>58997725+YunataSavior@users.noreply.github.com</email>
</author>
<published>2026-01-28T22:19:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=5812194fadc4f13436784d3150e8d143ec2a6957'/>
<id>5812194fadc4f13436784d3150e8d143ec2a6957</id>
<content type='text'>
* DBG npc_henna almost, some mg_fshop

* Fix weed_control

* demo_camera_shop OK

* misc dbg symbol/etc fixes

* Fix e_ym/npc_henna dbg bss splits
Thanks @LagoLunatic

* dbg mg_fshop equiv

* PR comments

* DEBUG_CHECK_PAD_TRIG_Z mg_fshop</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* DBG npc_henna almost, some mg_fshop

* Fix weed_control

* demo_camera_shop OK

* misc dbg symbol/etc fixes

* Fix e_ym/npc_henna dbg bss splits
Thanks @LagoLunatic

* dbg mg_fshop equiv

* PR comments

* DEBUG_CHECK_PAD_TRIG_Z mg_fshop</pre>
</div>
</content>
</entry>
<entry>
<title>obj_pumpkin dbg equiv (#3036)</title>
<updated>2026-01-12T20:18:58+00:00</updated>
<author>
<name>YunataSavior</name>
<email>58997725+YunataSavior@users.noreply.github.com</email>
</author>
<published>2026-01-12T20:18:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=53aaed17c0a635c8f5542c2b2aeaa65f63c734c4'/>
<id>53aaed17c0a635c8f5542c2b2aeaa65f63c734c4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>e_rd, npc_ks dbg work (#3029)</title>
<updated>2026-01-12T03:49:05+00:00</updated>
<author>
<name>YunataSavior</name>
<email>58997725+YunataSavior@users.noreply.github.com</email>
</author>
<published>2026-01-12T03:49:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=24c08d322e32677f804c970c68930295afeb7475'/>
<id>24c08d322e32677f804c970c68930295afeb7475</id>
<content type='text'>
* Partial e_rd, npc_ks dbg work

* More e_rd matching

* e_rd fixes and dbg ctor matched

* obj_ita dbg equiv

* e_st dbg almost equiv

* Some obj_ladder dbg work

* dbg e_rd PR comments

* Further e_rd dbg clangd fixes</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Partial e_rd, npc_ks dbg work

* More e_rd matching

* e_rd fixes and dbg ctor matched

* obj_ita dbg equiv

* e_st dbg almost equiv

* Some obj_ladder dbg work

* dbg e_rd PR comments

* Further e_rd dbg clangd fixes</pre>
</div>
</content>
</entry>
<entry>
<title>Add guards around std library headers (#3013)</title>
<updated>2026-01-05T11:50:45+00:00</updated>
<author>
<name>kipcode66</name>
<email>kipcode66@gmail.com</email>
</author>
<published>2026-01-05T11:50:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=1d2a0d956851e10549c56be039fd42f6f0937802'/>
<id>1d2a0d956851e10549c56be039fd42f6f0937802</id>
<content type='text'>
* Last fix for standard compiler error

* adding define guards around headers

* rename cmath.h and climits.h to cmath and climits respectively

* renaming cstdarg.h to cstdarg

* renaming cstdlib.h to cstdlib

* renaming cstring.h to cstring

* renaming cstdio.h to cstdio

* renaming cmath locale ctype

* renaming stdarg string and va_list

* renaming cstddef

* renaming stdio stddef stdlib

* renaming algorithm, functional, iterator, memory, and utility

* renaming bitset, cstdint, limits, and stdint

* renaming new and type_traits

* update quote includes for standard library headers to angle bracket includes</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Last fix for standard compiler error

* adding define guards around headers

* rename cmath.h and climits.h to cmath and climits respectively

* renaming cstdarg.h to cstdarg

* renaming cstdlib.h to cstdlib

* renaming cstring.h to cstring

* renaming cstdio.h to cstdio

* renaming cmath locale ctype

* renaming stdarg string and va_list

* renaming cstddef

* renaming stdio stddef stdlib

* renaming algorithm, functional, iterator, memory, and utility

* renaming bitset, cstdint, limits, and stdint

* renaming new and type_traits

* update quote includes for standard library headers to angle bracket includes</pre>
</div>
</content>
</entry>
<entry>
<title>msl_c mostly matching for wii/shield (#2994)</title>
<updated>2025-12-25T00:54:21+00:00</updated>
<author>
<name>TakaRikka</name>
<email>38417346+TakaRikka@users.noreply.github.com</email>
</author>
<published>2025-12-25T00:54:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=cefe919b8d39cb5b60d79b1dc7452e80abdf9657'/>
<id>cefe919b8d39cb5b60d79b1dc7452e80abdf9657</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Clean up code, remove fakematches, add UNUSED, enable warnings (#2992)</title>
<updated>2025-12-23T23:53:10+00:00</updated>
<author>
<name>LagoLunatic</name>
<email>LagoLunatic@users.noreply.github.com</email>
</author>
<published>2025-12-23T23:53:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/tp/commit/?id=877889c5105e59ee3aa4e57e53d3b0c5ffcfca77'/>
<id>877889c5105e59ee3aa4e57e53d3b0c5ffcfca77</id>
<content type='text'>
* Remove NDEBUG_DEFINED fakematch, clean up getName temps

* Fix ifdef

* Fix bad JSystem pch ifdef breaking decomp.me

* Remove Acch Chk fakematches

* Private Acch fields

* Fix some clangd errors in headers

* Add UNUSED macro for matching debug parameters

* Enable clangd unused-parameter warning

* Remove extern from initializers

Probably added by dol2asm?

* Fix process profile definitions

* Remove leftover dol2asm address comments

* Remove some unnecessary double casts

* Enable some more clangd warnings

* Fix missing usages of fopAcM_ct

* Fix wrong enum usage

* Fix more fakematches</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Remove NDEBUG_DEFINED fakematch, clean up getName temps

* Fix ifdef

* Fix bad JSystem pch ifdef breaking decomp.me

* Remove Acch Chk fakematches

* Private Acch fields

* Fix some clangd errors in headers

* Add UNUSED macro for matching debug parameters

* Enable clangd unused-parameter warning

* Remove extern from initializers

Probably added by dol2asm?

* Fix process profile definitions

* Remove leftover dol2asm address comments

* Remove some unnecessary double casts

* Enable some more clangd warnings

* Fix missing usages of fopAcM_ct

* Fix wrong enum usage

* Fix more fakematches</pre>
</div>
</content>
</entry>
</feed>
