Commit Graph

2443 Commits

Author SHA1 Message Date
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
Derek Hensley 8a95f90b20 sPlayerFaces as array of structs instead of 2d array (#2559) 2025-05-29 09:17:38 -04:00
Dragorn421 d62bf87542 Fix sym_info.py for older Python (#2557) 2025-05-29 02:26:58 -04:00
Dragorn421 e991255a45 T() macro in overlays 7 (#2545)
* T() fish, fr, g_switch

* T() ge1, ge2, gm, goroiwa

* T() heishi1-3

* review
2025-05-28 02:04:48 +09:00
Dragorn421 6459f33800 T() macro in overlays 6 (#2544)
* z_en_dns.c and questionable translation for 売りナッツ

* T() dnt_demo, dnt_jiji, dnt_nomal with translating the probably misspelled デグナッツ as deku scrub (japanese text of the game uses デクナッツ (note the second character is slightly different) and is translated to english as Deku Scrub)

* T() dy_extra, encount2, ex_ruppy, fhg_fire, fire_rock

* review

* なにみの? -> What?
2025-05-28 01:46:27 +09:00
Dragorn421 1eaae98ed3 T() macro in overlays 4 (#2533)
* T() macro in various overlays

* revert problematic T() in mir_ray
2025-05-27 18:00:25 +02:00
Dragorn421 91e9553ee5 [assets system] Fix fusing resource buffer markers (#2548) 2025-05-27 17:41:51 +02:00
Dragorn421 a399f90f9a [assets] Sort gkeep resources by offset (#2550) 2025-05-27 11:19:57 -04:00
Dragorn421 68ea3bcc00 [assets] Better automatic names for subdata of Anim and Col data (#2543)
* better auto names for anim subdata

* better auto names for col subdata
2025-05-26 20:15:20 -04:00
Dragorn421 ecb9b64354 Commit icon_item_static (#2546)
* cp extracted/PAL_VERSION/... assets/...

* make NTSC compatible

* include cleanup

* progress

* progress2

* format

* comments
2025-05-26 17:44:06 -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 b3a16a61d4 Cleanup colliders 4 (#2470)
* cleanup around `ColliderJntSphElement` usage

* cleanup around `ColliderCylinder` usage

* cleanup around `ColliderCylinderInit` usage

* cleanup around `ColliderTrisElement`, `ColliderTris` usage

* cleanup around `ColliderTrisElementInit`, `ColliderTrisInit` usage

* cleanup around `ColliderQuadInit` usage

* sColliderInit -> sCollider<Type>Init

* format

* triElemInit -> triElementInit
2025-05-26 19:15:33 +02:00
Dragorn421 c854743d84 T() macro in overlays 5 (#2537)
* T() in some ovl_En_*

* T() in some more ovl_En_*

* old man appears
2025-05-25 17:57:27 -04:00
Tharo faf2003d37 Force skybox split palettes to always contain 128 colors (#2535)
* Force skybox split palettes to always contain 128 colors, padding with 0 if necessary

* Review
2025-05-25 21:50:34 +02:00
Dragorn421 385cf23064 sym_info.py: QoL features (#2539)
* Add `./sym_info.py --build-dir` to print symbols from an arbitrary build/ folder

* Make sym_info.py return more results (in both vram and vrom)
2025-05-25 15:30:30 -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 eeeaa77d3f Introduce TEX_LEN macro for texture arrays lengths (#2541) 2025-05-25 12:33:24 -04:00
Dragorn421 b44ff69ded Pause doc: Equipment page (#2538)
* [Pause menu docs] Equipment page

* final name
2025-05-25 13:59:05 +02:00
Dragorn421 6d56b1b8e0 Cleanup includes in header files (#2540)
* Cleanup includes in header files

* include libc headers without libc/ prefix

* fix

* fix2

* fix3

* fix4

* some bss lol

* bss

* fix
2025-05-24 16:20:51 -04:00
Tharo f7073a7837 Some sequence 0 improvements (#2536)
* Some sequence 0 improvements

* Sync aseq.h with MM
2025-05-23 09:52:18 -04:00
Dragorn421 d6cf6d6adb T() macro in overlays 3 (#2532)
* T() "There is no such action!!!!!!!!"

* T() z_boss_mo, fix z_bg_mori_elevator

* T() in ovl_Obj_

* T() in ovl_Demo_

* dont break up strings

* missed 1

* "push-pull" -> "push/pull"
2025-05-23 09:26:40 -04:00
Dragorn421 4eceb77128 [assets] Explicit size for textures and dlists (#2534)
* Add `conf.EXPLICIT_SIZES = True` for making some array resources declare and define with explicit length

* EXPLICIT_DL_AND_TEX_SIZES = True

* revert rm line
2025-05-23 02:58:20 -04:00
Dragorn421 f456bc6bf8 Assets system utilities (#2529) 2025-05-20 20:48:47 -04:00
Dragorn421 a6162dc8e7 Add write_source.txt: list of files to write source for during assets extraction (#2531) 2025-05-20 20:19:25 -04:00
Dragorn421 6f2fe268e3 Format assets/ (#2530) 2025-05-20 18:01:40 -04: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 0c6c112cb9 AVOID_UB: FileSelect_LoadGame out of bounds gBitFlags[-1] (#2527) 2025-05-12 07:25:22 -04:00
Dragorn421 39ae99c4cb Fix fix_bss.py (#2526) 2025-05-06 16:53:24 -04:00
Tharo 2a8785ffef C23 Compatibility (#2525) 2025-05-05 05:31:35 -04:00
GhostlyDark 1bef144995 Fix game.c typo (#2523) 2025-05-02 18:01:13 -04:00
fig02 7cd59fbdad Audio internal lib: Merge dcache.c and aisetnextbuf.c into os.c (#2522) 2025-05-02 04:44:09 -04:00
fig02 ed15061de5 Restructure audio source files (#2520)
* restructure audio files

* fix
2025-05-01 18:14:53 -04:00
GhostlyDark 3152557b49 Update z_magic_fire rectangle to be based on screen size (#2521) 2025-05-01 09:03:20 -04:00
fig02 123a9352e0 Audio Internal Library: Document original function names from Animal Crossing (#2513)
* finish thread.c

* load.c complete

* complete seqplayer.c

* format
2025-04-30 17:16:06 -04:00
Tharo cfd23f9cd2 Use cpp for soundfont dependencies (#2519) 2025-04-28 17:08:55 -04:00
Tharo a9b5aaadf0 Add makefile dependencies for all build objects (#2517)
* Add makefile dependencies for all build objects

* Fix generating encoded message headers
2025-04-28 06:28:34 -04:00
fig02 f7a270655b Delete macros.h; Delete global.h (#2516) 2025-04-27 12:48:11 -04:00
fig02 ea22c2ac38 create ACTOR_FLAGS_CHECK_ALL (#2515) 2025-04-26 19:07:52 -04:00
fig02 bed76a3bf3 add array_count.h (#2514) 2025-04-26 18:17:02 -04:00
fig02 25b2fa4bca macros.h 3/5: Split various macros (#2512)
* split out various macros

* fix

* fix2

* fix dw

* libc path

* fix macro

* does this fix bss

* fix bss
2025-04-25 21:12:35 -04:00
cadmic d4528a0541 Add macOS instructions for installing mips-linux-gnu-gcc (#2508)
* Add macOS instructions for installing mips-linux-gnu-gcc

* Add --with-system-zlib to fix binutils build on macOS 15.3.1
2025-04-24 19:35:01 -04:00
fig02 2341c44a6c Use official macros for Physical Address conversion (#2511) 2025-04-24 14:53:18 -04:00
fig02 de59ad3db7 macros.h 1/?: PRINTF and T (#2509)
* create printf and translation headers

* non-overlays complete

* printf finished

* move T macro

* edit comment

* fix error

* fix bss

* remove is_64

* fix bss
2025-04-23 19:31:49 -04:00
fig02 680ba667c7 cleanup z64h (#2510) 2025-04-23 16:44:02 -04:00
fig02 2278bcb2c3 Remove Variables.h; Decouple z64.h from global.h (#2507)
* progress

* z64.h issues sorted

* remove variables.h

* format

* n64 fix

* another fix

* did the wrong fix

* fix libleo

* fix bss

* review

* remove instead of comment
2025-04-19 22:04:08 -04:00
fig02 655ec77138 variables.h: migrate all remaining varaibles, remove other dependencies except z64.h (#2505)
* move remaining variables from variables.h

* fix other dependencies

* extra newline

* fix and adjust comment

* is this the problem

* fix bss
2025-04-16 08:22:42 -04:00
fig02 0c5282ba66 variables.h cleaning: migrate audio variables (#2504)
* migrate audio variables, fix libultra thing

* remove extra newlines

* fix

* add required pragmas

* fix bss

* audio table fixes

* fix bss
2025-04-11 02:10:19 -04:00
fig02 80564bf40b variables.h cleaning: migrate libultra variables (#2503)
* variables.h cleaning: migrate libultra variables

* another increment_block_number

* fix bss
2025-04-06 22:32:40 -04:00