29 Commits

Author SHA1 Message Date
Yanis002
68e705f7f5 Merge remote-tracking branch 'decomp/main' into decomp_merge 2025-05-18 16:51:05 +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
Yanis002
09dd5e135e fix build issues 2025-02-11 17:21:23 +01:00
Yanis002
a3c5d66e58 Merge remote-tracking branch 'decomp/main' into decomp_merge 2025-02-11 17:05:12 +01:00
mzxrules
03a2612246 Rename gMtx(F)Clear to gIdentityMtx(F) (#2458) 2025-02-08 19:00:32 -05:00
Yanis002
ced7d36d06 Merge remote-tracking branch 'decomp/main' into decomp_merge 2025-01-06 02:32:45 +01:00
cadmic
471fe51c82 Set up build system for ique-cn (#2382)
* Set up build system for ique-cn

* Fix size of fbdemo_circle assets

* Treat iQue as NTSC and Use "NES" for Chinese text

* Revert z_kanfont
2024-12-21 14:13:56 -05:00
Yanis
4b20d8269b Naming cutscenes from Lon-Lon Ranch (#2359)
* name cs from ranch

* fixed llr credits cs dest part 5 and 6 being inverted

* format
2024-12-13 18:28:48 -05:00
Jordan Longstaff
c780c4e147 Rename EVENTCHKINF_69 (#2330)
* Rename EVENTCHKINF_69

* Rename CS flag
2024-12-11 05:51:51 -05:00
Jordan Longstaff
07751d3d44 Rename symbols related to Kakariko Well being drained (#2332) 2024-12-10 00:18:40 -05:00
mracsys
bdc774058d More descriptive names for CS_BEGIN_CUTSCENE and CS_END (#2311)
* rename CS_BEGIN_CUTSCENE and CS_END

* matching

* naming consistency for END command, improved comments

* remove CS_CMD_NONE

Co-authored-by: mzxrules <mzxrules@gmail.com>

* remove comma from end of enum

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "c04562d30"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "c04562d30"
git-subrepo:
  version:  "0.4.9"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "cce3d93"

---------

Co-authored-by: mzxrules <mzxrules@gmail.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
2024-12-02 16:50:58 -05:00
Yanis42
f32f5406dd Merge remote-tracking branch 'decomp/main' into decomp_merge_4 2024-10-17 15:50:29 +02:00
cadmic
d3bf8ae78b [ntsc-1.0/1.1] Extract assets (except audio) for ntsc-1.0 and ntsc-1.1 (#2253)
* [ntsc-1.0/1.1] Extract assets (except audio) for ntsc-1.0 and ntsc-1.1

* Fix merge with pal-1.0/1.1
2024-10-09 14:22:57 +02:00
cadmic
2f3c8084c9 [PAL N64] Set up build system and extract assets for pal-1.0 and pal-1.1 (#2205)
* [PAL N64] Set up build system and extract assets

* TOOD -> TODO

* Apparently this is what the formatter wants
2024-09-26 15:19:23 -04:00
Yanis42
05401196ca Merge remote-tracking branch 'decomp/main' into decomp_merge_4 2024-08-14 15:55:05 +02:00
cadmic
8366b8731e Set up build system and disassembly for ntsc-1.2 (#2021)
* Set up build system for ntsc-1.2

* Set up disassembly for ntsc-1.2

* Add all unnamed functions to functions.txt

* Update docs/retail_versions.md for ntsc-1.2

* Format

* Update docs/retail_versions.md

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

* Remove mention of US

* OOT_N64 -> PLATFORM_N64, OOT_GC -> PLATFORM_GC

* Move mtxutil to libultra/gu

* Fix libultra/io bss splits

* Fix merge

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-11 06:20:43 -04:00
cadmic
d495436190 Match remaining GC retail versions (#2019)
* Match the remaining GC retail versions

* Fix BSS ordering for existing versions

* Disable clang-format for #pragma increment_block_number

* sramResetCode -> sSramResetCode

* Replace 0xFF3F with or-ing all buttons together

* Revert "Disable clang-format for #pragma increment_block_number"

This reverts commit 406b6d26c92911c676a7ea9f07a1612211760e11.

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-09 20:58:46 -04:00
Yanis42
71b5a4e034 fix issues 2024-06-26 20:33:01 +02:00
Yanis42
006babcd8f Merge remote-tracking branch 'decomp/main' into decomp_update_3 2024-06-26 20:25:33 +02:00
cadmic
1b0e35c89a Extract NTSC assets for gc-us (#1973)
* Extract NTSC assets for gc-us

* Extract kanji

https://github.com/zeldaret/mm/pull/1536

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: emilybrooks <emilybrooksemilybrooks@gmail.com>

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: emilybrooks <emilybrooksemilybrooks@gmail.com>
2024-06-26 06:22:26 -04:00
Yanis42
76d050c336 fix issues² 2024-06-24 23:42:27 +02:00
cadmic
9def6f4d0d Set up multiversion assets with ZAPD and match gc-eu (#1967)
* Add ZAPD hack to deal with extracted/VERSION/ in include paths

* Extract assets to extracted/VERSION

* Add ZAPD flags to override virtual address / start offset / end offset

* Configure offsets for code and overlay assets

* Reorganize ZAPD configs

* Match gc-eu-mq

* Match gc-eu

* Remove old asset dirs during distclean

* Revert "Remove old asset dirs during distclean"

This reverts commit fc8027a75f82289eee7b1822b82663b70789d63f.

* make zapd addresses globals int64_t so they can store uint32_t addresses and -1

* slight cleanup extract_assets.py

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "0285e11f0"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "0285e11f0"
git-subrepo:
  version:  "0.4.6"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-06-24 15:22:39 +02:00
louist103
c1a499c3ae ZAPD Update (#1605)
* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "2b6f459b9"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "2b6f459b9"
git-subrepo:
  version:  "0.4.6"
  origin:   "???"
  commit:   "???"

* Update ZAPD

Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>

---------

Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>
2024-01-07 17:52:45 -05:00
Dragorn421
4e55168eaa Update ZAPD (#1569)
* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "094e79734"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "094e79734"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"

* Add EnumData.xml where some names are now externalized

* Remove legacy typedefs for zapd, no longer needed!
2023-10-24 21:36:10 -04:00
louist103
629757b3ae git subrepo pull --force tools/ZAPD (#1457)
* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "dcf56d93e"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "dcf56d93e"
git-subrepo:
  version:  "0.4.5"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "dbb99be"

* Add files via upload

* Update Config.xml
2022-12-08 13:15:18 -05:00