Commit Graph

66 Commits

Author SHA1 Message Date
Jeffrey Crowell 9af9240253 builds on mac again
revert some useless ifdefs

rm TARGET_PC in the wrong place

remove stubbed version of functions
2026-02-25 11:09:19 -08:00
PJB3005 fcf1f4bed1 Fix wrong forward declares (struct/class)
Requires removing the now-matching symbols from jsystem_stubs.cpp
2026-02-24 16:58:12 +01:00
Lurs 3b742025db Fix MSVC compiler and linker errors
- Fix struct/class forward declaration mismatches (JAIAudience, JASTrack) causing different MSVC mangled names and unresolved symbols
- Add jsystem_stubs.cpp with stubs for JASHeap, JASVoiceBank, J3DShapeTable, JAUSection, JHICommBuf, HIO/HIO2, JOR
2026-02-13 23:28:47 +01:00
kipcode66 d82453292a Merge remote-tracking branch 'decomp/main' into compile 2026-01-26 18:11:18 -05:00
hatal175 6e1fcd4dcf Work on d_jdpreviwer (#3067) 2026-01-25 21:20:02 -08:00
TakaRikka c9e2a73dda general cleanup, d_menu_quit / d_a_obj_testcube mostly done, d_msg_scrn_explain debug (#3065)
* typedef for cPhs_Step

* make sdk includes consistent

* d_menu_quit / d_msg_scrn_explain debug

* d_a_obj_testcube mostly done

* d_debug_pad mostly done

* jstudio tool library headers

* some JStudioCameraEditor headers

* d_jcam_editor mostly done

* try fixing some shield regressions

* d_bg_parts mostly done

* fix merge errors

* debug fix
2026-01-24 23:36:23 -08:00
kipcode66 b1e20051ce get dusk past compilation and into linking 2026-01-15 19:24:39 -05:00
kipcode66 9b7e55965f standard compiler compatibility changes (#3040)
* move math to cmath

* replace stdarg to cstdarg

* change stdint to stdint.h

* minor fixes

* change stdio to cstdio

* change stdlib to stdlib

* renamed ctype to cctype

* fix missing argument for UNSET_FLAG
2026-01-13 00:48:25 +02:00
roeming 37ec227b3f first round of constants cleanup (#3021)
* first round of constants cleanup

* move m_PI_D definition

* remove compatibility comment

* add future version of angle subtracting with/without cast

* whitespace change to run builds again
2026-01-10 23:38:04 +02:00
kipcode66 ea53712c30 Add guards around std library headers (#3013)
* Last fix for standard compiler error

* adding define guards around headers

* rename cmath.h and climits.h to cmath and climits respectively

* renaming cstdarg.h to cstdarg

* renaming cstdlib.h to cstdlib

* renaming cstring.h to cstring

* renaming cstdio.h to cstdio

* renaming cmath locale ctype

* renaming stdarg string and va_list

* renaming cstddef

* renaming stdio stddef stdlib

* renaming algorithm, functional, iterator, memory, and utility

* renaming bitset, cstdint, limits, and stdint

* renaming new and type_traits

* update quote includes for standard library headers to angle bracket includes
2026-01-05 03:50:45 -08:00
TakaRikka 46d53ab65f MSL_C header cleanup (#2988)
* msl_c header cleanup

* math header cleanup

* fix rest of shieldD configs

* cleanup cflag configs a bit

* fix shield build
2025-12-23 10:20:32 -08:00
kipcode66 dcbdd76f0b Resource (#2939)
* matching Do_destroy from resource.cpp

* add missing constants from `float.c`

* add numeric_limits for double

* set TObject::reset for each version in stb.cpp

* improve debug matching
2025-12-15 17:00:16 -08:00
Max Roncace 4fa301a6da Clean up conditional compilation a bit (#2943) 2025-12-11 15:34:16 -08:00
kipcode66 1adace595e Improving standard compiler compatibility (#2926)
* Adding explicit dolphin/ prefix & fix characters

* Rename ShiftJIS to SJIS

* Separate JASSeqReader read methods implementation between compilers.

* Fix pointer.h

* fix d_item_data typo

* fix gcn matching issue
2025-12-08 20:31:22 -08:00
Max Roncace cf492884ea Various debug conditional compilation cleanup (#2915)
* Global: Define DEBUG as 0 if not already defined

* Clean up DEBUG-guarded code
2025-12-06 13:34:47 -08:00
LagoLunatic f3b67150aa Work on weak function ordering (#2917)
* Fix functionvalue weak func order

* Add script to help diffing weak function order

* Improve alink weak func order (44 -> 15)

* Improve m_Do_ext weak order (12 -> 7)

* Remove old hack

* Fix d_a_tbox weak func order

* Fix d_a_npc_ks weak func order

* Fix error when trying to diff weak func order for ShieldD due to hidden function alignment gap symbols
2025-12-05 18:46:58 -08:00
robojumper ab9bac5d68 JStudio debug improvements (#2902) 2025-12-01 16:33:32 -08:00
TakaRikka dfa8efa97b project cleanup (#2895)
* some wii OS fixes

* remove old dol2asm comments

* remove dol2asm.h

* remove function address comments

* normalize ATTRIBUTE_ALIGN usage

* DECL_WEAK macro

* fix gcc attribute weak macro

* wrap more mwcc specific things in ifdefs

* fixes

* fix revo sdk version flags

* fixes
2025-11-30 15:23:42 -07:00
LagoLunatic d161aec619 Misc matches (#2845)
* Misc debug matches

* Fix d_map weak function order

* Remove old nonmatching comments

* d_menu_dmap and JASAudioThread OK, fix weak func order and rodata alignment

* More misc matches
2025-11-21 15:52:16 -08:00
hatal175 ddd92d13b4 fvb Matching (#2820)
* fvb Matching

* J2DScreen debug work
2025-11-18 18:13:35 -08:00
LagoLunatic 317d362c95 d_a_demo00 OK (#2817)
* Misc small matches

* Add J3DFrameCtrl::EMode_NULL enum

* Improve weak bss fakematch and remove a functionvalue fakematch

* demo00 OK
2025-11-17 15:38:04 -08:00
LagoLunatic 6ec6fce8cb Fix JUT_ASSERT and several other macros (#2711)
* Fix JUT_ASSERT to be a nested define

* Switch names that appear in asserts to be constants instead of defines

* Replace `0` in asserts with `NULL` or `FALSE`

* Fix fpclassify

* Fix ARRAY_SIZE

* Use G_CM3D_F_INF

* More fixes for fpclassify

* Remove FLOAT_LABEL

* Remove incorrect FLAG_ON macro

* Remove UNK_BSS macro

* Silence clangd unused header warning for PCH
2025-09-28 13:11:07 -07:00
TakaRikka 87069235c0 some J3D/misc cleanup (#2628)
* some j3d cleanup

* begin using uintptr_t

* j3dgraphbase cleanup

* j3dgraphanimator cleanup
2025-09-04 17:56:59 +03:00
LagoLunatic aed8fe8cd3 Start linking some TUs on debug and PAL (#2612)
* Fix clang union handling (affects all TUs including d_camera.h)

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.

* Link all TUs that already match on debug

In order to link TUs for debug, most functions seem to need to have their alignment set to 16 in symbols.txt. There are a few hundred functions that seem to be the exception and break when their alignment is set to 16, but I don't know the reason for this.

* Remove some fakematches (nosyminline/sym off) for weak func order in retail

* Fix clang not knowing that MSL_C++ is C++

* Link more debug TUs

* Fix missing PAL split

* Fix wrong slashes being used in includes

* RZDE01_00: Fix incorrect capitalization in config.yml

* Add RZDE01_00 to configure task

* Revert configure.py to use MatchingFor

* Fix PAL splits and symbols, link matching PAL TUs
2025-08-27 17:37:31 -07:00
LagoLunatic fb33d7cfc4 getDemoIDData matched, fix up various inlines and template classes (#2489)
* Fix debug build

* getDemoIDData matched, fix up various inlines and template classes

* Remove nonmatching comments
2025-06-17 22:11:53 -07:00
robojumper b567ccba87 jstudio-object OK (#2427)
* jstudio-object checkpoint

* jstudio-object OK

* Small debug improvements
2025-05-08 18:06:38 +03:00
hatal175 efc781e892 Various alignments to debug + matching TUs (#2391) 2025-04-13 11:55:52 -07:00
LagoLunatic c0a458d52a functionvalue 100% (#2389)
* functionvalue 100%

* Fix ninja always thinking the build is dirty due to nonexistent dependent file
2025-04-12 09:12:27 +03:00
Caroline Madsen c4457ede21 Various JSystem work (#2383)
* JKernel and JStudio cleanup

* JMessage cleanup

* JAudio cleanup

* JASBNKParser work

* functionvalue work

* fvb work

* J2D and J3D cleanup

* steal from tww

* J2DPictureEx mostly done

* fix build
2025-04-09 13:45:30 -07:00
LagoLunatic 44fda53986 JSystem work (#2384)
* object-id 100% on debug

Can't be linked due to .text alignment issues?

* J3DMaterialFactory and J3DMaterialFactory_v21 OK

* Match dKy_bg_MAxx_proc
2025-04-08 22:17:20 -07:00
LagoLunatic 98083b30e1 JStudio object-actor OK (#2381)
* Fix debug build

* object-actor OK
2025-04-07 15:36:51 -07:00
LagoLunatic 4e30ad564a Debug JStudio fix + match one retail func (#2378)
* Fix debug build

* Minor fixes

* Match daAlink_c::getDemoLookActor

* Fix JStudio paths in ShieldD splits

* Fix JStudio not compiling on debug

* Fix JStudio not compiling on retail, add fake header
2025-04-06 17:57:52 -07:00
LagoLunatic 7ac9c97e33 Debug build now takes .alf as input instead of .dol (#2360)
* Fix debug build

* Debug build now takes .alf as input instead of .dol

I had to manually remove the following line from symbols.txt for DTK to work:
```
.data = .sbss:0x8074C97C; // type:object size:0x4 scope:local data:byte
```
After that it built OK, and DTK automatically modified all other lines in symbols.txt.

* Fix pragma in header messing up debug optimization level
2025-03-30 15:43:44 -07:00
LagoLunatic 0ff06d2974 Debug version now builds OK and all_source compiles (#2343)
* Fix missing arg to JUT_ASSERT

* Fix some MWCC version diff errors

* Compile m_Do_ext, d_demo, actor_mng

* Add VSCode task to quickly switch between versions

* Unlink magLift for debug

* Update the hash of the debug dol

The old cbea5fa... hash here was for the dol generated by the alf2dol.py script, which produces incorrect alignment.

The dol with the new hash can be obtained by using `dtk elf2dol` to convert the debug .alf file to a dol.

The DOL now builds OK.

* Fix all debug REL dtor splits

All RELs now also build OK, meaning `ninja build/ShieldD/ok` now succeeds.

* Add genMessage declarations to all HIO subclasses

* Fixing more compilation errors

* m_Do_mtx 100% on debug

Cannot be linked due to weak function name mangling?

* Improve various matches

* Fix all remaining compilation errors

* Fix new compilation errors from main

* Fix retail regression

* Link f_pc_profile_lst
2025-03-22 18:00:51 -07:00
TakaRikka eda175afc8 copy dolsdk2004 to tp / b_bh + e_mb done (#2299)
* move dolsdk2004 over

* cleanup some temp work

* finish and cleanup gf

* b_bh done

* d_a_e_mb done
2025-02-10 21:20:42 +02:00
TakaRikka 0894b6ef34 wip debug / pal building, b_gm mostly done (#2285)
* b_gm mostly done

* wip debug / pal building

* fix configure.py

* fix some debug macros / flags
2025-01-16 19:37:39 +02:00
TakaRikka eb64ec68b7 d_demo mostly matched (#2242) 2024-11-10 05:18:28 -05:00
TakaRikka 855ab92930 d_a_alink_effect mostly done (#2227)
* d_a_alink_effect work

* more d_a_alink_effect work

* some d_a_alink data cleanup

* d_a_alink_effect mostly done
2024-10-28 13:00:15 +02:00
hatal175 b634bb8c1b Work on d_a_title (#2215) 2024-10-17 14:21:08 -07:00
TakaRikka 178194ccb2 switch to dtk setup (#2203)
* switch to dtk setup

* some cleanup / fixes

* cleanup d_a_alink literals

* Restore doxygen, update CI & README.md (#1)

* Fix build image ref (#2)

---------

Co-authored-by: Luke Street <luke@street.dev>
2024-10-10 08:29:58 -06:00
hatal175 a53d467d53 Work on JStudio (#2195)
* work on object-light

* JStage control OK

* object-fog OK

* object-camera OK

* Work on object-actor
2024-08-30 04:50:05 -07:00
hatal175 6aade62c6e jstudio particle and sound OK (#2194)
* Work on object-sound

* object-particle OK

* object-sound OK

* JStudio_JAudio2 control OK

* JStudio_JParticle control OK

* JStage object OK

* JStage ambient light OK
2024-08-22 13:17:24 -07:00
hatal175 500fc95b3d Work on d_msg_object (#2186) 2024-08-07 03:18:30 -07:00
Pheenoh 7154ac08e1 d_a_e_fz work, doxygen revamp (#2127)
* initial freezard actor struct + setActionMode OK

* daE_FZ_Draw

* setReflectAngle

* mBoundSoundset

* daE_FZ_Execute & execute

* demoDelete

* daE_FZ_Delete & _delete

* CreateHeap

* useHeapInit

* cc_set

* mtx_set

* action WIP

* way_gake_check

* executeRollMove

* executeMove

* draw WIP

* executeDamage

* checkpoint

* create

* checkpoint

* daE_FZ_c::executeWait

* checkpoint

* daE_FZ_c::damage_check almost done

* rm asm

* rm headers

* setup_profile WIP + doxygen update

* fix merge issues

* docs fix?

* fix2

* doxygen updates

* setup g_profile_E_FZ, profile setup script WIP

* update github actions

* update progress.md
2024-04-12 00:10:30 -06:00
TakaRikka 5f1a002cf4 d_a_shop_item, d_a_b_go, d_a_b_gos OK (#2085)
* d_a_shop_item OK

* d_a_b_go OK

* d_a_b_gos OK

* remove asm

* some work on d_a_b_oh / d_a_b_zant_sima

* d_a_startAndGoal done
2024-03-07 20:23:18 -07:00
hatal175 09600e7bf9 work on functionvalue (#2054) 2024-01-30 16:02:22 -08:00
hatal175 ed25fda034 More jstudio work (#2048) 2024-01-25 14:50:55 -08:00
TakaRikka 84ceaf33a0 more various JSystem work (#2046)
* most of J3DAnmLoader done

* J3D / JKernel / JUTConsole work

* remove asm

* fix build

* dol 50%
2024-01-24 14:00:46 +02:00
hatal175 72edf07ad5 A little work on jstudio (#2045) 2024-01-23 15:05:15 -08:00
TakaRikka 8b4808da8a almost all of dolphin matched (#2036)
* TRK full match

* remove trk asm

* ar done

* cleanup some dolphin headers

* more dolphin cleanup

* cleanup / GD fully matched

* almost all of GX fully matched

* GX / Mtx full matched

* most of OS done

* pad done

* most of VI

* remove asm

* forgot couple vec funcs

* couple JUtility matches
2024-01-20 02:22:19 +02:00