Commit Graph

2562 Commits

Author SHA1 Message Date
Tharo 970af5600a Audio: Fix note values (#2716)
Due to the layout of the pitch_frequencies lookup table, note values
computed in extraction were reflected around middle C (midi note
number 60). This didn't matter for matching, values would successfully
roundtrip. However when using samples in external programs or
converting soundfonts to standard formats the note values would lead
to incorrect playback of sounds. This change corrects the note values
so that external programs correctly infer the pitch of the sound when
played at a particular MIDI key.
2026-03-10 06:22:28 +09:00
Anghelo Carvajal bc6d153a21 Allow atblgen to process sequence_order.in with empty lines in between lines for building on Macos (#2718)
The present changes are a direct copy-paste from https://github.com/zeldaret/mm/pull/1850

This fixes building on macos due to a kinda specific issue with Apple clang.

When trying to build on Macos (specifically MacOS 12, Monteray with Apple clang 13.0.0 (clang-1300.0.29.30), idk if other versions have this issue too) `make` stops with the following error from `atblgen`:
```
Failed to match line 1: ""
regexec error: "regexec() failed to match"
Error: Malformed build/n64-us/assets/audio/sequence_order.in?
```

`atblgen` makes the assumption that the `sequence_order.in` file has no extra data, spaces, empty lines, etc. but the file somehow ends up having empty lines between each line on macos.

This file is created by using the C preprocessor to process `include/tables/sequence_table.h`.
In normal circumstances this file should look like this snip,
```
(Sequence_0,NA_BGM_GENERAL_SFX)
(Sequence_1,NA_BGM_AMBIENCE)
(Sequence_2,NA_BGM_TERMINA_FIELD)
(Sequence_3,NA_BGM_CHASE)
(Sequence_4,NA_BGM_MAJORAS_THEME)
```
but it ends up looking like this instead
```
(Sequence_0,NA_BGM_GENERAL_SFX)

(Sequence_1,NA_BGM_AMBIENCE)

(Sequence_2,NA_BGM_TERMINA_FIELD)

(Sequence_3,NA_BGM_CHASE)

(Sequence_4,NA_BGM_MAJORAS_THEME)
```
which `atblgen` doesn't like.

I believe this happens because there are lines with comments between each macro in [`sequence_table.h`](https://github.com/zeldaret/mm/blob/0877ce4adf28a8e73e05c3c58682273b8bf28749/include/tables/sequence_table.h) and for some reason this Apple clang version decided to preserve those empty lines

The fix just makes `atblgen` skip empty lines.

I threw `atblgen` to valgrind to check the fix was working as intended and noted a bunch of memory that was being free before exit, so I fixed them.

I also noted the tools/audio makefile was not using `OPTFLAGS` when building those tools, so I fixed that too.
2026-03-09 21:04:17 +01:00
Dragorn421 e66e6f8f1d gc-eu-dbg OK (#2700)
* gc-eu-dbg OK

* cleanup/fortify makefile and line_numbers.h changes

* fill segments.csv

* add gc-eu-dbg to Jenkinsfile

* cleanup/fortify dmadata_table.h

* add gc-eu-dbg to readme

* fix checksum check and compressed checksum
2026-03-02 16:45:07 +01:00
Jordan Longstaff 3d51e21020 Finish EnMThunder documentation (#2702)
* Finish `EnMThunder` documentation

* Boolean conversion

* Hex to decimal conversions

* Rename static variables
2026-02-26 09:59:16 +01:00
Dragorn421 ba71ca39d2 Update README and build instructions (#2704)
* Remove libpng from requirements

* Remove unnecessary packages from dockerfile

* Update README

* update binutils and gcc versions in macos build instructions
2026-02-25 14:03:11 +01:00
Tharo d80da36cff Make bool return values of SkelAnime_Update and LinkAnimation_Update clear (#2706)
* Make bool return values of SkelAnime_Update and LinkAnimation_Update clear

* formatting: empty line after decl

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2026-02-25 13:03:13 +01:00
Dragorn421 0491c21475 Use OOT_NTSC instead of OOT_REGION to check for ntsc in gkeep (#2703)
* Use `OOT_NTSC` instead of `OOT_REGION` to check for ntsc in gkeep

* bss
2026-02-24 21:48:21 +01:00
Dragorn421 0d4dbb61a0 Fix F3DEX2 ucode name on N64 versions (not PosLight) (#2701)
* Fix F3DEX2 ucode name on N64 versions (not PosLight)

* put the not-PosLight / PosLight differences under F3DEX_GBI_PL

* revert bss changes
2026-02-22 22:50:27 +01:00
Dragorn421 abdae818bd Fix misc 23 (#2699)
* remove noop macros Fault_SetFontColor Fault_SetCharPad under PLATFORM_N64

* remove duplicate declarations in sfx.h

* use render mode presets more

* decimal for alpha values

* fix some z_camera comments typos

* fix references to preprocess.sh (used to be preprocess.py)

* remove outdated comment on deps in makefile

* code_800AD920 was renamed to z_viszbuf

* fix capitalization typo: gOcarinaofTimeDesignTex -> gOcarinaOfTimeDesignTex

* fix typo: gLinkAdultEyesClosedfTex, gLinkChildEyesClosedfTex -> remove extra f

* fix typo: gCrstalSwitchRedTex, gCrstalSwitchBlueTex -> gCrystal

* fix PARAMS_GET_U amount of bits
2026-02-22 19:08:12 +01:00
Dragorn421 f2cb5ecb2f Assets system: format extracted actor params (and EnDoor params) (#2698)
* Assets system: format extracted actor params (and EnDoor params)

* and actor list too...

* and actor list required inclues too...

* ENDOOR_PARAMS_GENERAL, ENDOOR_PARAMS -> ENDOOR_PARAMS, ENDOOR_PARAMS_NODATA
2026-02-22 18:48:27 +01:00
mzxrules 8b30a77346 z_bg_haka_meganebg documentation pass (#2685)
* document z_bg_haka_meganebg

* Dragorn suggestions and @bug documentation

* i swear i was good at grammar as a child
2026-02-22 09:35:51 +01:00
Jordan Longstaff 6f9b62bd4a Child Ruto Actions Part 5: Speakable (#2619)
* Child Ruto Actions Part 5: Speakable

* Rename to "Speakable Jabu"
2026-02-22 05:21:41 +09:00
Gabriel Ravier 5ab42786f4 Document src/n64dd/n64dd_error_headers.c (#2667)
* Document src/n64dd/n64dd_error_headers.c

* Incorporate feedback from PR review.

(see also https://github.com/zeldaret/oot/pull/2667)

* Put translation of gN64DDLocalizedErrorNumberHeaders[0] in a line comment

(From feedback to https://github.com/zeldaret/oot/pull/2667)
2026-02-21 09:17:30 +01:00
Jordan Longstaff 155e957634 Child Ruto Actions Part 4: Sapphire platform (#2618)
* Child Ruto Actions Part 4: Sapphire platform

* One more function rename
2026-02-21 08:51:38 +01:00
Dragorn421 7e445cde73 EnBox params macros (#2696) 2026-02-20 09:23:49 +01:00
Gabriel Ravier 42242bdf88 Document sys_freeze.[ch] (#2666) 2026-02-18 12:36:07 +01:00
mzxrules b0a03cc1a4 bg_haka_megane documentation pass (#2684)
* document bg_haka_megane

* BGHAKAMEGANE_TYPE_MAX

* dragorn suggestion
2026-02-18 08:15:05 +01:00
mzxrules 1884569a98 bg_haka_trap documentation pass (#2683)
* document pass on bg_haka_trap

* formatting

* suggestions

* dragorn suggestions
2026-02-17 16:09:54 +01:00
mzxrules 3d4e8e32c3 z_bg_haka_zou documentation pass (#2687)
* document z_bg_haka_zou

* suggestions

* dragorn suggestions
2026-02-17 13:39:53 +01:00
Tharo a9a7045e0f sampleconv: Improve WAV SMPL chunk handling, properly handle odd chunk sizes (#2689)
* Read WAV SMPL chunks for note info when INST chunks are not available

* Populate the SMPL chunk on conversion to wav

* Properly handle unaligned (odd) WAV chunk sizes
2026-02-17 12:42:54 +01:00
Tharo 7326d556da Soundfont Compiler: Implement fine-tuning in the final tuning calculation (#2690) 2026-02-17 12:00:11 +01:00
mzxrules 95495d221f Document SysCfb_GetFbPtr bug (#2586)
* Document SysCfb_GetFbPtr bug

* cleaner comment

* fixes

* change wording again
2026-02-17 10:31:54 +01:00
Josh Moody 834b443bbb Document spin attack (#2694) 2026-02-17 00:09:47 +01:00
Tharo dbe1a80541 Commit and split gameplay_keep (#2612)
* Commit and split gameplay_keep

* Remove debugging bits

* format

* bss

* merge gameplay_keep_0x400 into link_textures

* Name some unused NTSC stuff

* Rename files for some of the newly named unused NTSC stuff

* name more gkeep files

* format

* spin_attack

* name fish anims files

* name some eff_ files

* name a bunch more files

* Add underscore in not-final names

* cleanup limb enum names (remove g prefix)

* split gameplay_keep_0x34020.c into gBugCrawlAnim.c + bug_skel.c

* door.h -> door_skel.h

* gArrowNAnim -> gArrowN_Anim

* split arrow_anims into gArrow1_Anim + gArrow2_Anim

* fix merge

* bss

* bss

* Fix bss

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2026-02-16 15:32:37 +01:00
Jordan Longstaff 014eca05fe Fix wrong BGM entry names (#2671) 2026-02-15 08:49:46 +01:00
Jordan Longstaff 5e89618c2e Label EnEiyer as Stinger (#2681)
* Label `EnEiyer` as Stinger

* Change to Ground
2026-02-15 00:48:10 +01:00
Jordan Longstaff c66f593496 Name message start frame count variable (#2673) 2026-02-14 21:57:04 +01:00
Gabriel Ravier bf7af1746d Document EnPubox (#2668) 2026-02-14 16:36:58 +01:00
Jordan Longstaff ebbabb7d91 Document EnWeiyer (#2686)
* Document `EnWeiyer`

* Rename function
2026-02-12 23:22:21 +00:00
Pepe20129 845d6458b0 Commit code assets (#2691)
* Commit code assets

* Have different ifdefs

* Move to code files

* Missed an include

* Prevent code assets from having their source unnecessarily written
2026-01-27 23:23:36 +00:00
Jordan Longstaff fd299cc72b Document BgSpot18Basket (#2688) 2026-01-25 23:39:59 +00:00
Gabriel Ravier eb5dac74d6 Document N64DD data buffer (#2665) 2025-11-20 18:49:16 -05:00
Tharo eb55fc8453 Don't include calling isPrintfInit in iQue debug builds (#2672) 2025-11-19 22:33:09 -05:00
Tharo 9f5ddc518a Explicitly align gfxprint texture data to 8 bytes (#2663) 2025-10-19 11:30:16 -04:00
Pepe20129 b204d6c089 Document Dampé's ghost (#2656)
* Document Dampé

* Format

* Address review

* Format
2025-08-20 10:30:08 +02:00
cadmic 6ecb84097c Fix macOS build for clang 17 (#2657) 2025-08-16 18:25:04 +01:00
Dragorn421 4c2a451b9c Add ENV_LIGHT_SETTINGS_BLEND_RATE_AND_FOG_NEAR_PACK, fix extracted negative blendRate (#2653)
* Add ENV_LIGHT_SETTINGS_BLEND_RATE_AND_FOG_NEAR_PACK, fix extracted negative blendRate

* -> BLEND_RATE_AND_FOG_NEAR
2025-07-15 01:52:22 -04:00
Dragorn421 7158775cea Finish rename scene lists (#2652) 2025-07-15 01:31:41 -04:00
Dragorn421 41adadd85d Pause docs: UIOverlay L/R buttons details (#2650) 2025-07-15 07:10:34 +02:00
Jordan Longstaff 4d2bc68bac Child Ruto Actions Part 3: Boss room (#2602)
* Child Ruto Actions Part 3: Boss room

* Rename action enum members

* Subtle rename of enum members
2025-07-03 16:08:42 +02:00
Jordan Longstaff fd7e88af1e Child Ruto Actions Part 2: First encounter (#2601)
* Child Ruto Actions Part 2: First encounter

* Rename action enum entries

* Rename to Sfx

* Rename "first encounter" to "meeting"
2025-07-03 09:49:27 +02:00
Jordan Longstaff 80c4f33da5 Child Ruto Actions Part 1: Zora's Fountain (#2600)
* Child Ruto Actions Part 1: Zora's Fountain

* Oops, forgot sound effects

* Reformat

* Rename action enum entries

* Suggested changes
2025-06-30 08:41:47 +02:00
Dragorn421 d45353ee33 Cleanup extracted colliders 3: Use HIT_SPECIAL_EFFECT_, HIT_BACKLASH_ names (#2646)
* Cleanup extracted colliders 3: Use `HIT_SPECIAL_EFFECT_`, `HIT_BACKLASH_` names

* revert removing FLARE_DANCER_BODY_DMG (oops)
2025-06-28 18:06:42 -04:00
Dragorn421 b5f980570c Pause docs: UIOverlay quads dimensions (#2644) 2025-06-28 15:23:00 +09:00
Dragorn421 ffd84af543 Fixup docker (#2642)
* Fixup docker

* comma
2025-06-28 08:05:50 +02:00
Dragorn421 88f452af10 Reevaluate player hit response names (#2640)
* PlayerHitResponseType

* PLAYER_HIT_RESPONSE_ICE_TRAP -> FROZEN

* PLAYER_KNOCKBACK_LARGE_SHOCK, PLAYER_HIT_RESPONSE_ELECTRIC_SHOCK -> PLAYER_KNOCKBACK_LARGE_ELECTRIFIED, PLAYER_HIT_RESPONSE_ELECTRIFIED

* damageResponseType -> hitResponseType
2025-06-27 04:45:44 +09:00
Dragorn421 d44c341c2d Camera_KeepOn4 docs 2: RO and RW data (#2632)
* `Camera_KeepOn4` docs 2: RO and RW data

* fix unk_14 rename

* CAM_DATA_UNK_22 -> CAM_DATA_INIT_TIMER
2025-06-26 21:11:38 +02:00
Dragorn421 b7935dad12 Cleanup extracted colliders 2: ARRAY_COUNT (#2643) 2025-06-25 21:20:55 +09:00
Dragorn421 6234d7f2aa Commit objects 1: tp, triforce_spot, umajump, vase, yukabyun, zg (#2634)
* commit object_zg

* commit object_yukabyun

* commit object_vase

* commit object_umajump

* commit object_triforce_spot

* commit object_tp

* fixup1

* format
2025-06-25 13:09:14 +02:00
Dragorn421 affb39624f Pause docs: "uiOverlay" quads (renamed from "InfoPanel") (#2635)
* Pause docs: "InfoPanel" quads

* bss

* rename infoPanelVtx to decorVtx

* rename to uiOverlayVtx / UI_OVERLAY_QUAD_

* fixup
2025-06-25 00:08:26 +02:00