Commit Graph

158 Commits

Author SHA1 Message Date
Dragorn421 2cd34728e5
Cleanup extracted colliders 1 2025-06-23 18:28:20 +02:00
Dragorn421 04a92708cf
Rename AT `effect` to `hitSpecialEffect` (#2637)
* Rename AT `effect` to `hitSpecialEffect`

* bss
2025-06-20 10:12:45 +02:00
fig02 28cc9d68cf
Remove "z64" prefix from all headers (#2518)
* 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-04 14:38:33 -04:00
Pepe20129 1f9bf023a0
Document kaleido debug menu (#2506)
* Document kaleido debug menu

* Fix BSS

* bss

* Address reviews

* bss

* add #pragma increment_block_number to z_parameter and let CI do its thing

* bss

* buffer -> digitBuf

* reformat comments on sSectionPositions. trick clang-format into not ruining the array by adding // comments on their own line

* rename to KaleidoScope_DrawInventoryEditor

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2025-06-01 17:10:49 +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
fig02 de59ad3db7
macros.h 1/?: `PRINTF` and `T` (#2509)
* 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-23 19:31:49 -04:00
fig02 0c5282ba66
variables.h cleaning: migrate audio variables (#2504)
* migrate audio variables, fix libultra thing

* remove extra newlines

* fix

* add required pragmas

* fix bss

* audio table fixes

* fix bss
2025-04-11 02:10:19 -04:00
fig02 80564bf40b
variables.h cleaning: migrate libultra variables (#2503)
* variables.h cleaning: migrate libultra variables

* another increment_block_number

* fix bss
2025-04-06 22:32:40 -04:00
mzxrules 981af4b6af
Reduce overlay dependencies on global.h (8) (#2478)
* 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-19 05:54:39 -05:00
mzxrules 652478c338
Reduce overlay dependencies on global.h (7) (#2472)
* z64env_flags, z64quest_hint_commands

* z64cutscene_spline, z64save.h moved from z64.h

* bss

* pr suggestion

* bss

* suggestions
2025-02-16 15:33:55 -05:00
Tharo c028db03b4
Finish matching ique-cn (#2451)
* 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-02-04 06:55:04 -05:00
cadmic 748859595a
[iQue] Match z_fishing (#2445) 2025-01-28 02:36:07 -05:00
mzxrules d855f2bfd8
Split z64debug_display.h, z64draw.h, z_en_item00.h (#2443)
* z64debug_display.h

* z64draw.h

* z_en_item00.h

* bss
2025-01-27 13:01:54 -05:00
mzxrules f448a48cd6
Create headers for some libu64 files (#2440)
* Create headers for some libu64 files

* apply bss patch
2025-01-24 13:25:05 -05:00
Tharo afa0842de4
[iQue] Import libultra audio library files (#2433)
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-21 15:21:48 -05:00
cadmic d066586872
[iQue] Match z_sram (#2426)
* [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-17 06:56:22 -05:00
cadmic f329507f97
[iQue] Create/update macros for printing debug strings (#2398) 2025-01-08 10:33:49 -05:00
cadmic 9dafc2f2e4
[iQue] Build some C files with EGCS (#2396) 2025-01-02 03:35:22 -05:00
cadmic 8a48c17cc8
Move D_80134488 from system_heap.c to fp.s (#2387)
* Move D_80134488 from system_heap.c to fp.s

* Add declarations

* Fix bss
2024-12-24 12:49:31 -05:00
Tharo df5d4cb467
[Audio 10/10] Loose ends (#2337)
* 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-12-13 19:26:36 -05:00
fig02 016aef482b
Document Culling (#2318)
* document culling

* format

* depth -> distance

* format

* var name

* new graph link

* rephrase actor flags

* tharo's comments + some more tweaks

* is this causing the problem?

* change wording

* cant scope the temp

* format

* dragorn review

* bad merge

* player -> camera in descriptions

* more its

* cadmic review

* goddamn it why do i have that habit

* projected
2024-12-13 08:12:52 -05:00
fig02 ae1a1adcf1
Player Docs: Begin "Start Mode" Documentation (#2301)
* set up start mode

* note unused modes

* fix bss
2024-11-18 18:47:41 -05:00
fig02 17edb82c0d
Decouple Debug Features From gc-eu-mq-dbg (#2296)
* 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-17 17:02:07 -05:00
cadmic 8ce69c3ac9
Completely match ntsc-1.0/1.1 bss and add to CI (#2294) 2024-11-12 17:39:08 -05:00
fig02 7dd8f2b6ad
Document `Player_ChooseNextIdleAnim` (#2262)
* 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-08 00:19:10 -04:00
Dragorn421 ed77e143b6
[headers] Create `one_point_cutscene.h`, `z64olib.h` and move stuff to `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-10-01 13:14:54 -04:00
cadmic f7f38ff874
[PAL N64] Completely match pal-1.0 and pal-1.1 and add to CI (#2246)
* [PAL N64] Match pal-1.0 and pal-1.1 and add to CI

* bss fixes from Jenkins
2024-09-28 20:52:45 -04:00
Dragorn421 86a146db24
[includes] z_fishing (#2242) 2024-09-27 15:32:44 -04:00
Dragorn421 fbf797f1e2
[headers] Create `gfxalloc.h`, `map.h`, move protos to `gfx.h`, `z64{player,view}.h` (#2233)
* [headers] Create gfxalloc.h, map.h, move protos to z64{actor,player,view}.h

* oops

* bss

* comment on player_lib protos & format

* format map.h

* Move SCREEN_{WIDTH,HEIGHT} and SET_FULLSCREEN_VIEWPORT to z64view.h

* bss

* revert move screen_width/height

* bss
2024-09-27 14:51:00 -04:00
Dragorn421 bc8945eb3a
[headers] Move libultra protos to ultra64.h (as a temporary measure) (#2234)
* [headers] Move libultra protos to ultra64.h (as a temporary measure)

* format ultra64.h

* bss

* bss

* bss
2024-09-26 23:58:43 -04:00
cadmic bccb219ea3
Fix typos found by codespell (#2229) 2024-09-26 00:21:00 -04:00
Dragorn421 7ccb0a641e
[headers] Create letterbox.h, move more protos from functions.h (#2225)
* [headers] Create z64shrink_window.h, move more protos from functions.h

* format

* include

* bss

* letterbox.h
2024-09-25 13:45:06 -04:00
Dragorn421 5ed5f196d9
[headers] audio functions to z64audio.h and z64ocarina.h (#2223)
* [headers] audio functions to z64audio.h and z64ocarina.h

* bss
2024-09-25 10:25:49 +02:00
Dragorn421 a09ea76025
[headers] gfx_setupdl.h and z64skin_matrix.h (#2221)
* [headers] gfx_setupdl.h and z64skin_matrix.h

* include z64skin_matrix.h

* bss

* bss
2024-09-24 18:18:01 -04:00
mzxrules dc1501e7a0
create ucode_disas.h (#2222)
* ucode_disas.h

* create UcodeType

* bss
2024-09-24 13:45:53 -04:00
mzxrules 56981d5297
Document Player Knockback related functions (#1601)
* 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-23 18:31:00 -04:00
Dragorn421 0f725405d1
[headers] Move z_actor functions to z64actor.h (#2216)
* move

* format

* bss
2024-09-23 11:06:43 -04:00
Dragorn421 a1a192b1a2
[headers] z64inventory.h, move savectx/inventory macros to z64save.h (#2209)
* [headers] z64inventory.h

* move savectx/inventory macros to z64save.h

* commit the file

* bss
2024-09-18 15:40:59 -04:00
Dragorn421 48780cd2b1
Colliders: elemType -> elemMaterial (#2189)
* elemType -> elemMaterial

* format
2024-09-16 18:11:01 -04:00
fig02 e6e067428e
change flag name (#2194) 2024-09-13 10:07:16 -04:00
cadmic 09c1816e2d
Add OOT_PAL_N64 and move other shorthands to versions.h (#2188)
* Move definitions of OOT_NTSC/OOT_PAL/OOT_MQ to versions.h

* Add PAL_N64 shorthand
2024-09-12 05:24:31 -04:00
Dragorn421 f193311013
Colliders: colType -> colMaterial (#2186)
* colType -> colMaterial

* fixups
2024-09-11 21:18:46 -04:00
Dragorn421 64570e871f
Pause doc: Prompt page and save prompt state (#2170)
* Pause doc: Prompt page and save prompt state

* bss

* `QUAD_PROMPT_` -> `PROMPT_QUAD_`

* `QUAD_MAP_WORLD_`, `QUAD_MAP_` -> `WORLD_MAP_QUAD_`

* `PAUSE_QUAD_CURSOR_` -> `PAUSE_CURSOR_QUAD_`

* `PAUSE_SAVE_PROMPT_STATE_RETURN_TO_MENU_ALT` -> `_2`

* bss

* bss

* add comments to help clarify save prompt vs prompt
2024-09-11 18:58:33 +02:00
Dragorn421 76d97ac18a
[headers 14] libc64 headers (#2177)
* [headers 14] libc64 headers

* bss

* bss
2024-09-11 18:02:42 +09:00
Dragorn421 cbf9eacf42
[headers 12] Add kaleido_manager.h, move various protos to headers (#2174)
* [headers 12] add kaleido_manager.h, move various protos to headers

* BSS

* bss
2024-09-11 10:17:47 +02:00
Dragorn421 5441559b30
Cleanup gSPMatrix, rename `Matrix_New` -> `Matrix_Finalize`, add `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-11 16:59:23 +09:00
Dragorn421 c7ec814d78
[headers 9] Add src/libc64/ and new "z64" rand.h (#2164)
* rand.h -> libc64/qrand.h

* Add rand.h with z64 rand wrappers

* yeet comment

* code/rand.c -> libc64/qrand.c

* fixup

* move libc64 source to src/libc64/

* fix

* bss

* update file splits disasm metadata
2024-09-08 17:11:41 -04:00
Dragorn421 de1a08c061
[headers 11] stackcheck.h, jpeg functions (#2171)
* [headers 11] stackcheck.h, jpeg functions

* bss
2024-09-08 12:02:38 -04:00
Dragorn421 1332356e5c
Pause doc: Cursor drawing (#2159)
* Pause doc: Cursor drawing

* bss
2024-09-07 22:28:46 -04:00
fig02 2056ae5f1a
Document Attention/Lock-on Related Actor Flags (#2161)
* document actor flags 0, 2, 3, and 27

* format

* fly -> hover

* wodring
2024-09-07 17:53:48 -04:00