<feed xmlns='http://www.w3.org/2005/Atom'>
<title>af/tools, branch main</title>
<subtitle>Decompilation of Animal Forest (Dōbutsu no Mori, N64)</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/'/>
<entry>
<title>Generate decomp.dev progress reports (#249)</title>
<updated>2026-08-16T17:56:24+00:00</updated>
<author>
<name>Anghelo Carvajal</name>
<email>angheloalf95@gmail.com</email>
</author>
<published>2026-08-16T17:56:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be'/>
<id>4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be</id>
<content type='text'>
* Generate decomp.dev progress reports

- Wire up CI to generate decomp.dev progress reports (using the objdiff report format) and upload them as GHA artifacts, by using `mapfile_parser`.
- This also adds a `decomp.yaml` file, which is used by `mapfile_parser` to generate the objdiff reports.
- The `progress.py` script used to locally visualize the current progress has been updated to parse objdiff reports too.
- `mapfile_parser` 2.13.0 or above is now required.
- Delete the old `upload_frogress.py` script.

Once we have this we can create an af entry in [decomp.dev](https://decomp.dev/).
I'll talk with Encounter to migrate the old frogress progress into decomp.dev too

* Activate venv</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Generate decomp.dev progress reports

- Wire up CI to generate decomp.dev progress reports (using the objdiff report format) and upload them as GHA artifacts, by using `mapfile_parser`.
- This also adds a `decomp.yaml` file, which is used by `mapfile_parser` to generate the objdiff reports.
- The `progress.py` script used to locally visualize the current progress has been updated to parse objdiff reports too.
- `mapfile_parser` 2.13.0 or above is now required.
- Delete the old `upload_frogress.py` script.

Once we have this we can create an af entry in [decomp.dev](https://decomp.dev/).
I'll talk with Encounter to migrate the old frogress progress into decomp.dev too

* Activate venv</pre>
</div>
</content>
</entry>
<entry>
<title>This time for real: Change the CI system from Jenkins to Github Actions (GHA) like we did for OoT and MM (#248)</title>
<updated>2026-08-07T02:12:28+00:00</updated>
<author>
<name>Anghelo Carvajal</name>
<email>angheloalf95@gmail.com</email>
</author>
<published>2026-08-07T02:12:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=25843830a97f88a0b21909c4c584789ea7672bde'/>
<id>25843830a97f88a0b21909c4c584789ea7672bde</id>
<content type='text'>
* Changes the CI system from Jenkins to Github Actions (GHA) like we did for OoT and MM (#246)

I tried to adapt the original jenkinsfile as I could.
One major difference is loosing progress reporting to frogress. frogress is currently deprecated in favor of decomp.dev, and I would like we migrate to decomp.dev somewhat soon, so this should be a big problem.

The mapfiles will be uploaded as an GHA artifact to the Action workflow.

This specific approach to handle GHA for decomp projects was adapted from the one used by the GC/Wii community. It is documented here https://github.com/encounter/dtk-template/blob/main/docs/github_actions.md There's a writeup about this adaptation for N64 projects [here](https://github.com/AngheloAlf/drmario64/pull/19).

Also relevant implementations for OoT and MM:
- https://github.com/zeldaret/oot/pull/2742
- https://github.com/zeldaret/mm/pull/1885

* Round of fixes (#247)

* Round of fixes

* Set WARNINGS_CHECK environment variable in CI

* Update .github/workflows/ci.yml

Co-authored-by: Anghelo Carvajal &lt;angheloalf95@gmail.com&gt;

---------

Co-authored-by: emilybrooks &lt;emilybrooksemilybrooks@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Changes the CI system from Jenkins to Github Actions (GHA) like we did for OoT and MM (#246)

I tried to adapt the original jenkinsfile as I could.
One major difference is loosing progress reporting to frogress. frogress is currently deprecated in favor of decomp.dev, and I would like we migrate to decomp.dev somewhat soon, so this should be a big problem.

The mapfiles will be uploaded as an GHA artifact to the Action workflow.

This specific approach to handle GHA for decomp projects was adapted from the one used by the GC/Wii community. It is documented here https://github.com/encounter/dtk-template/blob/main/docs/github_actions.md There's a writeup about this adaptation for N64 projects [here](https://github.com/AngheloAlf/drmario64/pull/19).

Also relevant implementations for OoT and MM:
- https://github.com/zeldaret/oot/pull/2742
- https://github.com/zeldaret/mm/pull/1885

* Round of fixes (#247)

* Round of fixes

* Set WARNINGS_CHECK environment variable in CI

* Update .github/workflows/ci.yml

Co-authored-by: Anghelo Carvajal &lt;angheloalf95@gmail.com&gt;

---------

Co-authored-by: emilybrooks &lt;emilybrooksemilybrooks@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Spimdisasm update (#243)</title>
<updated>2025-09-05T00:56:01+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2025-09-05T00:56:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=61a38830b94c28b3fcead3e22161c3dd621d25c9'/>
<id>61a38830b94c28b3fcead3e22161c3dd621d25c9</id>
<content type='text'>
* git subrepo pull tools/asm-processor

subrepo:
  subdir:   "tools/asm-processor"
  merged:   "5c3984fc"
upstream:
  origin:   "git@github.com:simonlindholm/asm-processor.git"
  branch:   "main"
  commit:   "5c3984fc"
git-subrepo:
  version:  "0.4.9"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "ea10886"

* Fix things needed for new spimdisasm release</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* git subrepo pull tools/asm-processor

subrepo:
  subdir:   "tools/asm-processor"
  merged:   "5c3984fc"
upstream:
  origin:   "git@github.com:simonlindholm/asm-processor.git"
  branch:   "main"
  commit:   "5c3984fc"
git-subrepo:
  version:  "0.4.9"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "ea10886"

* Fix things needed for new spimdisasm release</pre>
</div>
</content>
</entry>
<entry>
<title>m_random_field OK (#241)</title>
<updated>2025-06-04T23:38:23+00:00</updated>
<author>
<name>kuchenmitsahne</name>
<email>25233413+kuchenmitsahne@users.noreply.github.com</email>
</author>
<published>2025-06-04T23:38:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=a4d5910cdb9bed05fa5aea4476a3cf4ef178be06'/>
<id>a4d5910cdb9bed05fa5aea4476a3cf4ef178be06</id>
<content type='text'>
* 25 functions OK

* 10 functions OK

* Add block type and block kind enums/defines

* Formatting/style pass

* Move `FieldMakeBlockType` to `m_field_make`

* Remove unused/duplicate defines

* Split data out for `m_quest` and `m_random_field`; rename data symbols

* Generate `m_random_field.c` and rename function symbols.

* mRF_BlockTypeDirect2GateType, mRF_BlockTypeDirect2GateData OK

* mRF_Type2BlockInfo, mRF_Info2BlockType, mRF_GateType2GateCount, mRF_SearchPond, mRF_Attr2BeastRoadAttr, mRF_CheckBeastRoad OK

* mFI_GetUnitCol OK; mRF_PrintDebug and mRF_BlockInf2CheckBeastRoad OK (pending data import).

* Fix `m_random_field` code split; all newly included functions OK

* Fix mRF_Malloc return type; formatting pass

* Name m_random_field_ovl

* Rename data symbols (m_random_field_ovl).

* Rename symbols (all functions named)

* Import data

* Declare overlay segment; rename symbols

* mRF_MakeRandomField OK (all functions matching).

* Extract asset `data_combi_table`

* Clean up mRF_MakeRandomField; document m_field_make.h

* Rename mCoBG_unkStruct-&gt;unk6 as unitAttribute

* Misc cleanup and formatting.

* Rename additional data symbols (m_random_field_ovl).

* Formatting pass

* Improve documentation of BackgroundAttribute enum.

* Formatting pass; add omitted attribute.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 25 functions OK

* 10 functions OK

* Add block type and block kind enums/defines

* Formatting/style pass

* Move `FieldMakeBlockType` to `m_field_make`

* Remove unused/duplicate defines

* Split data out for `m_quest` and `m_random_field`; rename data symbols

* Generate `m_random_field.c` and rename function symbols.

* mRF_BlockTypeDirect2GateType, mRF_BlockTypeDirect2GateData OK

* mRF_Type2BlockInfo, mRF_Info2BlockType, mRF_GateType2GateCount, mRF_SearchPond, mRF_Attr2BeastRoadAttr, mRF_CheckBeastRoad OK

* mFI_GetUnitCol OK; mRF_PrintDebug and mRF_BlockInf2CheckBeastRoad OK (pending data import).

* Fix `m_random_field` code split; all newly included functions OK

* Fix mRF_Malloc return type; formatting pass

* Name m_random_field_ovl

* Rename data symbols (m_random_field_ovl).

* Rename symbols (all functions named)

* Import data

* Declare overlay segment; rename symbols

* mRF_MakeRandomField OK (all functions matching).

* Extract asset `data_combi_table`

* Clean up mRF_MakeRandomField; document m_field_make.h

* Rename mCoBG_unkStruct-&gt;unk6 as unitAttribute

* Misc cleanup and formatting.

* Rename additional data symbols (m_random_field_ovl).

* Formatting pass

* Improve documentation of BackgroundAttribute enum.

* Formatting pass; add omitted attribute.</pre>
</div>
</content>
</entry>
<entry>
<title>Ultralib Update (#233)</title>
<updated>2025-02-22T00:03:51+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2025-02-22T00:03:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=8c6ae625aef6d07741cd8925f422f43ae24b198c'/>
<id>8c6ae625aef6d07741cd8925f422f43ae24b198c</id>
<content type='text'>
* git subrepo pull (merge) lib/ultralib

subrepo:
  subdir:   "lib/ultralib"
  merged:   "74f0eee"
upstream:
  origin:   "git@github.com:decompals/ultralib.git"
  branch:   "main"
  commit:   "2717d45"
git-subrepo:
  version:  "0.4.9"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "cce3d93"

* New ultralib fixes

* Update some includes in tools

* git subrepo commit (merge) lib/ultralib

subrepo:
  subdir:   "lib/ultralib"
  merged:   "3a702eaf"
upstream:
  origin:   "git@github.com:decompals/ultralib.git"
  branch:   "main"
  commit:   "48f9f908"
git-subrepo:
  version:  "0.4.9"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "ea10886"

* Update warnings file</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* git subrepo pull (merge) lib/ultralib

subrepo:
  subdir:   "lib/ultralib"
  merged:   "74f0eee"
upstream:
  origin:   "git@github.com:decompals/ultralib.git"
  branch:   "main"
  commit:   "2717d45"
git-subrepo:
  version:  "0.4.9"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "cce3d93"

* New ultralib fixes

* Update some includes in tools

* git subrepo commit (merge) lib/ultralib

subrepo:
  subdir:   "lib/ultralib"
  merged:   "3a702eaf"
upstream:
  origin:   "git@github.com:decompals/ultralib.git"
  branch:   "main"
  commit:   "48f9f908"
git-subrepo:
  version:  "0.4.9"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "ea10886"

* Update warnings file</pre>
</div>
</content>
</entry>
<entry>
<title>Graph OK (#236)</title>
<updated>2025-01-03T20:05:50+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2025-01-03T20:05:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=f319c8125023f966901131c7ebe479a6f15a750d'/>
<id>f319c8125023f966901131c7ebe479a6f15a750d</id>
<content type='text'>
* graph_proc

* game_get_next_game_dlftbl

* graph_ct

* func_800D38E0_jp

* func_800D3C94_jp

* graph_dt

* graph_main

* graph_setup_double_buffer

* graph_task_set00 WIP

* graph_draw_finish

* func_800D3E40_jp

* func_800D3E14_jp

* Some cleanup

* Fix m2ctx.py

* graph_task_set00</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* graph_proc

* game_get_next_game_dlftbl

* graph_ct

* func_800D38E0_jp

* func_800D3C94_jp

* graph_dt

* graph_main

* graph_setup_double_buffer

* graph_task_set00 WIP

* graph_draw_finish

* func_800D3E40_jp

* func_800D3E14_jp

* Some cleanup

* Fix m2ctx.py

* graph_task_set00</pre>
</div>
</content>
</entry>
<entry>
<title>`ac_house_goki` OK (#229)</title>
<updated>2024-12-07T19:27:42+00:00</updated>
<author>
<name>Leonid Kapitonov</name>
<email>Feacur@gmail.com</email>
</author>
<published>2024-12-07T19:27:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=8e5451997741a70edf39d7840074f262005b0988'/>
<id>8e5451997741a70edf39d7840074f262005b0988</id>
<content type='text'>
* prepare unknown size

* move `.data` to the C side

* remove redundant headers

* aHG_actor_ct OK

* func_80A83770_jp OK (rename to `aHG_actor_dt`)

* aHG_actor_move OK

- fix `mCoBG_CheckResult` description and comments
- extend `MyRoomClip` and fix offsets in comments

* func_80A83780_jp OK

* func_80A83930_jp OK

* func_80A83994_jp OK

* func_80A83A00_jp OK

* func_80A8401C_jp OK

* func_80A8409C_jp OK (rename to `aHG_setup_action`)

* aHG_actor_draw OK

* func_80A83D4C_jp OK

* func_80A83A24_jp OK

* name HG models

* put static HG data into the functions

* func_80A837C4_jp OK

* add notes and clean up a bit

* apply a suggestion by @hensldm

* remove ASM pragmas

* extract assets</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* prepare unknown size

* move `.data` to the C side

* remove redundant headers

* aHG_actor_ct OK

* func_80A83770_jp OK (rename to `aHG_actor_dt`)

* aHG_actor_move OK

- fix `mCoBG_CheckResult` description and comments
- extend `MyRoomClip` and fix offsets in comments

* func_80A83780_jp OK

* func_80A83930_jp OK

* func_80A83994_jp OK

* func_80A83A00_jp OK

* func_80A8401C_jp OK

* func_80A8409C_jp OK (rename to `aHG_setup_action`)

* aHG_actor_draw OK

* func_80A83D4C_jp OK

* func_80A83A24_jp OK

* name HG models

* put static HG data into the functions

* func_80A837C4_jp OK

* add notes and clean up a bit

* apply a suggestion by @hensldm

* remove ASM pragmas

* extract assets</pre>
</div>
</content>
</entry>
<entry>
<title>`ac_radio` OK (#226)</title>
<updated>2024-11-22T14:30:14+00:00</updated>
<author>
<name>Leonid Kapitonov</name>
<email>Feacur@gmail.com</email>
</author>
<published>2024-11-22T14:30:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=0bab7e592c3dcbd4207c2c57c06819ec2b7c1bfa'/>
<id>0bab7e592c3dcbd4207c2c57c06819ec2b7c1bfa</id>
<content type='text'>
* prepare unknown size

* move `.data` to the C side

* aRAD_actor_ct OK

* func_80A76B2C_jp OK

* func_80A769E4_jp OK

* aRAD_actor_init OK

* func_80A76958_jp OK (rename to `aRAD_actor_dt`)

* func_80A76A30_jp OK

* func_80A76B4C_jp OK

* aRAD_actor_draw OK

* remove asm pragmas

* document `ac_radio` actions

* rename `func_80A769E4_jp` in accord with aKAG's

* rename `func_80A76B4C_jp` -&gt; `aRAD_actor_move`

* use `StructureActor` as others do

* apply review suggestions

* seems to match too</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* prepare unknown size

* move `.data` to the C side

* aRAD_actor_ct OK

* func_80A76B2C_jp OK

* func_80A769E4_jp OK

* aRAD_actor_init OK

* func_80A76958_jp OK (rename to `aRAD_actor_dt`)

* func_80A76A30_jp OK

* func_80A76B4C_jp OK

* aRAD_actor_draw OK

* remove asm pragmas

* document `ac_radio` actions

* rename `func_80A769E4_jp` in accord with aKAG's

* rename `func_80A76B4C_jp` -&gt; `aRAD_actor_move`

* use `StructureActor` as others do

* apply review suggestions

* seems to match too</pre>
</div>
</content>
</entry>
<entry>
<title>properly handle swapped textures (#215)</title>
<updated>2024-09-25T18:50:06+00:00</updated>
<author>
<name>emilybrooks</name>
<email>emilybrooksemilybrooks@gmail.com</email>
</author>
<published>2024-09-25T18:50:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=5fb92a5079f8e2ccf67d5593236a62dff6cd3638'/>
<id>5fb92a5079f8e2ccf67d5593236a62dff6cd3638</id>
<content type='text'>
* set up extension

* extension works

* make file stuff

* everything works!

* renamed script</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* set up extension

* extension works

* make file stuff

* everything works!

* renamed script</pre>
</div>
</content>
</entry>
<entry>
<title>Move copied libultra archive to the libultra build folder (#199)</title>
<updated>2024-07-19T18:40:29+00:00</updated>
<author>
<name>Derek Hensley</name>
<email>hensley.derek58@gmail.com</email>
</author>
<published>2024-07-19T18:40:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/af/commit/?id=fbc4e813e567a7cf8d8e87b10f2c2e7437b2d5ef'/>
<id>fbc4e813e567a7cf8d8e87b10f2c2e7437b2d5ef</id>
<content type='text'>
* Combine makefile defines to avoid duplication

* Move libultra archive in build to the libultra folder</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Combine makefile defines to avoid duplication

* Move libultra archive in build to the libultra folder</pre>
</div>
</content>
</entry>
</feed>
