272 Commits

Author SHA1 Message Date
Jordan Longstaff 2b29808f8d Document EnHs and EnHs2 (Carpenter's son) (#2758)
* Document `EnHs` and `EnHs2` (Carpenter's son)

* focusOffset -> sFocusOffset

* Rename tracking flag fields

* Roll back subrepo changes

* Remove comment on trackingFlags

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2026-05-23 09:00:29 +02:00
Dragorn421 4b742bf3cf Assets system: reconcile xml versions using implicit and relative offsets (#2614)
* Assets system: reconcile xml versions using implicit offsets

* simplify

* remove other object_mag xmls

* Introduce relative offsets: `Offset=".+0x421"`, more sizable `ResourceDesc`s, update spec

* fix

* reconcile object_mo xml

* reconcile object_tw xml

* reconcile object_xc xml (and add Tlut="gNameTLUT" to Texture resources)

* reconcile object_fd xml

* reconcile object_kingdodongo xml

* bss

* reconcile gameplay_keep.xml
2026-05-09 20:36:05 +00:00
Dragorn421 7054e8fe79 Fixups around textboxSegment (#2743) 2026-05-03 19:05:10 +02:00
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
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
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
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 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
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
Dragorn421 05a2818557 Assets: Move limb enums into xmls 4 (#2631) 2025-06-15 14:32:54 -04:00
Dragorn421 d3ed137878 Assets: Move limb enums into xmls 3 (#2630) 2025-06-15 13:55:11 -04:00
Dragorn421 2054637cab Name most object_gi_* textures (#2629)
* Name most `object_gi_*` textures

* gGiButterflyTex
2025-06-14 23:06:12 +02:00
Dragorn421 e4e14a6bcf Assets: Move limb enums into xmls 2 (#2626) 2025-06-12 17:23:47 -04:00
Dragorn421 1df6a3ee12 Assets: Move limb enums into xmls 1 (#2625) 2025-06-12 15:46:13 -04:00
Dragorn421 7ddd468ed6 object_zo: finalize, split and commit (#2624) 2025-06-10 19:36:16 -04:00
Dragorn421 dba40d9dc3 Remove Static from xmls (#2616) 2025-06-10 18:20:10 -04:00
Dragorn421 d4a87889ff Commit some assets/overlays/ 2 (#2610)
* Commit some `assets/overlays/` 2

* format
2025-06-09 07:06:46 -04:00
Dragorn421 c418bbb19c Add Vtx[] resources in xmls for (partially) documented assets 10 (#2609)
* Add Vtx[] resources in xmls for (partially) documented assets 10

* bss
2025-06-07 17:57:18 -04:00
Dragorn421 484abb1d39 Add Vtx[] resources in xmls for (partially) documented assets 9 (#2607) 2025-06-08 00:26:59 +09:00
Dragorn421 37a89e340f Add Vtx[] resources in xmls for (partially) documented assets 8 (#2606) 2025-06-07 17:10:36 +02:00
Dragorn421 da40e39c97 Add Vtx[] resources in xmls for (partially) documented assets 7 (#2605)
* Add Vtx[] resources in xmls for (partially) documented assets 7

* bss
2025-06-07 10:51:44 -04:00
Dragorn421 600d680970 Add various undocumented resources in xmls 4 (#2604) 2025-06-07 09:52:23 -04:00
mracsys ed02a9db65 Add additional Bazaar display list definitions (#2494)
* add unreferenced display lists to shop1 room 0 xml

* match naming scheme

* add missed display lists for shop1 room 0
2025-06-06 19:23:01 -04:00
Dragorn421 7a816391bb Remove OutName from xmls (both on File and Texture) (#2596) 2025-06-06 22:07:53 +02:00
Dragorn421 e1fb3a974f Add various undocumented resources in xmls 3 (#2595) 2025-06-06 14:44:13 -04:00
Dragorn421 f73e564817 Add various undocumented resources in xmls 2 (#2594) 2025-06-06 13:24:44 -04:00
Dragorn421 747006fdd4 Add Vtx[] resources in xmls for (partially) documented assets 5 (#2587) 2025-06-05 21:38:01 -04:00
Dragorn421 3435ebe216 Add Vtx[] resources in xmls for (partially) documented assets 6 (#2588) 2025-06-05 21:27:18 -04:00
Dragorn421 a750282d2d Add various undocumented resources in xmls 1 (#2589)
* Add various undocumented resources in xmls 1

* bss
2025-06-05 20:24:29 -04:00
Dragorn421 f51e3e8ab2 Add Vtx[] resources in xmls for (partially) documented assets 4 (#2567) 2025-06-03 23:39:06 -04:00
Dragorn421 db2c08a51f Add Vtx[] resources in xmls for (partially) documented assets 3 (#2566)
* Add Vtx[] resources in xmls for (partially) documented assets 3

* revert bombf
2025-06-03 22:59:59 -04:00
Dragorn421 aa00eb2c4d Add Vtx[] resources in xmls for (partially) documented assets 2 (#2565)
* Add Vtx[] resources in xmls for (partially) documented assets 2

* non-pal too

* Revert "non-pal too"

This reverts commit ac8b38b3a8.

* fix

* bss
2025-06-03 22:24:26 -04:00
Dragorn421 66f367e449 Commit g_pn_*.c files (#2573) 2025-06-03 20:30:44 -04:00
Jordan Longstaff 1627f8415b Child Ruto Part 2: Rename resurfacing animation (#2569) 2025-06-02 12:15:29 -04:00
Dragorn421 d2ef102802 Add Vtx[] resources in xmls for undocumented assets (#2547) 2025-06-01 18:53:56 +02:00
Dragorn421 fd5fbe138d Commit icon_item_24_static, icon_item_{fra,ger,jpn,nes}_static, item_name_static (#2562)
* commit icon_item_24_static

* commit icon_item_LANG_static for LANG in fra,ger,jpn,nes

* commit item_name_static
2025-05-31 10:26:04 +02:00
Dragorn421 dd6e8a87e9 Add Vtx[] resources in xmls for documented assets 1 (#2549)
* Add Vtx[] resources in xmls for documented assets 1

* fix duplicate gTriforceVtx (the existing gTriforceVtx resource was too short)
2025-05-31 10:09:06 +02:00
Dragorn421 ae0396f83b Fix Link eyes left/right (#2558)
* Fix gLinkAdultEyes Left/Right Tex names

* swap PLAYER_EYES_ LEFT/RIGHT and related

* comment on gLinkChildEyesLeftTex/Right appearing swapped
2025-05-31 09:48:19 +02:00
Dragorn421 a399f90f9a [assets] Sort gkeep resources by offset (#2550) 2025-05-27 11:19:57 -04:00
Dragorn421 6b9656b42a Commit object_link_child (#2542)
* add Vtx resources to object_link_child.xml

* object_link_child.xml limb enum and tlut blob

* cp extracted/... assets/...

* start cleanup, delete useless declarations

* inhibit object_link_child.c source gen

* move textures _WIDTH and _HEIGHT to .c, remove useless tex decls

* comments

* fixup object_link_boy comments

* remove unreferenced DLs decls

* rm 0 padding

* format the .c

* fixup

* bss
2025-05-26 16:59:33 -04:00
Dragorn421 4201359f89 Finalize and commit object_link_boy (#2528)
* Finalize and commit object_link_boy

* bss

* format

* dont write extracted/.../object_link_boy.c

* sizes for dls and texs

* fix OK

* TEX_LEN
2025-05-25 20:21:16 +02:00
Dragorn421 1e556e3a3d New assets system (#2481)
* 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 && 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 -> -j$(N_THREADS)

* .bss

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

* 0XHEX -> 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
2025-05-18 01:29:09 +02:00
Dragorn421 ec30dcbe4e assets xmls fixes (#2476) 2025-02-16 18:10:26 -05:00
cadmic bbcdf22647 Identify some unaccounted and blob asset data (#1953)
* Identify some unaccounted and blob asset data

* Add bug comments for flex skeleton weirdness

* Use (SkeletonHeader*) cast instead of .sh

* Fix vtx counts
2025-02-14 08:06:49 +01:00
Dragorn421 e3831947b0 Assets fixups 2 (#2461) 2025-02-12 12:56:04 -05:00
Dragorn421 924d8e81b9 Assets fixups (#2454)
* Assets fixups

* gDCRoom0TLUT, also object_mo.xml and ddan.xml

* gMegami3TLUT -> Tex

* yeet gDCRoom0TLUT (crashes ZAPD for an unknown reason)
2025-02-07 12:43:09 -05:00
Tharo c028db03b4 Finish matching ique-cn (#2451)
* git subrepo clone git@github.com:Thar0/com-plugin.git tools/com-plugin

subrepo:
  subdir:   "tools/com-plugin"
  merged:   "e8543312d"
upstream:
  origin:   "git@github.com:Thar0/com-plugin.git"
  branch:   "main"
  commit:   "e8543312d"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"

* ique-cn OK

* Review suggestions

* Most suggestions

* git subrepo pull tools/com-plugin

subrepo:
  subdir:   "tools/com-plugin"
  merged:   "81595ed1c"
upstream:
  origin:   "git@github.com:Thar0/com-plugin.git"
  branch:   "main"
  commit:   "81595ed1c"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"

* Fix other versions
2025-02-04 06:55:04 -05:00
cadmic cd21783a44 [iQue] Match z_en_mag (#2439)
* [iQue] Match z_en_mag

* Add comment for iQue "PRESS"

* Format
2025-01-24 23:41:32 -05:00