Commit Graph

25 Commits

Author SHA1 Message Date
ComplexPlane 85e42eb3ec Labels. Mostly related to physics and animation. (#18)
* Rename stcoli functions

* Add gen_compile_commands.py script

* Add shebang

* gen_compile_commands: pretend to be GCC

* Separately compilable game headers

* Separately compilable system dolphin headers

* Work in progress starting stcoli.c

* Partially label PhysicsBall type

And some stcoli funcs

* Stcoli labelling

* Add Vec2d type

* Collision body labels

* StageGoal labels

* More goal labels

* gen_compile_commands.py: Prefer nonmatching C to matching asm

* sda2-^>_SDA2_BASE_ in stcoli.s

* Match first stcoli function (dol not matching atm though)

* Fix float literals (still not OK)

* gen_compile_commands.py absolute paths (needed on Linux?)

* gen_compile_commands.py fixes

- Export absolute paths, even on Linux
- Add some defines so more C code is exposed for clangd
- Remove extraneous spaces in output
- Executable bit

* Executable bit

* stcoli: match function 2 (meshcoli_grid_lookup())

Didn't fix asm/float literals though

* Small refactor fixes

* First 2 stcoli functions OK

* PhysicsBall labels

* Decompile stcoli_sub03

DOL not matching again though...

* Fix stcoli.s sdata2 alignment after stcoli.c's

* Stcoli func labels

* Format somewhat more reasonably

* Decompile stcoli_sub04

* Decompile stcoli_sub05

Small stcoli_sub05 cleanup

static.lcf

* Labelling

Labelling

Labelling

Labelling

Labelling

* Coli struct labels

* Decompile collide_ball_with_tri_verts

* Decompile collide_ball_with_tri_vert

* Small labels

* Move vec mag sq function to mathutil.h

* Decompile collide_ball_with_rect

* More labels

* Even more labels

* Decompile collide_ball_with_cylinder

Cleanup

* Correct mathutil ifdefs

* Decompile collide_ball_with_circle

* Format

* Labels

* Decompile g_collide_ball_with_sphere

* Decompile g_collide_ball_with_cone

* Little labelling

* Update static.lcf

* PhysicsBall labels

* hit -> plane

* PhysicsBall docs

* Add .clang-format

Not everything follows this but it's generally close to the observed
style

* Rename, and tidy unused stack vars

* Misc

* Remove duplicate ColiRect type

* Label check_ball_in_goal()

* Rename stagedef itemgroupo init pos/rot

* Decompile collide_ball_with_plane (woo)

This function was an extremely tough one, probably harder than all the
previous stcoli funcs combined. Lots of playing around with
combining/splitting temps that may be Vec's or individual temps.

Remove thing

* Document collide_ball_with_plane

* Reword some collide_ball_with_plane docs

* f32 -> float

* accel -> gravityAccel

* Decompile test_line_intersects_rect

* Decompile stcoli_sub15

* Clean up stcoli_sub15 a little

* RaycastHit result

* Renames

* MovableStagePart -> Itemgroup

* stcoli raycast renames

* ItemgroupInfo field labels

* Decompile raycast_stage_down()

* Clean up raycast_stage_down()

* Label bonus_wave_raycast_down()

* Fix bonus_wave_raycast_down() return type

asdf

* Decompile raycast_tri()

* Cleanup raycast_tri()

* Skip raycast_cone(), decompile raycast_sphere()

* Decompile raycast_cylinder()

* .clang-format

* Freecam stub

* 32-byte align dvd read buffers

* Working freecam

* Rename some stagedef stuff

* More stagedef renames

* Stage object labels

* Slight freecam improvements

* Remove nonmatching code

* Label GMA stuff

* Keyframe labels

* Bg model stuff

* Fix stcoli shiftability

* Bg model animation labels

* Bg anim labels again

* Stuff

* Fix wrong label

* The great itemgroup rename

* More consistent .gitignore

* Undo erroneous labels in input.c

* Fix newline

* Label tevutil function names

* GX enums

* Propagate tevutil.h include

* Remove unnecessary tevutil includes

* Tevutil function signatures

* Fix GXSetFog_cached arg order

* Format tevutil.h

* GXSetCullMode checkpoint

* Finish GXSetCullMode enum labels

* Fix enum, update .gitignore

* Itemgroup -> AnimGroup rename pt1

* animgroup -> anim_group

* Fix

* Fix aniimGroup

* Sampler label

* Avdisp checkpoint

* More avdisp label

* More avdisp

Fog

* build_tev_material checkpoint

checkpoint

checkpoint

* Restore matching

* avdisp checkpoint

* Renames

* Label some GMA shape flags

* Propagate GXSetBlendMode_cached

* Propagate GXSetTevSwapMode

* Propagate GXSetFog

* Tev material setup funcs

* Propagate GXSetTevColorIn

* Propagate GXSetTevAlphaIn

* Propagate GXSetTevColor/AlphaOp

* Propagate GXSetTevOrder

* Propagate GXLoadTexObj_cached

* Rematch

* Sampler -> TevStageDesc

* More tev-related labels

* Yes this is probably the unlit flag

* TevMaterialCache-related labels

* Rematch

* Document extra disp lists

* GMA header and flags

* Idk

* Stuff

* More stuff

* Tev post mul/add labels

* Idk

* Draw func labels

* GMA docs

* Layer funcs

* Color/alpha in

* Rematch

* Quick comment remove

* Fix couple function names

* Fix tev layer flag names

* Fix tev layer flags again

* Fix Dolphin includes

* Fix check_ball_entered_goal

* Remove unnecessary stcoli include
2022-04-17 16:02:56 -05:00
ComplexPlane 0bff44d57f Tevutil labels (#19)
* Label tevutil function names

* GX enums

* Propagate tevutil.h include

* Remove unnecessary tevutil includes

* Tevutil function signatures

* Fix GXSetFog_cached arg order

* Format tevutil.h

* GXSetCullMode checkpoint

* Finish GXSetCullMode enum labels

* Fix enum, update .gitignore
2022-04-13 17:44:54 -05:00
camthesaxman bb7dd1e253 split some more files 2022-02-01 16:51:31 -06:00
camthesaxman dd7dbc7402 use .4byte whenever possible 2022-01-28 18:45:20 -06:00
camthesaxman 9362b4c89d add test recipe and fix up some lwzu instructions 2022-01-27 20:50:36 -06:00
camthesaxman d8e12db822 more labeling 2022-01-27 19:38:33 -06:00
camthesaxman 039ac0e1f5 remove hardcoded _SDA2_BASE_ in assembly files 2022-01-26 19:35:57 -06:00
camthesaxman 4dbc9270eb some adv.c cleanup 2022-01-14 18:48:50 -06:00
camthesaxman e88308f221 match init_ape_model_info 2022-01-08 21:05:14 -06:00
camthesaxman 41fa819f5f decompile ord_tbl.s 2022-01-05 21:12:48 -06:00
camthesaxman 4445410db2 finish decompiling code_3.s 2022-01-05 17:58:17 -06:00
camthesaxman ade516f720 decompile more of code_3.s 2022-01-02 18:21:08 -06:00
camthesaxman a5a7376fb8 labeling 2021-12-31 17:42:25 -06:00
camthesaxman 4a452787ce more nl2ngc.c labeling 2021-12-26 22:02:43 -06:00
camthesaxman 62cce83d39 decompile some of code_3.s 2021-12-26 12:15:54 -06:00
camthesaxman e30e34a4b5 decompile func_80031A58 2021-12-26 11:54:46 -06:00
camthesaxman 69ff7f65be remove all remaining hardcoded pointers 2021-12-22 21:34:57 -06:00
camthesaxman 51bd330969 remove some hardcoded pointers 2021-12-22 17:56:40 -06:00
camthesaxman d69cf621b6 build rel files (#6)
* initial work on reldisasm

* super janky WIP elf2rel tool finally produces a matching file

* build mkbe.sel_stage.rel

* decompile mkbe.sel_stage.rel

* oops

* accentally broke dependencies

* disassemble mkbe.rel_mini_pilot.rel

* refactor elf2dol

* disassemble mkbe.option.rel

* disassemble mkbe.rel_mini_bowling.rel

* disassemble mkbe.rel_mini_race.rel

* disassemble mkbe.test_mode.rel

* disassemble mkbe.sel_ngc.rel

* disassemble mkbe.rel_mini_fight.rel

* disassemble mkbe.rel_mini_billiards.rel

* disassemble mkbe.rel_mini_golf.rel
2021-12-20 22:09:56 -06:00
camthesaxman 9ac705d22a split more files 2021-12-02 17:15:47 -06:00
camthesaxman 3802c1e165 labeling and cleanup 2021-12-02 16:46:39 -06:00
camthesaxman 33cd7edda7 decompile more of camera.s 2021-11-08 19:53:14 -06:00
camthesaxman c1aa6828de remove hardcoded _SDA_BASE_ in assembly files 2021-11-05 20:03:20 -05:00
camthesaxman d3002f1ecb decompile more of event.s 2021-08-12 22:57:39 -05:00
camthesaxman 2c04d3a02e decompile relocation.s 2021-08-08 22:30:20 -05:00