summaryrefslogtreecommitdiff
path: root/src/code/z_kankyo.c
AgeCommit message (Collapse)Author
2026-02-16Commit and split gameplay_keep (#2612)Tharo
* 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>
2025-06-17Document `Save.cutsceneIndex` and adjacent data / code (#2286)Leonid Kapitonov
* introduce `enum CutsceneIndex` as a first step * crudely rename `enum CutsceneIndex` entries * run `check_format.py ...` separetely so that it doesn't clutter previous commit. still, allowing `clangd LSP` to run format-on-save yields inconsistent results for me with the project's tooling, especially for header files * apply a draft PR suggestion Co-authored-by: mzxrules <mzxrules@gmail.com> * rename `CS_INDEX_*` with PR suggestions and some additional observations reverified with > `check_format.py ...` > `make ...` additionally: - current clang-format lacks a rule for trailing commas - compiler says about them `cfe: Warning 624` * improve `CS_INDEX_*` naming, rem `ENTRANCE` suffix https://github.com/zeldaret/oot/pull/2286#discussion_r1829165205 reverified with > `check_format.py ...` > `make ...` * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/4/console hmm, i do need this automation locally to * apply a PR suggestion https://github.com/zeldaret/oot/pull/2286#discussion_r1829219841 * remove redundant comments, fix the header comment and add a comment chunk from https://github.com/zeldaret/oot/pull/2286#discussion_r1829108940 * rename the flag for freeing `nextCutsceneIndex` * rename the flag for automatic `sceneLayer` calc it gets assigned to the `nextCutsceneIndex`, so `CS_INDEX_NONE` name was misleading * use explicit scene layer names instead of numbers * ok, now the last two `CS_INDEX_*` are less unknown the purpose of `CS_INDEX_BARRIER` is not quite clear still * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/14/console * run `fix_bss` locally `ntsc-1.2` refused to comply though * revert all local to the branch bss shifts * ugh, use defines instead of an enum probably size of enum entries doesn't match well? originally these were just numbers. besides, not like it's a real enumeration from zero to a value or some bit flags * still, add a BSS pragma for `z_demo.c` * apply review changes * factor out a cutscene layer formula * give scene layers names throughout code * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/32/console * tweak `CS_INDEX` descriptions * apply PR review suggestions * rename "auto" -> "default" * apply PR review suggestions https://github.com/zeldaret/oot/pull/2286#discussion_r1868693980 essentially reverts 106cb1021be88f745ee303838c11c7d7cbf9c79d, except for 2 generic `z_scene.c` lines * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/77/console * Apply suggestions from code review Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> Co-authored-by: mzxrules <mzxrules@gmail.com> * apply Jenkins fixes https://jenkins.deco.mp/job/OOT/job/PR-2286/175/console * Move CS_INDEX_* macros to z64save.h, with the definition of gSaveContext.save.cutsceneIndex * `#define CS_INDEX_D 0xFFFD` and co. Co-authored-by: cadmic <cadmic24@gmail.com> * add comment on CS_INDEX_D * review * CS_INDEX_NONE is back * bss * expand comment about 0xFFFD * fix comment about 0xFFFF usage * review --------- Co-authored-by: mzxrules <mzxrules@gmail.com> Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> Co-authored-by: cadmic <cadmic24@gmail.com>
2025-06-07Add Vtx[] resources in xmls for (partially) documented assets 7 (#2605)Dragorn421
* Add Vtx[] resources in xmls for (partially) documented assets 7 * bss
2025-06-04Remove "z64" prefix from all headers (#2518)fig02
* z64 - a * z64 - b * z64 - c * z64 - d * z64 - e * z64 - f * z64 - g * z64 - h * z64 - i * z64 - l * z64 - m * z64 - o * z64 - p * z64 - q * z64 - r * z64 - s * z64 - t * z64 - v * restore file * fix merge * fix merge --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2025-06-03Add Vtx[] resources in xmls for (partially) documented assets 2 (#2565)Dragorn421
* Add Vtx[] resources in xmls for (partially) documented assets 2 * non-pal too * Revert "non-pal too" This reverts commit ac8b38b3a827046cd33441b8c8c577e54a33bc4c. * fix * bss
2025-05-18New assets system (#2481)Dragorn421
* 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-04-26add array_count.h (#2514)fig02
2025-04-23macros.h 1/?: `PRINTF` and `T` (#2509)fig02
* 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-16variables.h: migrate all remaining varaibles, remove other dependencies ↵fig02
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-11variables.h cleaning: migrate audio variables (#2504)fig02
* migrate audio variables, fix libultra thing * remove extra newlines * fix * add required pragmas * fix bss * audio table fixes * fix bss
2025-04-06variables.h cleaning: migrate libultra variables (#2503)fig02
* variables.h cleaning: migrate libultra variables * another increment_block_number * fix bss
2025-04-05Remove functions.h (#2501)fig02
* split most of functions.h * osdriverominit * forgot include * fix * remove functions.h * temporary fix for fix_bss * fix bss * revert fix_bss.py change
2025-03-26T() macro in overlays 1 (#2486)Dragorn421
* More T() * More T(), up to (including) z_bg_mori* * home pos~~e~~
2025-02-26Reduce dependencies on global.h (10) (#2490)mzxrules
* reduce z64.h size * fix z_cheap_proc.inc.c * ,bss * remove temp delcaration
2025-02-22Clean out z64.h (#2484)fig02
* Clean out z64.h * fix version include * overlay.h * pr suggestion * try fixing main.c * add back forward declare * fix bss * header guard * prefix
2025-02-19Reduce overlay dependencies on global.h (8) (#2478)mzxrules
* move variables into z64environment.h * z_room.h * z64sram.h, z64ss_sram.h, z64font.h, kanread.h * z64lifemeter.h, z64debug.h, debug_arena.h * buffers.h * remove z_bgcheck global * gamealloc.h * suggestions * .bdd
2025-02-16Reduce overlay dependencies on global.h (7) (#2472)mzxrules
* z64env_flags, z64quest_hint_commands * z64cutscene_spline, z64save.h moved from z64.h * bss * pr suggestion * bss * suggestions
2025-02-15Use enums for settings in SRAM header (#2429)cadmic
* Use enums for settings in SRAM header * Fix bss * Uglify z_en_mag to match ique
2025-02-13Reduce overlay dependencies on global.h (6) (#2468)mzxrules
* add some headers, split some of z64.h * MtxClear -> IdentityMtx * more misc cleanups * move D_80116280 to header, fix build issue * remove z64.h * Revert "MtxClear -> IdentityMtx" This reverts commit 8fc74c0672f72b91ae4068e73228fc46fe9465d4. * split z64path.h and z64skin.h functions * z64face_reaction.h * cleanup overlay global references * trim padding * bss
2025-02-12Reduce overlay dependencies on global.h (5) (#2466)mzxrules
* remove global.h dependency from all actors * fix compiler error * fix another build issue * fix bss
2025-02-05Reduce overlay dependencies on global.h (3) (#2449)mzxrules
* kill more global.h references * .format.py * bss * ique
2025-02-04Finish matching ique-cn (#2451)Tharo
* 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-01-27Split z64debug_display.h, z64draw.h, z_en_item00.h (#2443)mzxrules
* z64debug_display.h * z64draw.h * z_en_item00.h * bss
2025-01-21[iQue] Import libultra audio library files (#2433)Tharo
Note about comments in these files: The libultra audio library was originally available to developers in source code form, unlike most of libultra. These files are based on these source code forms, adapted to meet the style of this project. The comments in the files as of this commit are, apart from the style, comments from the original SGI authors.
2025-01-17[iQue] Match z_sram (#2426)cadmic
* [iQue] z_sram: Use iQue-specific read/write macros * [iQue] z_sram: Make checksum a struct * [iQue] z_sram: Finish matching * Call the trigraph usage a bug * Fix bss * Sram_iQueReadWrite -> Sram_ReadWriteIQue * Use SRAM_HEADER_MAGIC for loop bound * Rename sZeldaMagic -> sSramDefaultHeader and use less char literals
2025-01-10[iQue] Match remaining libultra/os files (#2414)Tharo
* Match remaining libultra/os files * Align box id macros * Fix bss, format * Fix BSS * Clarify some comments * More bug comment * Comment * Fix BSS
2025-01-09[iQue] Match remaining libultra/io files (#2411)Tharo
* [iQue] Match remaining libultra/io files * Match osSpTaskYielded * Fix bss, remove double space in controller.h * Fix BSS
2024-12-13[Audio 10/10] Loose ends (#2337)Tharo
* Introduce afile_sizes, generate headers of sizes for soundfonts and sequences * Initial tools/audio README * Versioning for samplebank extraction * Clean up the disassemble_sequence.py runnable interface * Add static assertions for maximum bank sizes * Boost optimization for audio tools * Samplebank XML doc * Soundfont XML doc * More docs in sampleconv for vadpcm * Various tools fixes/cleanup * VADPCM doc * Try to fix md formatting * VADPCM doc can come later * Fix merge with PR 9 * Fix blobs from MM * Try to fix bss * Try fix bss round 2 * Fix sampleconv memset bug * Suggested documentation tweaks
2024-11-18Player Docs: Begin "Start Mode" Documentation (#2301)fig02
* set up start mode * note unused modes * fix bss
2024-11-17Decouple Debug Features From gc-eu-mq-dbg (#2296)fig02
* rename OOT_DEBUG to DEBUG_FEATURES * makefile changes * add DEBUG_ASSETS * fix DEBUG_FEATURES usages * format * fix errors * review * fix problem and review2 * review * add DEBUG_FEATURES to DEBUG_ASSETS check * review * whoops * format
2024-11-12Completely match ntsc-1.0/1.1 bss and add to CI (#2294)cadmic
2024-10-14Rename RoomBehaviorType1 to RoomType (#2271)mzxrules
* Rename RoomBehaviorType1 to RoomType * suggestions * Update include/z64scene.h --------- Co-authored-by: fig02 <fig02srl@gmail.com>
2024-10-08Document `Player_ChooseNextIdleAnim` (#2262)fig02
* document most of Player_ChooseNextIdleAnim * finish documenting Player_ChooseNextIdleAnim * capital letter * dummy block numbers for the script * fix bss * bug comment * SpeicalIdle -> Fidget, clean up related things * fix rng chance comment * normal -> default * rework Player_CheckForIdleAnim * swap idle anim defines * remove COMMON_FIDGET * add ARRAY_COUNT_2D * change macro def
2024-10-01[headers] Create `one_point_cutscene.h`, `z64olib.h` and move stuff to ↵Dragorn421
`z64{object,player,scene}.h` (#2250) * [headers] Create `one_point_cutscene.h`, `z64olib.h` and move stuff to `z64{object,player,scene}.h` * bss * sSceneCmdHandlers * bss * bss
2024-09-30[ntsc-1.0/1.1] Match "game engine" files (#2244)cadmic
* [ntsc-1.0/1.1] Match "game engine" files * Use R_START_BTN_X/R_START_BTN_Y * Comment obvious bugs * Move Magic_Fill comments * Move EVENTINF_HORSES_INDEX printf inside #if * Replace "this function"
2024-09-28[PAL N64] Completely match pal-1.0 and pal-1.1 and add to CI (#2246)cadmic
* [PAL N64] Match pal-1.0 and pal-1.1 and add to CI * bss fixes from Jenkins
2024-09-26[headers] Move libultra protos to ultra64.h (as a temporary measure) (#2234)Dragorn421
* [headers] Move libultra protos to ultra64.h (as a temporary measure) * format ultra64.h * bss * bss * bss
2024-09-25[headers] Create letterbox.h, move more protos from functions.h (#2225)Dragorn421
* [headers] Create z64shrink_window.h, move more protos from functions.h * format * include * bss * letterbox.h
2024-09-24create ucode_disas.h (#2222)mzxrules
* ucode_disas.h * create UcodeType * bss
2024-09-23Document Player Knockback related functions (#1601)mzxrules
* document knockback related functions * rotation -> yRot * implement some changes * Renames and comments * mq bss * format * Intangibility and Invulnerability * bss * .bss * add #pragma increment_block_number to z_en_item00.c * .bss
2024-09-12[ntsc-1.2] Match ntsc-1.2 BSS and add to CI (#2187)cadmic
* Match ntsc-1.2 * Add ntsc-1.2 to CI * Apply fixes from Jenkins * Promote ntsc-1.2 to "supported" in Makefile * Declare D_80858AD8 as a u64 array * Tweak wording * Hopefully make ntsc-1.2 bss more stable * Restore segmented_address.h include
2024-09-11[ntsc-1.2] Match remaining functions (#2182)cadmic
* Match remaining ntsc-1.2 functions * "fake" -> "Fake match?"
2024-09-11[headers 12] Add kaleido_manager.h, move various protos to headers (#2174)Dragorn421
* [headers 12] add kaleido_manager.h, move various protos to headers * BSS * bss
2024-09-11Cleanup gSPMatrix, rename `Matrix_New` -> `Matrix_Finalize`, add ↵Dragorn421
`MATRIX_FINALIZE_AND_LOAD` (#1983) * clean up gSPMatrix usage * add weird hybrid macro gSPMATRIX_SET_NEW * Matrix_NewMtx, MATRIX_NEW -> Matrix_Finalize, MATRIX_FINALIZE * gSPMATRIX_SET_NEW -> MATRIX_FINALIZE_AND_LOAD * format
2024-09-05Update Room Documentation (#2015)mzxrules
* Update Room Documentation * Write more complete documentation, implement suggestions. * Function name changes; minor comment tweaks * nit * Resolve Dragorn fixes * Resolve Fig suggestions, fix comment wording * fix bss, fig suggestion * bss
2024-09-04Target Mode Enum [Target Docs 7/?] (#2133)fig02
* TargetMode Enum * format * add default comment * bss * bss 2 * fix bss 3
2024-08-24T() macro 4 (#2084)Dragorn421
* T() in z_kankyo.c * T() in z_demo.c * T() in z_effect.c * remaining T() in z_sram.c * T() in z_en_encount1.c * T() in z_en_owl.c * T() in z_en_wonder_item.c * fix forgot T * Demonstration -> Demo
2024-08-12Add names to all typedef'd structs, unions, and enums (#2028)cadmic
* Add names to all typedef'd structs, unions, and enums * wtf vs code * Use a better regex
2024-08-10Add "do {} while (0);" to CLOSE_DISPS (#2025)cadmic
2024-08-09Match remaining GC retail versions (#2019)cadmic
* 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>