Commit Graph

1357 Commits

Author SHA1 Message Date
LagoLunatic 458d027fc9 d_a_hookshot equivalent 2025-04-02 15:54:23 -04:00
LagoLunatic 4f6533b871 hookshot and player_hook cleanup, inlines 2025-04-01 23:25:03 -04:00
LagoLunatic f2ff19c83e player_fan 99% 2025-04-01 20:46:23 -04:00
LagoLunatic bc4c7dd5f9 Match Link's HIO class constructor
The constructor and section ordering of the constructor both seem to match now.
2025-04-01 16:03:06 -04:00
LagoLunatic 5dff645173 Cleanup
0.0099999998f -> 0.01f
4 space indents
Unnecessary parentheses from Ghidra
etc
2025-04-01 15:26:16 -04:00
123456789758 ecd9b48113 d_a_player_sword.inc - Several matching with minor issues. (#731)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2025-04-01 14:39:22 -04:00
123456789758 53dfbaa55a d_a_player_bottle.inc - Several matching with minor issues. (#729)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2025-04-01 14:38:18 -04:00
123456789758 d4ef6a86c9 d_a_player_climb.inc - All matching except floats. (#716)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2025-04-01 14:38:02 -04:00
123456789758 3bb407642a d_a_player_ship.inc - Several close to matching except minor issues. (#721)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-04-01 14:31:12 -04:00
123456789758 340a15feb3 d_a_player_grab.inc - Almost all matching except a few with minor issues. (#719)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-04-01 14:31:00 -04:00
123456789758 81379e4b3f d_a_player_vomit.inc - Almost all matching with minor issues. (#726)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-04-01 14:30:25 -04:00
123456789758 cc76f98a2c d_a_player_ladder.inc - All matching except floats. (#714)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-04-01 14:30:06 -04:00
123456789758 cceb1ca57d d_a_player_fan.inc - Almost all matching except floats. (#725)
* d_a_player_fan.inc - Almost all matching except floats.

* procFanSwing and procFanGlide close to matching.

---------

Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 18:48:51 -04:00
123456789758 d4bbb4fb43 d_a_player_battle.inc - All close to matching with minor issues. (#720)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 18:44:43 -04:00
123456789758 221f6e8033 d_a_player_crawl.inc - Some matching except floats, others close to matching, (#718)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 18:15:22 -04:00
123456789758 95c813aad2 d_a_player_bow.inc - Almost all matching with only minor issues. (#723)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 18:12:17 -04:00
123456789758 a69b604b01 d_a_player_pushpull.inc - Almost all matching except minor issues. (#728)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 18:10:34 -04:00
123456789758 0b883c50c6 d_a_player_boomerang.inc - All fully matching. (#722)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 17:58:45 -04:00
123456789758 26f1b0c8f0 d_a_player_whide.inc - Almost all matching except floats, (#717)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 17:56:25 -04:00
123456789758 6bc267c369 d_a_player_hook.inc - All matching except floats. (#724)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 17:48:52 -04:00
123456789758 3f2fc267c5 d_a_player_hang.inc - All matching except floats. (#715)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-31 17:41:48 -04:00
LagoLunatic 41621f4e72 Fix weird gameInfo loads caused by casts within inlines 2025-03-31 14:07:20 -04:00
LagoLunatic a601fa33e5 Cleanup 2025-03-31 13:49:02 -04:00
123456789758 f4587892ff d_a_player_dproc.inc - All except two fully matching. (#713)
* d_a_player_dproc.inc - All except two fully matching.

* Addressed review comments.

* Missed two mCurProc checks.

* Second review.

---------

Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-03-30 14:08:11 -04:00
LagoLunatic a0536371e6 player_swim 100%, bunch of inline cleanup 2025-03-29 20:09:32 -04:00
Mattias Blum 2376acb224 d_a_player_swim near complete (#711)
* initial progress

* more progress

* added `dComIfGp_clearItemTimeCount` inline

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress, all code matching except for `setSwimMoveAnime`

* resolving symbols, forgot to mention `changeSwimOutProc` is not matching as well

* PR changes made, only `setSwimMoveAnime` nonmatching

* fixed reference to old member name for `mItemTimeMax`
2025-03-29 18:55:06 -04:00
LagoLunatic b9c1eed694 d_demo work 2025-03-28 22:35:13 -04:00
LagoLunatic db2c5ef978 Cleanp a bunch of stuff 2025-03-28 20:44:06 -04:00
LagoLunatic b72d243f9b Cleanup the 3 path/point structs 2025-03-28 20:31:04 -04:00
LagoLunatic bf2a5b9808 shand OK, ship 99.8%, add some missing inlines 2025-03-28 18:15:14 -04:00
mattias-blum d945c14cac d_a_ship 95% (#706)
* Initial Progress

Basic functions at 100% matching

100% Matching:
- `daShip_Draw`
- `daShip_Execute`
- `daShip_IsDelete`
- `daShip_Delete`
- `daShip_createHeap`
- `daShip_Create`

* implemented `getJointPos` inlines in `daTornado_c` needed for d_a_ship

* implemented `Center()` inline in `dCamera_c` needed for d_a_ship

* added `setTranslationX` inline to `J3DTexMtx` needed for match in d_a_ship

* parameters set to `const` for certain inlines in `m_Do_mtx.h`

* added `dComIfGp_onMenuCollect` inline

* changed `shipSpecialDemoStart` return type to `BOOL`

* added member functions to `dPa_waveEcallBack`, `dPa_splashEcallBack `, `dPa_trackEcallBack`

also modified member type of `mRotMtx` of `dPa_waveEcallBack`  and `mPos` of `dPa_trackEcallBack`

* added member to `daGrid_c` that is used in d_a_ship

* added `mDoAud_setShipSailState` and `mDoAud_shipCruiseSePlay` inline functions

* added `fopAcM_seenPlayerAngleY` inline

* d_a_ship mostly matching

approx. 90% matching, mostly regalloc issues. , `checkNextMode`, `setRopePos`, `setHeadAnm`, and `execute` need to have their logic fixer

* replace `unknown_inline_TODO ` from `daShip_c` with `checkForceMove`

* .data match

* .rodata matching

* more inline return type changes from `bool` to `BOOL`

Also changed the array size of `mPlayerStatus`

* implemented `force_calc_wind_rel_angle` inline in `daGrid_c`

* fix `d_a_ship_static`

* fixed `getEmitterAxis`, might need review but works for now

* more progress

* reverted change to `getEmitterAxis`, moved casts to function call in `dPa_waveEcallBack::executeAfter`

* more progress

* change return types of certain inlines from `BOOL` to `u32`

`dComIfGp_checkCameraAttentionStatus`, `dComIfGp_checkPlayerStatus0`, `dComIfGp_checkPlayerStatus1` needed for match in d_a_ship

* fixed memory addresses in `daGrid_c`

* more progress

* resolving symbols

* Initial PR changes

* Removed unnecessary cast

* replaced instances of `PSVECSquareMag` with corresponding inline functions

* update memory layout in `d_a_grid` for consistency

* More PR changes

`checkNextMode` and `procZevDemo` now at 100% matching
2025-03-28 14:17:21 -04:00
Azurpourpre 4a2d7dd320 d_a_shand (#709)
* hand_draw match

* daShand_Draw match

* d_a_shand/control1 match except regalloc

* control2 almost done (regalloc issue)

* control3 match

* cut_control progress

* cut_control3 match

* normal progress

* cut match

* hand_move progress

* daShand_Execute match

* daShand_Delete & daShand_IsDelete match

* daShand_Create progress

* daShand_solidHeapCB match & useHeapInit progress

* daShand_HIO_c::daShand_HIO_c match

* control1 match

* control2 match

* cut_control match

* hand_move progress

* daShand_Create progress

* useHeapInit match

* Minor fixing

* Fixed hand_move stack

* semicolon forgot

* Added suggestions (PR #709)

* Correcting typo
2025-03-28 14:02:56 -04:00
Zeclos f02691a407 D_a_tpota (#710)
* cool push for now, execute almost done

* _create function

* alot closer to matching most

* fixed data

* delete function

* rodata is good now

* 100% matching

* matching in configure.py

* changes from comments
2025-03-27 04:24:40 -04:00
Ross Newman 1a752bbbb9 d-a-obj-shmrgrd (#708)
* start d-a-obj-shmrgrd

* mostly matching

* constructor

* 100%

* d-a-obj-shmrgrd equivalent
2025-03-27 01:26:27 -04:00
LagoLunatic 13fd5f3dc4 d_a_bk OK 2025-03-24 20:32:30 -04:00
Ross Newman 8c89f42a0c d-a-obj-swpush (#707)
* start d-a-obj-swpush

* wip

* 99% match

* renames

* cflag

* label attr

* pr feedback
2025-03-23 18:39:30 -04:00
LagoLunatic 9a3f07b7da Fix obj_shelf weak order, fix MoveBG inline usage 2025-03-21 01:42:04 -04:00
LagoLunatic e71662caa0 More return types, set up all dBgS_MoveBgActor subclasses 2025-03-18 16:17:53 -04:00
LagoLunatic 4c3bd2c651 Missed some spots where cPhs_State should be used 2025-03-18 15:10:32 -04:00
LagoLunatic 822b13e57a Add cPhs_State typedef and use it everywhere 2025-03-17 22:26:56 -04:00
LagoLunatic 455ff4a571 akabe/swheavy create_heap: Found a slightly cleaner fakematch 2025-03-17 19:49:14 -04:00
Ross Newman 20317a1942 d-a-obj-swheavy (#704)
* start d-a-obj-swheavy

* mostly finish d-a-obj-swheavy

* renames and 100%

* mark matching

* address PR comments
2025-03-17 19:03:04 -04:00
LagoLunatic b97eeed779 Rename J3DFrameCtrl loop mode enum
See https://github.com/zeldaret/tp/pull/2327/commits/2a284165cf35a2324d36d825add5c06ffa864398
2025-03-17 16:21:46 -04:00
LagoLunatic 5cb5fe848b Clean up mDoAud_seStart inline
The devs apparently made 4 versions of this inline instead of just using default arguments.
2025-03-17 15:57:18 -04:00
LagoLunatic 9fd3443e35 Minor include cleanup in actor headers 2025-03-17 15:39:52 -04:00
LagoLunatic 95ceb5c3ef d_a_obj_homen OK 2025-03-17 15:25:51 -04:00
LagoLunatic 6acb5f801b dolphin/dvd OK 2025-03-16 21:52:11 -04:00
mattias-blum ae528dc3d9 d_a_fganon 100% (#695)
* added `cBgS_Chk::OffSameActorChk`inline function

* initial progress of d_a_fganon

100% Matching:
- `anim_init`
- `tama_draw`
- `daFganon_Draw`
- `daFganon_IsDelete`

Partial Matching:
- `daFganon_Hio_C::daFganon_HIO_c` (88%)
- `deru_brk` (98%, code is matching, variable memory locations needed for 100% match)
- `kieru_brk` (98%, code is matching, variable memory locations needed for 100% match)
- `deru_brk2` (98%, code is matching, variable memory locations needed for 100% match)
- `kieru_brk2` (98%, code is matching, variable memory locations needed for 100% match)
- `pos_move` (73%)
- `move` (80%)
- `mahou_se_set` (82%)
- `daFganon_Delete` (94%, code is matching, variable memory locations needed for 100% match)
- `useHeapInit` (92%)
- `daFganon_Create` (77%)
- `fgannon_class::fganon_class()` (88%)

Remainder haven't been started

* Additional progress, more functions at 100% matching

100% Matching:
- `daFganon_Hio_C::daFganon_HIO_c`
- `anim_init`
- `tama_draw`
- `daFganon_Draw`
- `deru_brk`
- `kieru_brk`
- `deru_brk2`
- `kieru_brk2`
- `pos_move`
- `fly_se_set`
- `mahou_set`
- `mahou_se_set`
- `daFganon_IsDelete`
- `daFganon_Delete`
- `useHeapInit`

Partial Matching:
- `fly` (60%)
- `shot` (46%)
- `move` (92%)
- `daFganon_Execute` (11%)
- `daFganon_Create` (60%)
- `fgannon_class::fganon_class()` (93%)

* More functions at 100% matching

- Added a `cXyz` member to `mant_class` that is referenced in this TU.
- Changed 'fganon_class` to inherit from `fopEn_enemy_c` instead of `fopAc_ac_c`

100% Matching:
- `daFganon_Hio_C::daFganon_HIO_c`
- `anim_init`
- `tama_draw`
- `daFganon_Draw`
- `deru_brk`
- `kieru_brk`
- `deru_brk2`
- `kieru_brk2`
- `pos_move`
- `fly_se_set`
- `fly`
- `shot`
- `spinattack`
- `fly2`
- `tama_set`
- `mahou_set`
- `mahou_set`
- `mahou_se_set`
- `daFganon_IsDelete`
- `daFganon_Delete`
- `useHeapInit`
- `fgannon_class::fganon_class()`

Partial Matching:
- `move` (96%, code is matching, variable memory locations needed for 100% match)
- `daFganon_Execute` (96%, code is matching, variable memory locations needed for 100% match)
- `daFganon_Create` (96%, code is matching, variable memory locations needed for 100% match)

* additional functions at 100% matching

Cleaned up the values of the static globals, will resolve their symbols later

100% Matching:
- `daFganon_Hio_C::daFganon_HIO_c`
- `anim_init`
- `tama_draw`
- `daFganon_Draw`
- `deru_brk`
- `kieru_brk`
- `deru_brk2`
- `kieru_brk2`
- `pos_move`
- `fly_se_set`
- `fly`
- `shot`
- `spinattack`
- `fly2`
- `tama_set`
- `mahou_set`
- `shot2`
- `spinattack2`
- `down`
- `kabe_check`
- `deru`
- `kieru`
- `fail`
- `standby`
- `start`
- `last_end`
- `damage_check`
- `ball_tg_check`
- `mahou_se_set`
- `daFganon_IsDelete`
- `daFganon_Delete`
- `useHeapInit`
- `fgannon_class::fganon_class()`

Partial Matching:
- `end` (97%, code is matching, variable memory locations needed for 100% match)
- `move` (97%, code is matching, variable memory locations needed for 100% match)
- `demo_camera` (63%)
- `daFganon_Execute` (97%, code is matching, variable memory locations needed for 100% match)
- `daFganon_Create` (98%, code is matching, variable memory locations needed for 100% match)

* added `mDoAud_changeSubBgmStatus` inline

* changed return type of `dComIfGp_getPlayerCameraID` inline

needed this change to get a match for this `d_a_fganon`

* d_a_fganon 100% matching

Currently the checksum fails but I have some theories as to why that might be. I'll continue to cleanup the symbols.

* symbol cleanup

* fixed `mDoAud_changeSubBgmStatus` calling wrong function

* 100% matching now, checksum passes

There is a weak function ordering issue so I included the param in `configure.py`

* PR changes made

* Additional PR changes, better naming of class members
2025-03-16 19:04:00 -04:00
LagoLunatic 243c576d6e JASHardStream OK 2025-03-15 20:35:06 -04:00
LagoLunatic 89e9cdafb5 JASChannel OK 2025-03-15 19:55:45 -04:00