* 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()
* Decompile N64 anti-piracy checks in overlays
* Fix BSS splits (I think)
* Use physical address and comment on meaning
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
---------
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
* 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>
* make format.py clean up extra whitespace, also in .h files
* fixup
* cleanup whitespace msg
* Update check_format.py to also check non-src files touched by format.py
* format
* 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
* rename and add comments
* format
* override movement
* format
* rework comments
* Remove whitespace at end of lines
---------
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* 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
* 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>
* document put away delay
* functions.txt
* add a note on delaying indefinitely
* format
* typo
* delay -> wait for put away
* revert unintended formatting change
* add comment to struct member
* format
* fix functions.txt
* 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 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
* Some GCC flags improvements
* Move -fno-reorder-blocks -fno-zero-initialized-in-bss to assets only
* Add -fno-PIC since some gcc versions use -fPIC as default
* Enable builtin functions on gcc, with appropriate changes to missing_gcc_functions.c
and ultra64/libc.h
* Move -fno-merge-constants -mno-explicit-relocs -mno-split-addresses to overlays only
as they are only needed there for reloc reasons
* Remove unneeded casts in missing_gcc_functions.c
* Change gcc assets flags handling
* 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
* Rework disassembly: out of makefile, separate sections, relocs
* another nice print
* fix type hints for python 3.8 dinosaurs
* reencode from utf-8 to euc-jp (iconv) before assemble
* Add "include guards" to macro.inc
* For producing the expected file object files, assemble sections together instead of linking together the individually assembled sections
* review
* fixup
* require spimdisasm >=1.21.0
* remove assembling sections individually (for now)
* uppercase encoding names (standard)
* 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
* Disassemble gc-eu-mq
* Add script to report progress with matching
* Fix whitespace
* Change T|None to typing.Optional[T]
* Use typing.List
* More type annotations fixes for old Python versions
* Fix type errors
* More type annotations
* Use typing.Iterator
* Use $(PYTHON) for disassembly
* Don't use grouped targets to support very old Make versions
* Docs: suggest checking MM, mention virtualenv, clarify about expected/
* Update sym_info.py
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
* Sync functions.txt
* Start banned symbol range at 0x10000000
* Also ban symbols from 0xC0000000-0xFFFFFFFF
* Unban IPL symbols
* Fix first_diff.py
* Sync z_collision_check functions.txt
* Ban 0xA0 symbols too
* Touch .disasm sentinel file
* Copy -jN comment in docs
* diff.py flags: remove -3, add -s
* Update docs/retail_versions.md
Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>
* Comment that segments are still from the Debug ROM
* Revert "diff.py flags: remove -3, add -s"
This reverts commit bfaae66c1d.
* Apply suggestions from code review
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* Remove #ifdef example
* Reformat Python files with black
* Add copyright notice to new Python files
* Add TODOs to Makefile
---------
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
* 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
* 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
* Document z_Fishing
Document code and data RE: Fishing minigame.
* More z_fishing.c progress
Id's more values, added flag for "High score" entries
* moved and renamed Fishing flags
Flags moved outside z_fishing.c - ending sequence checks for "hat stolen" flag.
* more fishing.c Id'ing
added more id's and clarification.
* Update z_fishing.h
clarified not about fish weight.
* more z_fishing.c documenting
missed a bitfeiled in the fishing "highScores" that kept track of your number of fishing trips
* Update z64save.h
a #define got lost for the "fishing games played" increment
* z_fishing: a few formatting and naming changes based on feedback
- removed comments summing textboxes as it was deemed redundant
- tried to unify fish measurment as "length"
- clarified a few vars based on name
- formatted single-line comments to have one space.
* Update z_fishing.c
ran format.py and fixle.sh
* Update z_fishing.c
changed code around a few bools that was still matching.
* `z_en_Fishing`: changes from feedback, id'd rotate phase fields.
* Update z_fishing.c
merge fix
* `z_fishing`: More doc'ing.
* `z_fishing`: changes based on feedback
* `z_fishing`: fixed typo
* `z_fishing`: merge with master
* Update z_fishing.c
sSinkingLureLocationPos was too redundant
* Merge fix, added more comments, #defines, id's
* Update z_fishing.c
adding EN_FISH_PARAM may have led to mismatch.
* `z_fishing`: fixed compare mismatch
* Update z64save.h
fix typo
* Update z_fishing.c
a few more id's
* 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
* 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