summaryrefslogtreecommitdiff
path: root/src/code/z_message.c
AgeCommit message (Collapse)Author
2026-05-03Fixups around textboxSegment (#2743)Dragorn421
2026-02-14Name message start frame count variable (#2673)Jordan Longstaff
2025-06-20Rename AT `effect` to `hitSpecialEffect` (#2637)Dragorn421
* Rename AT `effect` to `hitSpecialEffect` * bss
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-17Rename `acDmgInfo.effect` -> `hitBacklash` (#2555)Dragorn421
* CollisionCheckInfo.atHitEffect -> atHitBacklash * ColliderElementDamageInfoAC.effect -> hitBacklash * add HIT_BACKLASH_ enum * bss * bss * bss * bss * bss * Update comments
2025-06-15Macroify PlaySfxGeneral calls: introduce `SFX_PLAY_CENTERED` and ↵Dragorn421
`SFX_PLAY_AT_POS` (#2633) * Add `SFX_PLAY_CENTERED` * Add `SFX_PLAY_AT_POS`
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-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-27Delete macros.h; Delete global.h (#2516)fig02
2025-04-26add array_count.h (#2514)fig02
2025-04-25macros.h 3/5: Split various macros (#2512)fig02
* split out various macros * fix * fix2 * fix dw * libc path * fix macro * does this fix bss * fix bss
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-19Remove Variables.h; Decouple z64.h from global.h (#2507)fig02
* 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-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-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-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-24Reduce dependencies on global.h (9) (#2488)mzxrules
* split game states * split all GameState headers * match fig names * deduplicate headers from bad merge * split z64actor.h into z64actor_profile.h, z_actor_dlftbls.h * fix compile error * .bss
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-20Create headers for Game States (#2482)fig02
* make headers for gamestates * fixes * fixes 2 * bss
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-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-21[iQue] Match z_message (#2435)cadmic
* [iQue] z_message: work around EGCS bug * [iQue] z_message: finish matching * Yabusame -> Horseback archery * Add missing PRINTF parameter * Collapse for loops * Better-looking macros * gold stars -> gold skulls
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-08[iQue] Create/update macros for printing debug strings (#2398)cadmic
2024-12-17Document z_horse.c and related actors (#2278)mzxrules
* document z_horse.h * .bss * suggestions and more comments * bss * INGORACE -> INGO_RACE * format header macros * FIx incorrect type comparision * EnInMode -> EnInStartMode * R_EXITED_SCENE_RIDING_HORSE
2024-12-15Remove ‾ character from source files (#2371)cadmic
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-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-15Use debug macros even in N64-only code (#2298)cadmic
* Use debug macros even in N64-only code * Use UNK_FILE/UNK_LINE instead
2024-11-12Completely match ntsc-1.0/1.1 bss and add to CI (#2294)cadmic
2024-10-09Pause doc: misc, fixups (#2265)Dragorn421
* use missed reg macros * do action indexing cleanup * misc * doc fixup ish in KaleidoScope_SetPageVertices * newline_police * `43` -> `(PAGE_BG_QUADS + WORLD_MAP_QUAD_28)`
2024-10-03Add missing HS_FISHING constant (#2256)cadmic
* Add missing HS_FISHING constant * It's actually doubly-bugged lol * Format
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-30Name Talking Related Actor Flags (#2230)fig02
* document talking related actor flags * tweak comment * review * tweak * accept -> accepted * add more clarification
2024-09-25[PAL N64] Match z_message.c (#2202)cadmic
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-07Match more GC button colors (#2156)cadmic
2024-09-06T() macro 8 (#2142)Dragorn421
* T() macro in fault * T() macro in game.c, gfxprint.c * T() macro in ucode_disas.c * T() macro in z_actor.c * T() macro in z_message.c * push fault key combo T() * z_message T: koko -> "here" * format
2024-09-06Clean up uses of !PLATFORM_N64 vs PLATFORM_GC (#2134)cadmic
* Clean up uses of !PLATFORM_N64 vs PLATFORM_GC * Put N64 button colors first
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-04Fix merge issue between z_message.c match and n64dd renames (#2131)Dragorn421
2024-09-05[ntsc-1.2] Match z_message.c (#2098)Dragorn421
* match Message_ResetOcarinaNoteState, Message_DrawTextChar * match Message_OpenText * Match Message_SetTables * Match Message_StartTextbox * forgor #if * format * match Message_DrawMain (ty inspect) * review
2024-08-28[ntsc-1.2] Decompile fault.c (#2046)Dragorn421
* wip decomp ntsc-1.2 fault.c * more ntsc-1.2 fault.c * decompiled fault_v1.c * name fault_v1 functions, wip * try to clean up build system (two versions of the fault system coexisting) * cleanup * cleanup2 * fix build gc-eu-mq-dbg * match 2 more, ty anon * matched * review * more review * fixup spec * `(uintptr_t)ptr op int` instead of `ptr op (type*)int` * move fault.h out of global headers, properly include fault.h and versions.h * compile all fault_*.c files regardless of version by overriding FAULT_VERSION * n64 FaultMgr.framebuffer s32 -> u16* * FaultMgr.framebuffer -> FaultMgr.fb * make gc FaultMgr.fb u16* (yes, thats everything) * bss * fix Fault_Printf return type * noop FaultDrawer_SetFontColor, FaultDrawer_SetCharPad in fault_n64 * fault_color_ stuff is only for fault_gc * rm empty line in makefile * I guess `D_80105A90_unknown` is `[sg]TotalAllocFailures` * bss * `Fault_WaitInput` -> `Fault_WaitForInput` * use named fault funcs in pointers array * FAULT_OOT{N64,GC} -> FAULT_{N64,GC} * Apply suggestions from code review Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com> * review, sync fault_{gc,n64} * Apply `FPCSR_CE` suggestions from code review Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> --------- Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
2024-08-26Add all N64 version defines (#2095)cadmic
* Add all N64 ROMs to versions.h * Remove OOT_ prefix from version defines * Make it pretty
2024-08-20Add versions.h (#2060)Dragorn421
2024-08-19Allow building the Debug ROM without debug features (#2052)cadmic
* Allow building the Debug ROM without debug features * Fix bss * Add comment * Reword again * Fix bss
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>
2024-07-21Match NTSC z_kanfont.c and z_message.c (#1997)cadmic
* Match NTSC z_kanfont.c and z_message.c Co-authored-by: inspectredc <inspectredc@gmail.com> * Apply suggestions from code review Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com> * Remove now-unnecessary padding * Remove msgBufDecoded comment * Use == NULL for fake match * Rename Message_DrawText{JPN,NES} -> Message_DrawText[Wide] * Font_LoadKanji -> Font_LoadCharWide * Restore FONT_MESSAGE_OFFSET/FONT_MESSAGE_LENGTH --------- Co-authored-by: inspectredc <inspectredc@gmail.com> Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>