* match Message_ResetOcarinaNoteState, Message_DrawTextChar
* match Message_OpenText
* Match Message_SetTables
* Match Message_StartTextbox
* forgor #if
* format
* match Message_DrawMain (ty inspect)
* review
* Match z_game_over.c (PAL 1.1 change)
* Fix previous matches that are actually PAL 1.1 changes
* Add versions.h to global.h
* Add versions.h to z_game_over.c too
* And the others too
* Fix awkward wording
* T() macro in most of the rest of code (except z_message, z_actor, ucode_disas, gfxprint, game, fault, db_camera)
* remaining T() macro in boot
* format
* review
* [Audio 6/?] Build Soundfonts and the Soundfont Table
* Improve lots of error messages
* First suggested changes
* Make audio build debugging more friendly
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Some fixes from MM review
* Make soundfont_table.h generation depend on the samplebank xmls since they are read, report from which soundfont the invalid pointer indirect warning originates from
---------
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* T() in z_skelanime.c
* T() in z_eff_blure.c
* T() in z_play.c
* T() in z_jpeg.c
* T() in z_horse.c
* T() in z_eff_spark.c
* T() in z_malloc.c
* T() in z_effect_soft_sprite.c
* add todo on translating "確保" (litterally ~"secure", but may be better as "allocate"-ish)
* review
* format
* T() in __osMalloc.c
* T() in code_80097A00.c
* T() in debug_malloc.c
* T() in code/load.c
* T() in sys_math3d.c
* T() in z_collision_btltbls.c, z_fbdemo_fade.c, z_fcurve_data_skelanime.c, z_view.c
* T() in z_collision_check.c
* remaining T() in __osMalloc.c
* __osMalloc consistency
* format
* Match z_fbdemo_wipe1.c
* Fix gDPSetTileCustom
* Match z_eff_ss_dead.c
* Match src/code/audio_thread_manager.c
* Match z_parameter.c
* Match KaleidoScope_DrawWorldMap
* Format
* 1 -> AUDIOMGR_DEBUG_LEVEL_NO_RSP
* Actually match KaleidoScope_DrawWorldMap
* Add comment on duplicate code
* Revert "Fix gDPSetTileCustom"
This reverts commit de09338d92.
* [ntsc-1.2] Match z_vismono.c
* change match to use height
Co-authored-by: cadmic <cadmic24@gmail.com>
---------
Co-authored-by: cadmic <cadmic24@gmail.com>
* 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
* Move non-libultra libc functions to src/libc/
* Add explicit nops in delay slots
* Don't rely on CPP expanding undefined macros to 0
* Delete old Makefile rules
* Fix type of memset()
* func_80033C30
* Interface_Init
* z_draw.c
* KaleidoSetup_Destroy , n64dd.h
* z_kaleido_setup.c
* add n64dd files to spec
according to tools/disasm/ntsc-1.2/files_code.csv , they're between irqmgr.o and fault.o
putting them before or after malloc_debug.o in the spec is an arbitrary choice
* 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>
* Match NTSC file select
Co-authored-by: inspectredc <inspectredc@gmail.com>
* nes -> eng in macros
* Duplicate more code but use less #ifs
* Format
---------
Co-authored-by: inspectredc <inspectredc@gmail.com>
* Automate fixing BSS ordering
* Typo
* Some cleanups
* Move pragma check after printing BSS info
* Some proofreading
* multiprocessing, require version, some colors
* Tweak output
* Black + mypy
* Move logging and sys.exit out of helper functions
* Use stdout instead of stderr in fix_bss.py
* Add suggestion to conflicting offsets error
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Remove var = list[T]()
* Improve error handling
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Add error if no pointers to BSS
* Add comment about process_file_worker
* Only print updates if stdout is a tty
* Use new binary-search-esque candidate generation algorithm
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Add Wikipedia link
* More comment tweaks
---------
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Create FILENAME_ macros for NTSC filename encoding
* Add defines/comments for all filename characters
* FILENAME_EXCLAMATION_POINT -> FILENAME_EXCLAMATION_MARK to match kanji file
* hirigana -> hiragana
* remove trailing whitespace
* fix/docbug about dright for next page of fault menu
* // size = ...; -> // size = ...
* access `ColliderJntSph.elements` as an array
* fixup doc in PreRender.c
* empty line after decl
* gdSPDefLights1 xyz arguments for direction are signed 8bit values
* doc bug of bad use of free in EffDust actor
* decimal for Actor.colorFilterTimer
* shopItemEntries -> sShopItemEntries
* HEISHI4_AT_KAKRIKO_ENTRANCE -> HEISHI4_AT_KAKARIKO_ENTRANCE
* format
* start using task terminology
* more docs
* format
* cleanups
* MoveActor -> ActorMove
* missed a couple
* hopefully the last changes
* comment explaining the group change
* some review
* dragorn review
* remove accidental file
* fix matching issue, now use while loop
* Change linker script so gGameOverTimer can be in z_game_over.c
* gGameOverTimer -> sGameOverTimer
* include_data_only_with_rodata -> include_data_only_within_rodata
* Document pause page switching
* document initial scroll left setup, when opening the pause menu
* `PAUSE_MAIN_STATE_1` -> `PAUSE_MAIN_STATE_SWITCHING_PAGE`
* try a diagram of the pages layout in world space as a comment
* expand `nextPageMode` comment
* touch up pause camera header comments
* expand comment on irrelevant init `mainState = PAUSE_MAIN_STATE_SWITCHING_PAGE`
* expand doc on `sKaleidoSetup*` data
* expand docs on `gPageSwitchNextButtonStatus`
* add some doc on `sPageSwitch*` arrays
* SwitchPage -> PageSwitch
* add `PAGE_SWITCH_NSTEPS`
* `SWITCH_PAGE_*_PT` -> `PAGE_SWITCH_PT_*`
* peepoArtist
---------
Co-authored-by: fig02 <fig02srl@gmail.com>
* Set up gc-eu and match all code
* Format
* Mark gc-eu-mq as WIP until it builds OK
* Move original/MQ map mark data to separate files
* Add #includes to .inc.c files to help out VS Code
* Use #if in spec instead of .inc.c files
* Match retail BSS ordering
* Revert moving some global variables to headers
* Adjust block numbers after header changes
* Fix debug build
* Overlay bss ordering
* Fix BSS ordering after header changes
* gc-eu-mq OK
* Implement preprocessor for #pragma increment_block_number
* Transfer usage comment from reencode.sh
* Use temporary directory instead of temporary file
* Move ColChkMassType back
* Create CAM_DEBUG_RELOAD_PARAMS and CAM_DEBUG_RELOAD_PREG macros
* Create debug macros for camera OREGs
* Move static data into Camera_Demo5
* Match retail camera functions, except Camera_Battle1
* Match camera data and bss sizes
* Restore R_CAM reg names, remove OREG_DEBUG[_SCALED]
* CAM_DATA_n -> CAM_GLOBAL_n
* Remove old debug macros
* Add braces to CAM_DEBUG_RELOAD_PREG macro
* Hackily match Camera_Battle1
* Format
* Better Camera_Battle1 match
* Format
* Revert R_CAM_N comments for sOREGInit
* create some enums
* gonna try struct instead of array
* struct works. add docs too
* inline function comments
* fix function comment
* name faces, move enums
* rename textures
* outnames
* remove comments
* change comment slightly
* fixup face comments
* review
* offset comments
* add and use PLAYER_FACE_MAX
* typo
* more comment on blinkDuration
* another change to the comment
* Introduce assets/_extracted/VERSION, with text extracted there
* move to `extracted/text/`
* Update gitignore s
* rework args for msgenc.py
* put mkdir with others, until theyre all moved at once
* move 0xFFFC back to being extracted, making it use specific macro `DEFINE_MESSAGE_NES` to handle its special behavior
* prettier gitignore
* Move messages 0xFFFC, 0xFFFD to committed message_data.h
* Remove gSystemHeap and use _buffersSegmentEnd instead, make buffer alignments explicit for gcc
* ALIGNEDn -> ALIGNED(n), reposition alignment attribute for PreNmiBuff
* Correct positioning of ALIGNED for filter data in audio/lib/data.c
* Add ALIGNED to TypenameMacros
* ALIGNED(4) on same line for PreNmiBuff
* Revert audio load.c change, to be submitted separately
* Filename & line number args cleanup
* Use int for line number args over s32/u32
* Add missing const qualifiers from filename args
* Fix gcc warning in game.c
* Add comment to weird assignments in GameState_Init
* Match retail audio data
* Fix various small code data problems
* Disable terminal colors in debug builds
* Match z_actor_dlftbls.c .rodata
* Use _3 for unused nameString macro parameter
* Move sDebugCutsceneScriptBuf to be in-function static
* Comment on actor name being NULL
* Split out padding the fault_drawer.bss.s
* only Environment_Update plus 1 fake match
* more WIP
* remove fake matches
* Environment_Update OK
* void
* add fake comment
* better match for update
* cleanup
* fix fake match
* more fixes
* add comment
* one left
* cursed match for Scene_CommandObjectList
* format
* revert printf modification for permuter
* more bad-returns
* format
* typedef scene command func
* begin docs
* cleanup
* copy over progress
* cleanup
* small cleanup
* more docs, fill out cmds
* small touchup
* pan weight ganon comment
* fix specId
* seqcmd cleanup
* format
* small cleanup
* one more thing
* small feedback from MM
* partial PR
* some PR Suggestions
* small adjustments
* ticks, seqticks, frames, updates: term cleanup
* small fix
* PR Review
* PR Review
* PR Review
* rm param
* adjust comment
* update renamed functions
* format
---------
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* match all functions
* format
* clarify between 'dest' and 'skip' debug features
* format
* better match for CutsceneHandler_RunScript
* review
* format
* remove macro
* Check formatting in CI
* Move deleteDir() to cleanup section
* Revert "Move deleteDir() to cleanup section"
This reverts commit 4b0dd80cac.
* Give up on check_format.txt
* Fix formatting
* Cleanup `z_collision_check.c` and structs
* Revert `other*` names to master, split to other pr
* WIP/experimental: `ColliderCylinderElement`
* Revert "WIP/experimental: `ColliderCylinderElement`"
This reverts commit cfc8c32ace.
* ac/atHitInfo -> HitElem
* rename some collider elements to "elem" (instead of item, info, hurtbox...)
* cut down on more "hitbox" usage
* name all `ColliderElement*` temps properly
* rearrange colcheck structs
* add collider shape name descriptions
* reword collider shape descriptions
* jntsph first again
---------
Co-authored-by: fig02 <fig02srl@gmail.com>
* Create debug macros for common functions
* Revert NDEBUG change
* MALLOCR -> MALLOC_R
* DEBUG -> OOT_DEBUG
* Use the same name for debug and non-debug matrix functions
* Fix file/line argument order
* Revert g[s]DPNoOp[Tag]
* Use SystemArena_MallocDebug directly in GameAlloc_MallocDebug
* MTXF_TO_MTX -> MATRIX_TO_MTX
* started malon documentation
* docd all event and inf table checks
* doc cleanup
* ran formatter
* fixed misnamed eventcheck
* revert isNotSinging oops
* removed unnecessary comments
* changed from handle to update
* revert vec3f name change
* moved texture information
* isNotSinging to singingDisabled
* rename of inftable and eventchk
* small cleanup
* anim enum change
* enum names for child malon limbs
* Documentation for audio_thread_manager.c
* Fixes
* Move AudioTask back to z64audio.h and include in audiomgr.h, adjust bug comment
* Adjust AudioMgrDebugLevel enum
* Generic Camera Flags
* New flag names
* Add flags to functions
* Finish flag docs
* More docs
* More cleanup
* More clarity
* Better shrinkwindow flag docs
* Improve name
* CAM_INTERFACE_FLAGS
* Better approach to edge cases
* Change ordering for consistency
* Oops
* Add masks to macro
* PR/Discord discussions
* cleanup comment
* Oops
* PR Suggestions
* More PR Feedback
* More PR Suggestions
* More Camera Flags
* PR Suggestions
* More flag style change
* Small cleanup
* More flag docs
* Another flag
* Fix flags
* sync names with other PRs
* more fixes
* fix comments
* update with hud visibility mode docs
* missed one
* fix comments
* Roman PR Suggestions
* interfaceField
* small fix
* letterbox cleanup
* cleanup
* fix macro arg
* fix func declaration
* many more docs
* better docs?
* missed some
* oops, revert
* add flags to name
* cleanup
* flag
* double signal
* simplify cam func name
* more suggestions
* PR Suggestion
* Make `sNew` in (unused) `code_800FC620.c` a string
It is passed as a filename to `__osMallocDebug` so should be a nul-terminated string, not a char[3] missing an explicit \0
* Fix gcc warning in `JpegDecoder_ParseNextSymbol` about SLL on negative value
-1U is an unsigned value, aka 0xFFFFFFFF
I keep -1 because it seems that's what a jpeg standard has too
References:
https://stackoverflow.com/questions/40508958/shifting-a-negative-signed-value-is-undefinedhttps://www.w3.org/Graphics/JPEG/itu-t81.pdf (page 105, figure F.12)
* Small cleanup
* Fix few mistakes (thanks gcc warnings)
* Add `@bug` in file select settings draw code, using the wrong array
* format
* format main
* rename arg for a happy formatter
* Move important function call out of a printf
* Remove `(ActorFunc)` casts in initvars, use `/**/` trick for format
Achieved by using the following regex:
(ActorInit.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*)(\n\s+)(?:\(ActorFunc\))?(.*\n\};)
replaced with
$1$2/**/ $3$4/**/ $5$6/**/ $7$8/**/ $9$10/**/ $11$12/**/ $13$14/**/ $15$16/**/ $17$18/**/ $19
plus a change from /**/ to #if 0 #endif in docs/
* Manual fixes
* document input stuff and movement speed+yaw
* curve -> curved, and other cleanups
* fix + format
* function declaration
* name arguments
* add mode descriptions
* fix typos
* move comment down
* Document PauseContext.state
* Very light docs surrounding pause states
* PAUSE_STATE_UNPAUSE -> PAUSE_STATE_RESUME_GAMEPLAY and comment on purpose in the enum
* PAUSE_STATE_MAIN -> PAUSE_STATE_6
* format
* Player_InitDrawPause -> Player_InitPauseDrawData
* Some doc/cleanup on `Effect_Ss_Fhg_Flash`
* Some doc/cleanup on `Effect_Ss_Blast`
* 11DA0 -> Billboard
* doc three lerp funcs in effectss
* Some doc/cleanup on `Effect_Ss_Bomb`
* `rTexIdx` -> `rTexIndex`
* lifespan
* `LIFESPAN` -> `EFFSSBOMB_LIFESPAN`
* --parentheses
* Add todo about "having zapd forward declare static variables"
* try rework comments on effects scale
* lightning -> "a ball of electrical arcs" ?
* Add defines for all used animflags
* Use named constants (and add two) for players `func_80832F54` flags
* note which flags are player-only
* Attempt at documenting but too FeelsUnkMan again
* forgot something
* ANIM_FLAG_PLAYER_0 -> ANIM_FLAG_0 and amend comment from "player-only" to "no effect outside player"
* 1<<n flags
* Cleanup/add bgcheck macros
* vIA -> vI
* parentheses around bit&
* achivement get: formatter contrarian
* COLPOLY_VTX_FLAGS -> COLPOLY_VTX_FLAGS_MASKED
* & before << in WATERBOX_PROPERTIES packing macro
* & before << in SURFACETYPE* packing macro and fix parentheses
* Split z64.h more
* fix speedmeter.h (expect this kind of issue resolution to pop up eventually)
* fix z64object.h
* fix z64state.h
* fix (probably only partially) z64play.h
* fix fix speedmeter.h :)
* revert making a play header (sadge), add/split transition & transition_instances
* move stuff to cutscene, interface
* Move `TransitionCircle%` enums to `z64transition_instances.h`
* z64state.h -> z64game.h with a "this is not final" comment
* forward declare GraphicsContext in z64game.h instead of including the header file for it
* don't comment on where the forward declarations are from
reasoning:
1) it's easy to go out of sync (like this comment, it was outdated anyway)
2) any IDE can easily find the struct anyway
* Mention why PrimDepth is used in PreRender_FetchFbufCoverage
* Clarify that this only affects the memory alpha blender input, not all alpha blender inputs
* Try to make the subtle difference between coverage and memory alpha more clear
* Change preferred clang version to 14 (for formatting)
* Add `--show-paths` arg to format.py for printing paths to clang-* binaries used
* Run formatter (clang-format-14)
* run formatter
* Use intptr in most remaining code files
* Fix missing uintptr_t in actor
* Use u8* casts for texture pointer arithmetic
* Use bg + 1 instead of casting in Room_DrawBackground2D
* Generate gamestate overlay table from an include/tables/ header
* GameStateIndex -> GameStateId, move to z64.h, add GameStateId enum name field to the gamestate table, adjust and improve gamestate table comment
* Shorten zeros in table definition
* Generate linker symbols, other suggested changes
* GAMESTATE_MAX -> GAMESTATE_ID_MAX like the others
* player csmode enum
* cleanup
* missed one, player2
* spell out enum name
* use CSMODE_MAX for data
* doc OnePointDemo Field
* PR Suggestions
* another suggestion
* duplicate word
* adjust comment
* cleanup comments
* oops
* some EnHoll cleanup
* some more EnHoll cleanup
* even more EnHoll cleanup
* EnHoll docs
* `enHollFillAlpha` -> `bgCoverAlpha`
* Dl -> DL
* one temp: action -> type
* Move static data out of `EnHoll_HorizontalVisibleNarrow`
* "fade" -> "bgcover"
* spread sentence over several lines
* tweak comments formatting
Co-authored-by: fig02 <fig02srl@gmail.com>
* "bgs sword" -> "biggoron sword"
* Animation_ChangeImpl: last arg is `ANIMTAPER_` enum
* TransitionTileStatus -> state
* Tiny gbi.h formatting fixups
* some cleanup on floormaster
* misc float ops cleanup
* sunsSongState = SUNSSONG_INACTIVE
* continueFlag == CS_CMD_STOP
* fix few camera names inconsistency
* textual 0 padding? not on my lawn
* libultra: construct address from end of dmem rather than oob from imem
* more free1 -> 2 fixup
* rename functions
* dragorns name suggestions
* Revert "dragorns name suggestions"
This reverts commit dd4626ce5e.
* lets try that again
* reword comment
* comments
* projectile speed
* arg name
* more comments
* minVelY comment
* merge master and format
* name functions and clean up some stuff
* clean up function call args and use enum, format
* slightly change comment
* review
* make things more debug cam oriented
* rename buffer
* regs update comment
* move enum