180 Commits

Author SHA1 Message Date
LagoLunatic 47e01ede22 Fix d_a_npc_md inline usage 2026-05-22 18:43:02 -04:00
LagoLunatic ab5659b201 d_a_player_main cleanup and some demo matches (#1016)
* d_a_player_main cleanup and some demo matches

* Add unions for player_main procvars

* Make d_a_player_main fields private
2026-05-21 19:18:46 -04:00
LagoLunatic fe76ad5a3b Demo work (#984) 2026-05-09 18:42:01 -04:00
LagoLunatic 0bff98c469 Merge pull request #980 from LagoLunatic/daobj
d_a_obj OK
2026-05-07 22:42:07 -04:00
Maide ea80482679 d_a_hmlif (#877) 2026-05-07 15:34:28 -04:00
LagoLunatic 765f88e4f3 Move extern forward decls from cpps to headers 2026-04-01 19:38:51 -04:00
LagoLunatic 36c9a1e4b4 d_a_wind_tag OK (#944) 2026-04-01 18:58:31 -04:00
LagoLunatic bc1ca84bdc Remove fake cSAngle::operator= 2025-12-27 21:32:04 -05:00
LagoLunatic 48dcebd9e8 Misc cleanup 2025-12-27 21:32:04 -05:00
LagoLunatic 27f0df12eb Fix G_CM3D_F_INF define 2025-09-28 14:01:14 -04:00
123456789758 5fdcda6661 d_a_bwd - 98% matching (#892)
Co-authored-by: ‎ ‎ ‎ <‎ ‎ ‎>
2025-09-14 13:17:50 -04:00
LagoLunatic 3fa09b0dde himo2 closer to matching 2025-09-09 15:23:57 -04:00
LagoLunatic 594a9b3fd0 boko closer to matching, various documentation, enum/inline/struct fixes 2025-08-26 17:05:59 -04:00
Maide 7f22dd203f d_a_cc (#867) 2025-08-26 12:49:28 -04:00
Maide 93aac09731 d_a_obj_leaves (#831) 2025-08-04 14:34:19 -04:00
Maide cc72bf0f19 d_a_amiprop (#808) 2025-07-15 14:50:06 -04:00
LagoLunatic ea02e17b83 obj_mkiek demo match, remove fake inlines from cXyz 2025-07-14 19:11:39 -04:00
LagoLunatic b465138e9c daPy_lk_c::procBottleOpen 2025-06-14 17:00:59 -04:00
LagoLunatic cdfaa05635 More demo work, cleanup 2025-06-01 16:05:42 -04:00
LagoLunatic bd917524ba Demo work, d_a_kytag02 and d_a_ff OK 2025-05-31 20:09:14 -04:00
LagoLunatic 7cd75e8f7b Demo matches (#767) 2025-05-24 18:54:46 -04:00
LagoLunatic 21cd7a2f67 G_CM3D_F_INF 2025-05-21 16:46:21 -04:00
LagoLunatic ee2e164fa2 Demo: Fix cM3dGCyl 2025-05-21 14:51:12 -04:00
LagoLunatic cbbd4c2dc0 Match more player_main regalloc/stack/etc issues 2025-05-08 23:00:19 -04:00
LagoLunatic f690b92d28 Add camera mWork union; also fix clang union handling
Union members with non-trivial ctors/dtors is undefined behavior and clangd normally throws a fit and refuses to parse the whole union, but it seems to be possible to ifdef the problematic ctors out for non-mwerks compilers and explicitly tell modern compilers to use the defaults instead. Thanks to encounter for this fix.
2025-05-07 01:19:23 -04:00
LagoLunatic 2690304a74 player_main cleanup and a few matches 2025-04-29 15:44:49 -04:00
Jcw87 5e7b59f2fe Improve compiler compatibility (#743)
* fix returns

* use standard C headers

* struct/class mismatch

* explicit this in template

* switch variable scope

* C standard compliance

* & l-value
2025-04-29 12:49:09 -04:00
Mattias Blum 5f287fcaee d_camera 28% (#732)
* initial progress

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* fix outdated member names

* more progress

* more progress

* more progress

* more progress

* more progress

* more progress

* fixed deprecated member references

* more progress

* more progress

* more progress

* fix deprecated member references

* more progress

* more progress

* more progress

* more progress

* more progress

* check in for review

* remove comment

* initial PR changes

* more PR changes

* more PR changes

* added anonymous struct as class member

* reverted changes to `stage_camera2_data_class`

* added `dCamera_event_data`, `dCamera_monitoring_things` and `dCamera_DMC_system` from debug maps

* more progress

* more progress

* realmatch for `camera_draw`

* PR changes

* fix broken merge

* formatting

* Reverted change to `camSphChkdata` that caused  `sph_chk_callback` match to regress

* Reverted change to `BG` struct that caused ctor and dtor match to regress
2025-04-11 16:37:42 -04:00
LagoLunatic db2c5ef978 Cleanp a bunch of stuff 2025-03-28 20:44:06 -04:00
LagoLunatic 822b13e57a Add cPhs_State typedef and use it everywhere 2025-03-17 22:26:56 -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 e9afe4c428 Add comments to scene profile structs 2025-03-15 19:29:10 -04:00
LagoLunatic 8509a38a8e Cleanup 2025-03-10 21:17:59 -04:00
LagoLunatic 7678a0be84 d_bg_w and c_m3d OK 2025-03-07 17:40:54 -05:00
LagoLunatic 49c69eeb0f C_BG_MIN_HEIGHT, C_BG_MAX_HEIGHT 2025-03-06 20:41:37 -05:00
LagoLunatic d882c16b55 d_bg_w progress 2025-03-06 01:12:50 -05:00
LagoLunatic c4ad9f7241 Various cleanup 2025-02-23 19:59:54 -05:00
LagoLunatic 7297cbaf38 c_m3d done except for regalloc 2025-02-05 18:04:26 -05:00
LagoLunatic 2ece7c9ce1 Create constants for m_Do_machine heap/buffer sizes 2025-01-31 15:35:43 -05:00
LagoLunatic 901bc51f40 d_a_npc_md work 2025-01-27 19:26:14 -05:00
Jasper St. Pierre 2db35c0108 name cPhsUNK3_e 2024-12-24 14:37:05 -08:00
LagoLunatic 0492ca2b52 start d_menu_option 2024-11-05 20:53:59 -05:00
Jasper St. Pierre 70044ec8dd Clean up cc enums 2024-10-28 21:16:46 -07:00
LagoLunatic ce592831fe Warning/error cleanup 2024-10-18 15:55:31 -04:00
LagoLunatic ba203cc5fb Match most cM3d tri funcs 2024-09-06 19:20:29 -04:00
Jasper St. Pierre 893f6bc112 d_particle work 2024-09-02 18:21:08 -07:00
LagoLunatic 660a5ac699 cc cleanup 2024-08-24 12:39:21 -04:00
LagoLunatic a25d2651de Move sqrtf to std:: namespace 2024-08-08 14:55:57 -04:00
LagoLunatic d287e79ab0 Move abs and fabsf to std namespace 2024-08-07 12:55:30 -04:00
LagoLunatic 287bdab653 Match daNpc_Bs1_c::CreateInit and cLib_minMaxLimit inline 2024-07-19 13:17:43 -04:00