<feed xmlns='http://www.w3.org/2005/Atom'>
<title>oot/src/code/z_message.c, branch main</title>
<subtitle>Decompilation of The Legend of Zelda: Ocarina of Time</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/'/>
<entry>
<title>Fixups around textboxSegment (#2743)</title>
<updated>2026-05-03T17:05:10+00:00</updated>
<author>
<name>Dragorn421</name>
<email>Dragorn421@users.noreply.github.com</email>
</author>
<published>2026-05-03T17:05:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=7054e8fe79ef4392a37ddb985441897eed57ffde'/>
<id>7054e8fe79ef4392a37ddb985441897eed57ffde</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Name message start frame count variable (#2673)</title>
<updated>2026-02-14T20:57:04+00:00</updated>
<author>
<name>Jordan Longstaff</name>
<email>JordanLongstaff@users.noreply.github.com</email>
</author>
<published>2026-02-14T20:57:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=c66f593496263a05207daef9cec2c63bf537b26b'/>
<id>c66f593496263a05207daef9cec2c63bf537b26b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename AT `effect` to `hitSpecialEffect` (#2637)</title>
<updated>2025-06-20T08:12:45+00:00</updated>
<author>
<name>Dragorn421</name>
<email>Dragorn421@users.noreply.github.com</email>
</author>
<published>2025-06-20T08:12:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=04a92708cf6d78e0f2dc72c50948eaa2872d7d5e'/>
<id>04a92708cf6d78e0f2dc72c50948eaa2872d7d5e</id>
<content type='text'>
* Rename AT `effect` to `hitSpecialEffect`

* bss</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Rename AT `effect` to `hitSpecialEffect`

* bss</pre>
</div>
</content>
</entry>
<entry>
<title>Document `Save.cutsceneIndex` and adjacent data / code (#2286)</title>
<updated>2025-06-17T13:54:52+00:00</updated>
<author>
<name>Leonid Kapitonov</name>
<email>Feacur@gmail.com</email>
</author>
<published>2025-06-17T13:54:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=b11fdab792f1e7c4b71cfa7568963fad1c7d742d'/>
<id>b11fdab792f1e7c4b71cfa7568963fad1c7d742d</id>
<content type='text'>
* introduce `enum CutsceneIndex` as a first step

* crudely rename `enum CutsceneIndex` entries

* run `check_format.py ...` separetely

so that it doesn't clutter previous commit. still, allowing `clangd LSP` to run format-on-save yields inconsistent results for me with the project's tooling, especially for header files

* apply a draft PR suggestion

Co-authored-by: mzxrules &lt;mzxrules@gmail.com&gt;

* rename `CS_INDEX_*` with PR suggestions

and some additional observations
reverified with
&gt; `check_format.py ...`
&gt; `make ...`

additionally:
- current clang-format lacks a rule for trailing commas
- compiler says about them `cfe: Warning 624`

* improve `CS_INDEX_*` naming, rem `ENTRANCE` suffix

https://github.com/zeldaret/oot/pull/2286#discussion_r1829165205

reverified with
&gt; `check_format.py ...`
&gt; `make ...`

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/4/console

hmm, i do need this automation locally to

* apply a PR suggestion

https://github.com/zeldaret/oot/pull/2286#discussion_r1829219841

* remove redundant comments, fix the header comment

and add a comment chunk from https://github.com/zeldaret/oot/pull/2286#discussion_r1829108940

* rename the flag for freeing `nextCutsceneIndex`

* rename the flag for automatic `sceneLayer` calc

it gets assigned to the `nextCutsceneIndex`,
so `CS_INDEX_NONE` name was misleading

* use explicit scene layer names instead of numbers

* ok, now the last two `CS_INDEX_*` are less unknown

the purpose of `CS_INDEX_BARRIER` is not quite clear still

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/14/console

* run `fix_bss` locally

`ntsc-1.2` refused to comply though

* revert all local to the branch bss shifts

* ugh, use defines instead of an enum

probably size of enum entries doesn't match well? originally these were
just numbers. besides, not like it's a real enumeration from zero to a
value or some bit flags

* still, add a BSS pragma for `z_demo.c`

* apply review changes

* factor out a cutscene layer formula

* give scene layers names throughout code

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/32/console

* tweak `CS_INDEX` descriptions

* apply PR review suggestions

* rename "auto" -&gt; "default"

* apply PR review suggestions

https://github.com/zeldaret/oot/pull/2286#discussion_r1868693980

essentially reverts 106cb1021be88f745ee303838c11c7d7cbf9c79d, except for 2 generic `z_scene.c` lines

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/77/console

* Apply suggestions from code review

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;
Co-authored-by: mzxrules &lt;mzxrules@gmail.com&gt;

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/175/console

* Move CS_INDEX_* macros to z64save.h, with the definition of gSaveContext.save.cutsceneIndex

* `#define CS_INDEX_D 0xFFFD` and co.

Co-authored-by: cadmic &lt;cadmic24@gmail.com&gt;

* add comment on CS_INDEX_D

* review

* CS_INDEX_NONE is back

* bss

* expand comment about 0xFFFD

* fix comment about 0xFFFF usage

* review

---------

Co-authored-by: mzxrules &lt;mzxrules@gmail.com&gt;
Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;
Co-authored-by: cadmic &lt;cadmic24@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* introduce `enum CutsceneIndex` as a first step

* crudely rename `enum CutsceneIndex` entries

* run `check_format.py ...` separetely

so that it doesn't clutter previous commit. still, allowing `clangd LSP` to run format-on-save yields inconsistent results for me with the project's tooling, especially for header files

* apply a draft PR suggestion

Co-authored-by: mzxrules &lt;mzxrules@gmail.com&gt;

* rename `CS_INDEX_*` with PR suggestions

and some additional observations
reverified with
&gt; `check_format.py ...`
&gt; `make ...`

additionally:
- current clang-format lacks a rule for trailing commas
- compiler says about them `cfe: Warning 624`

* improve `CS_INDEX_*` naming, rem `ENTRANCE` suffix

https://github.com/zeldaret/oot/pull/2286#discussion_r1829165205

reverified with
&gt; `check_format.py ...`
&gt; `make ...`

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/4/console

hmm, i do need this automation locally to

* apply a PR suggestion

https://github.com/zeldaret/oot/pull/2286#discussion_r1829219841

* remove redundant comments, fix the header comment

and add a comment chunk from https://github.com/zeldaret/oot/pull/2286#discussion_r1829108940

* rename the flag for freeing `nextCutsceneIndex`

* rename the flag for automatic `sceneLayer` calc

it gets assigned to the `nextCutsceneIndex`,
so `CS_INDEX_NONE` name was misleading

* use explicit scene layer names instead of numbers

* ok, now the last two `CS_INDEX_*` are less unknown

the purpose of `CS_INDEX_BARRIER` is not quite clear still

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/14/console

* run `fix_bss` locally

`ntsc-1.2` refused to comply though

* revert all local to the branch bss shifts

* ugh, use defines instead of an enum

probably size of enum entries doesn't match well? originally these were
just numbers. besides, not like it's a real enumeration from zero to a
value or some bit flags

* still, add a BSS pragma for `z_demo.c`

* apply review changes

* factor out a cutscene layer formula

* give scene layers names throughout code

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/32/console

* tweak `CS_INDEX` descriptions

* apply PR review suggestions

* rename "auto" -&gt; "default"

* apply PR review suggestions

https://github.com/zeldaret/oot/pull/2286#discussion_r1868693980

essentially reverts 106cb1021be88f745ee303838c11c7d7cbf9c79d, except for 2 generic `z_scene.c` lines

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/77/console

* Apply suggestions from code review

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;
Co-authored-by: mzxrules &lt;mzxrules@gmail.com&gt;

* apply Jenkins fixes

https://jenkins.deco.mp/job/OOT/job/PR-2286/175/console

* Move CS_INDEX_* macros to z64save.h, with the definition of gSaveContext.save.cutsceneIndex

* `#define CS_INDEX_D 0xFFFD` and co.

Co-authored-by: cadmic &lt;cadmic24@gmail.com&gt;

* add comment on CS_INDEX_D

* review

* CS_INDEX_NONE is back

* bss

* expand comment about 0xFFFD

* fix comment about 0xFFFF usage

* review

---------

Co-authored-by: mzxrules &lt;mzxrules@gmail.com&gt;
Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;
Co-authored-by: cadmic &lt;cadmic24@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Rename `acDmgInfo.effect` -&gt; `hitBacklash` (#2555)</title>
<updated>2025-06-17T09:23:49+00:00</updated>
<author>
<name>Dragorn421</name>
<email>Dragorn421@users.noreply.github.com</email>
</author>
<published>2025-06-17T09:23:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=e8c59385bc4652a2d51dc0f4cbea3f7078926eb3'/>
<id>e8c59385bc4652a2d51dc0f4cbea3f7078926eb3</id>
<content type='text'>
* CollisionCheckInfo.atHitEffect -&gt; atHitBacklash

* ColliderElementDamageInfoAC.effect -&gt; hitBacklash

* add HIT_BACKLASH_ enum

* bss

* bss

* bss

* bss

* bss

* Update comments</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* CollisionCheckInfo.atHitEffect -&gt; atHitBacklash

* ColliderElementDamageInfoAC.effect -&gt; hitBacklash

* add HIT_BACKLASH_ enum

* bss

* bss

* bss

* bss

* bss

* Update comments</pre>
</div>
</content>
</entry>
<entry>
<title>Macroify PlaySfxGeneral calls: introduce `SFX_PLAY_CENTERED` and `SFX_PLAY_AT_POS` (#2633)</title>
<updated>2025-06-15T22:28:37+00:00</updated>
<author>
<name>Dragorn421</name>
<email>Dragorn421@users.noreply.github.com</email>
</author>
<published>2025-06-15T22:28:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=fd1ea6bc1a0682b887977041e2759fa1f2af079a'/>
<id>fd1ea6bc1a0682b887977041e2759fa1f2af079a</id>
<content type='text'>
* Add `SFX_PLAY_CENTERED`

* Add `SFX_PLAY_AT_POS`</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add `SFX_PLAY_CENTERED`

* Add `SFX_PLAY_AT_POS`</pre>
</div>
</content>
</entry>
<entry>
<title>Remove "z64" prefix from all headers (#2518)</title>
<updated>2025-06-04T18:38:33+00:00</updated>
<author>
<name>fig02</name>
<email>fig02srl@gmail.com</email>
</author>
<published>2025-06-04T18:38:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=28cc9d68cfe4a037eb232d5465b84a943539bca3'/>
<id>28cc9d68cfe4a037eb232d5465b84a943539bca3</id>
<content type='text'>
* z64 - a

* z64 - b

* z64 - c

* z64 - d

* z64 - e

* z64 - f

* z64 - g

* z64 - h

* z64 - i

* z64 - l

* z64 - m

* z64 - o

* z64 - p

* z64 - q

* z64 - r

* z64 - s

* z64 - t

* z64 - v

* restore file

* fix merge

* fix merge

---------

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* z64 - a

* z64 - b

* z64 - c

* z64 - d

* z64 - e

* z64 - f

* z64 - g

* z64 - h

* z64 - i

* z64 - l

* z64 - m

* z64 - o

* z64 - p

* z64 - q

* z64 - r

* z64 - s

* z64 - t

* z64 - v

* restore file

* fix merge

* fix merge

---------

Co-authored-by: Dragorn421 &lt;Dragorn421@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>New assets system (#2481)</title>
<updated>2025-05-17T23:29:09+00:00</updated>
<author>
<name>Dragorn421</name>
<email>Dragorn421@users.noreply.github.com</email>
</author>
<published>2025-05-17T23:29:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=1e556e3a3de0a485837a1277d82d765c1be690f7'/>
<id>1e556e3a3de0a485837a1277d82d765c1be690f7</id>
<content type='text'>
* wip: New assets system tm

Builds gc-eu-mq-dbg OK from clean after
1) make setup
2) python3 -m tools.assets.extract -j
3) replace 0x80A8E610 with sShadowTex in extracted/gc-eu-mq-dbg/assets/overlays/ovl_En_Jsjutan/sShadowMaterialDL.inc.c
4) make various symbols in extracted data like sTex static

* use variables from config.yml for gMtxClear and sShadowTex addresses

* Write source with static for overlays using `HACK_IS_STATIC_ON` hack

* gc-eu-mq-dbg OK from clean with `make setup &amp;&amp; make`

* implement more skeleton-related types, cleanups, fixups

* fix extracted data to no longer produce compilation warnings

* implement more of RoomShapeImage types

* yeet XmlPath from ExternalFile usage

* Implement PlayerAnimationDataResource (link_animetion data)

* fix csdis CS_TIME extra arg

* dmadata file names no longer hardcoded for gc-eu-mq-dbg

* ntsc-1.0 OK

* xml fixes

* slightly improve standard output

* rm extract_assets.py

* generate and use Limb enums (TODO: check Skin skels and implement for Curve skels)

* handle dependencies between xmls

* introduce RawPointers xml attribute to ignore specific pointers and keep them raw

* add tools/extract_assets.sh

* fixups

* only extract if xmls changed or if -f (force) is used

* fixups, gc-eu OK

* all versions OK

* check attributes of xml resources elements

* Implement legacy skelanime resources

* fix ASSET_FILES_BIN_EXTRACTED/COMMITTED: look for .u8.bin specifically instead of just .bin

* implement JFIFResource

* fix png/jpg wildcards: look specifically for .u64.png .u32.png .u64.jpg

* Makefile: Add rules to build .png, .bin and .jpg in assets/ too

* start writing actual docs

* extract sTransCircleDL and sTransWipeDL

* misc cleanup/fixes, pygfxd 1.0.3

* refactor CDataExt.set_write callback args to use a dataclass

* Move {} to in-source

* misc

* more progress on spec

* fix missing braces in n64dd_error_textures.c

* finish xml spec doc

* assets xmls fixes

* some cleanup, use `gNameTex_WIDTH/HEIGHT` macros in dlists

* handle hackmode_syotes_room, fix compile

* C build_from_png

* rm tools/assets/bin2c

* rm ZAPD

* format

* remove rule to generate dmadata_table.py

* CC0 license (and some import cleanup)

* dont try to build zapd (rmd)

* simplify palettes with single user (ci images with a non-shared palette)

* add docs on how images are handled

* bss

* allow -j N

* fix n64texconv python bindings memory management

* move -j at the end of calling extraction script

* with -j, update last_extracts.json as each job completes rather than only if all complete

* make interrupting less jank by making child processes ignore sigint

* use enum names in `SCENE_CMD_SKYBOX_SETTINGS`

* `multiprocessing.get_context("fork")`

* import rich, except ImportError s

* fix optional rich usage

* .bss

* .bss

* .bss

* assets extraction: -j -&gt; -j$(N_THREADS)

* .bss

* change LIMB_NONE/MAX defaults to be FILE_OFFSET instead of SKELNAME

* 0XHEX -&gt; 0xHEX

* fix bss

* Proper includes for assets

mostly proper, some includes like dlists resources always causing a sys_matrix.h include (when not every dlist references gIdentityMtx) could be done better

* rm z64.h

* rm z64.h take two

* bss

* Make .u64 suffix for pngs optional

* fixup: rm .u64 suffix from n64dd image paths

* Remove elemtype suffixes from .bin and .jpg files

* Update images.md

* some build_from_png cleanup, more error handling, comments

* Handle skybox textures

Introduce "sub-format" suffix for pngs, with sub-formats split_lo and split_hi being used for skybox textures

* fixup for older python

* improve collision output some

* fully use SURFACETYPE[01] macros in writing extracted surface types

* use WATERBOX_PROPERTIES in extracted waterboxes

* some SceneCommandsResource cleanup

* format EnvLightSettingsList output</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* wip: New assets system tm

Builds gc-eu-mq-dbg OK from clean after
1) make setup
2) python3 -m tools.assets.extract -j
3) replace 0x80A8E610 with sShadowTex in extracted/gc-eu-mq-dbg/assets/overlays/ovl_En_Jsjutan/sShadowMaterialDL.inc.c
4) make various symbols in extracted data like sTex static

* use variables from config.yml for gMtxClear and sShadowTex addresses

* Write source with static for overlays using `HACK_IS_STATIC_ON` hack

* gc-eu-mq-dbg OK from clean with `make setup &amp;&amp; make`

* implement more skeleton-related types, cleanups, fixups

* fix extracted data to no longer produce compilation warnings

* implement more of RoomShapeImage types

* yeet XmlPath from ExternalFile usage

* Implement PlayerAnimationDataResource (link_animetion data)

* fix csdis CS_TIME extra arg

* dmadata file names no longer hardcoded for gc-eu-mq-dbg

* ntsc-1.0 OK

* xml fixes

* slightly improve standard output

* rm extract_assets.py

* generate and use Limb enums (TODO: check Skin skels and implement for Curve skels)

* handle dependencies between xmls

* introduce RawPointers xml attribute to ignore specific pointers and keep them raw

* add tools/extract_assets.sh

* fixups

* only extract if xmls changed or if -f (force) is used

* fixups, gc-eu OK

* all versions OK

* check attributes of xml resources elements

* Implement legacy skelanime resources

* fix ASSET_FILES_BIN_EXTRACTED/COMMITTED: look for .u8.bin specifically instead of just .bin

* implement JFIFResource

* fix png/jpg wildcards: look specifically for .u64.png .u32.png .u64.jpg

* Makefile: Add rules to build .png, .bin and .jpg in assets/ too

* start writing actual docs

* extract sTransCircleDL and sTransWipeDL

* misc cleanup/fixes, pygfxd 1.0.3

* refactor CDataExt.set_write callback args to use a dataclass

* Move {} to in-source

* misc

* more progress on spec

* fix missing braces in n64dd_error_textures.c

* finish xml spec doc

* assets xmls fixes

* some cleanup, use `gNameTex_WIDTH/HEIGHT` macros in dlists

* handle hackmode_syotes_room, fix compile

* C build_from_png

* rm tools/assets/bin2c

* rm ZAPD

* format

* remove rule to generate dmadata_table.py

* CC0 license (and some import cleanup)

* dont try to build zapd (rmd)

* simplify palettes with single user (ci images with a non-shared palette)

* add docs on how images are handled

* bss

* allow -j N

* fix n64texconv python bindings memory management

* move -j at the end of calling extraction script

* with -j, update last_extracts.json as each job completes rather than only if all complete

* make interrupting less jank by making child processes ignore sigint

* use enum names in `SCENE_CMD_SKYBOX_SETTINGS`

* `multiprocessing.get_context("fork")`

* import rich, except ImportError s

* fix optional rich usage

* .bss

* .bss

* .bss

* assets extraction: -j -&gt; -j$(N_THREADS)

* .bss

* change LIMB_NONE/MAX defaults to be FILE_OFFSET instead of SKELNAME

* 0XHEX -&gt; 0xHEX

* fix bss

* Proper includes for assets

mostly proper, some includes like dlists resources always causing a sys_matrix.h include (when not every dlist references gIdentityMtx) could be done better

* rm z64.h

* rm z64.h take two

* bss

* Make .u64 suffix for pngs optional

* fixup: rm .u64 suffix from n64dd image paths

* Remove elemtype suffixes from .bin and .jpg files

* Update images.md

* some build_from_png cleanup, more error handling, comments

* Handle skybox textures

Introduce "sub-format" suffix for pngs, with sub-formats split_lo and split_hi being used for skybox textures

* fixup for older python

* improve collision output some

* fully use SURFACETYPE[01] macros in writing extracted surface types

* use WATERBOX_PROPERTIES in extracted waterboxes

* some SceneCommandsResource cleanup

* format EnvLightSettingsList output</pre>
</div>
</content>
</entry>
<entry>
<title>Delete macros.h; Delete global.h (#2516)</title>
<updated>2025-04-27T16:48:11+00:00</updated>
<author>
<name>fig02</name>
<email>fig02srl@gmail.com</email>
</author>
<published>2025-04-27T16:48:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=f7a270655bd974242a286856bd56b490a998ac44'/>
<id>f7a270655bd974242a286856bd56b490a998ac44</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add array_count.h (#2514)</title>
<updated>2025-04-26T22:17:02+00:00</updated>
<author>
<name>fig02</name>
<email>fig02srl@gmail.com</email>
</author>
<published>2025-04-26T22:17:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/oot/commit/?id=bed76a3bf3cd89456e3331b2c2b50dbc5f79fe48'/>
<id>bed76a3bf3cd89456e3331b2c2b50dbc5f79fe48</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
