Compare commits

...

2987 Commits

Author SHA1 Message Date
Luke Street b247eaa5d3 (Temp) Disable map scale 2026-06-08 22:49:58 -06:00
Luke Street a58f64ed80 Update aurora 2026-06-08 22:49:28 -06:00
Luke Street 28a37f6b4f Check for sNoUseDrawMtxPtr in J3DModel::entry 2026-06-08 22:14:34 -06:00
Luke Street 285691cd19 Add -debug-asan presets with AddressSanitizer 2026-06-08 22:14:10 -06:00
Luke Street 93e33ecf1a Cap map resolution multiplier
Resolves #1058
Resolves #1422
Resolves #1668
2026-06-08 00:08:00 -06:00
Reilly Brogan e26fab71d6 Add DUSK_PACKAGE_INSTALL (#1966)
Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
2026-06-07 23:33:49 -06:00
Luke Street 824389f871 Remove embedded gamecontrollerdb.txt (#2018)
But still load from the data dir if
it exists there (for user overrides)
2026-06-07 22:30:07 -06:00
Luke Street aa42265041 Fix Impaz expression animation OOB read (#2017)
Resolves #1152
2026-06-07 22:29:52 -06:00
BoLThompson 8b7ed4b5da Interpolation fixes (fishing rod, key door chains, hookshot chain) (#2008)
* fishing rod line (item and minigame) interpolated

* small key, big key door chains interpolated

* hookshot chain interpolated
2026-06-08 00:28:48 -04:00
SuperDude88 f33746f373 Alternate Config Variable Migration Method (#1577)
* Use Explicit Template Specialization

- Move migration of FrameInterpMode to use a unique specialization of loadFromJson

This avoids coding special cases into the main template, which I think is more sustainable in the long-run if we need to migrate other settings ever

* Error for Default Migration

- Add error message in the config log for default migration

Not a fatal, just a clear signal that you should handle your enum cases explicitly to make sure they're right
2026-06-07 21:39:02 -06:00
Nathan Mena 18c1d11335 Fix mirror mode sign arrows (#1704)
* Manually defined specific Wii messages to be returned when mirror mode is enabled

* Fixed random hanging on some messages
2026-06-07 21:18:58 -06:00
SuperDude88 710f252d53 Fix Respawning in Final Zant Phase (#2013)
Zant was trying to get the player's position before the player was even created

Based on the fix for camera/peahat load order
2026-06-07 21:18:45 -06:00
SuperDude88 2a92a67b87 Fix Mirror Mode Poe Counter (#1997)
Fixes #1817
2026-06-07 21:18:33 -06:00
SuperDude88 0d05f9b75b More Magic Armor Options (#1691)
* More Magic Armor Options

- Add a 3rd option to lose rupees only on damage

* More Choices

- Add cosmetic and double defense options

These both have been requested a couple times

* Shorten Description

The description was very, very long before

* Web Editor Got Me

Fix my syntax
2026-06-07 21:18:23 -06:00
ZipoLabs e27cce0e3c Add Green Chu merging functionality to "Restore Wii 1.0 Glitches" setting (#2000) 2026-06-07 21:18:10 -06:00
SuperDude88 511721f4d5 Fix Ganondorf's Cape Texture (#2016)
* Cape Texture Fix

- Load pos/norm/texcoord data directly from the REL

Before the hardcoded array was LE but being treated as BE, now we load it directly from the REL so treating it as BE is the correct behavior

* Fix Cape Tearing

- Update the cached textures when the cape is torn, reset the texture when creating the actor
2026-06-07 21:14:10 -06:00
Luke Street 08e0f4a2ee Update aurora & remove old pipeline cache handling 2026-06-06 09:41:07 -06:00
doop 7a900471bf Clamp flycam FOV (#1996) 2026-06-05 17:05:54 -04:00
MelonSpeedruns d9d9966f8f Time Freezing Camera (#1787)
Thanks to @bkd89 for the idea!

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-06-05 00:17:06 -06:00
Kevin Lema 8705e75b9d Add HUD scale setting (#1387)
* Add HUD scale setting

Adds a "HUD Scale" preference (50%–200%) that scales the gameplay HUD
(hearts, magic/lantern meter, light drops, rupees/keys, action buttons
and the mini-map) without affecting dialog boxes or menus.

Each HUD group is scaled around its own pane origin and nudged toward
its anchor corner (via dApplyHudCorner) so it stays put against the
screen edge instead of drifting toward the centre when shrunk. The
mini-map is scaled and shifted in d_meter_map so its bottom-left corner
stays anchored. The setting is clamped to a safe range and is a no-op on
non-PC targets. It is disabled in the menu while Minimal HUD is enabled.

Signed-off-by: kevin Lema <kevin.soesto@gmail.com>

* Scale remaining gameplay HUD elements with HUD scale

Extends the HUD Scale setting to the item ammo counters, the lantern oil
  gauge and the small-key counter, and gives the oil/magic meter a reduced
  horizontal anchor pull so it stays on-screen at small scales.

Signed-off-by: kevin Lema <kevin.soesto@gmail.com>

* Update settings.cpp

Signed-off-by: kevin Lema <kevin.soesto@gmail.com>

---------

Signed-off-by: kevin Lema <kevin.soesto@gmail.com>
2026-06-05 00:14:09 -06:00
Luke Street 1b42c4ecac ci: Build Android w/ release & LTO 2026-06-05 00:12:59 -06:00
SuperDude88 24ca190029 Adjust Total Achievement Count (#1924)
- Don't count the glitched achievements towards the total so that they appear over 100%
2026-06-05 00:05:47 -06:00
doop eefa69b53d Re-enable JParticle interpolation and fix emitter direction issue (#1968)
* Re-enable JParticle interpolation

* Ensure emitter direction is valid for JPA interp

Fixes #618.

* Don't `calcWorkData` if we don't need to
2026-06-05 00:05:20 -06:00
Luke Street da3ac9f546 ci: Build with shared vcruntime 2026-06-05 00:03:43 -06:00
Luke Street 7f306fe1ec Update aurora 2026-06-05 00:03:29 -06:00
Luke Street 358de64570 ci: Use mold linker on Linux 2026-06-04 23:30:30 -06:00
Luke Street e484a10018 tvOS fixes 2026-06-04 23:28:44 -06:00
Luke Street 0936115483 Optimize display lists in J3DShapeDraw
This is a stop-gap until DL optimization
is upstreamed to Aurora.
2026-06-04 23:27:30 -06:00
Luke Street b00b7f8f1b More texture caching 2026-06-04 23:21:13 -06:00
Luke Street 08c4442fdf Update aurora 2026-06-03 21:01:39 -06:00
Pieter-Jan Briers 74f20c38e0 Don't send debug groups to Aurora if not enabled (#1984)
Intended together with https://github.com/encounter/aurora/pull/221
2026-06-03 20:58:35 -06:00
Pieter-Jan Briers b7d32918bd Fix a warning (#1985)
Lol
2026-06-03 20:29:54 -06:00
Joshua Trees e99b604dd2 Fix flake.nix for systems where nod must build from source (#1987)
This should actually be fixed upstream, but until then...

See here for more details:

https://github.com/NixOS/nixpkgs/issues/144170

Co-authored-by: Joshua Trees <gh@jtrees.io>
2026-06-03 20:29:41 -06:00
MelonSpeedruns 2376e0102e TPHD Button Fishing (#1949)
Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-06-03 13:35:51 -04:00
Luke Street 5a9bd6f8dc Update aurora 2026-06-03 02:17:58 -06:00
Luke Street 62a26a639d Bump CMAKE_OSX_DEPLOYMENT_TARGET to 12.0 2026-06-03 02:17:54 -06:00
Luke Street 1a247c2977 Pass CMAKE_OSX_* to libjpeg-turbo build 2026-06-03 02:17:46 -06:00
Luke Street ef122efccd Update aurora 2026-06-03 00:56:44 -06:00
Luke Street deadde352c Update aurora 2026-06-03 00:02:47 -06:00
Luke Street 460b96c709 More Tracy zones 2026-06-03 00:01:34 -06:00
Pieter-Jan Briers f8ba14ea8f Optimize some special kankyo draw packets (housi, snow, odour) (#1970)
* Slight dKankyo_housi_Packet documentation

* Optimize dKyr_drawHousi (twilight squares)

Now a single draw call rather than like 300

* Optimize dKyr_drawSnow

Snowpeak stonks rising

* Optimize dKyr_odour_draw
2026-06-02 23:47:34 -06:00
Irastris bd9b81f700 Add mouse input option for the third-person camera (#1011)
* Untie existing mouse logic from gyro

* A bit more mouse cleanup before I start building off it

* Rebase and last bit of cleanup

* Fix rebase mistake, don't apply invertFirstPerson to gyro or mouse input

* Remove the deprecated ImGui toast system

* Add Mouse Camera option in preparation for its use

* WIP, add mouse controls for the third-person camera

* Various helpText revisions

* Enable free camera on horseback

* Untie mouse camera and free camera options
Either being enabled now allows the underlying freecam logic to run

* Allow simultaneous C-stick and mouse input

* Combine mouse sensitivities for both aim and camera

* Add option for inverting mouse Y

* Refactor cursor visibility handling

* Tighten aim capture condition and constrain cursor to window region

* Tidying my trash

* Last bit of housekeeping so I'm satisfied

* Don't write code while sleep deprived

* Fix my sloppy merge and a few helpText updates

* Disable control stick aim when mouse aim is active

* Use same conditions for cursor grabbing as for capture
2026-06-01 23:37:53 -06:00
Reilly Brogan b531936a1f linux: Add metainfo file (#1860)
* linux: Add metainfo file

Split from https://github.com/TwilitRealm/dusklight/pull/1191 and adjusted for the correct appId and to remove any trademarks.

Credit to @Gabantax

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

* Update metainfo per suggestions

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

---------

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
2026-06-01 20:24:02 -06:00
Pieter-Jan Briers 21692d5a78 Fix portable mode Unicode (#1893)
* Fix portable mode Unicode

Fixes https://github.com/TwilitRealm/dusklight/issues/1839

* Use path_from_utf8 instead

Huh yeah sure we have that apparently
2026-06-01 20:23:28 -06:00
Reilly Brogan 7af51e53bd Update aurora and adapt for libzstd changes (#1950)
* Update aurora and adapt for libzstd changes

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

* Fix android build failure with zstd

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

* Another attempt at fixing Android

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

---------

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
2026-06-01 20:23:13 -06:00
qubitnano bd90c3fc69 flake.nix: devendor aurora, add BUILD_SHARED_LIBS=OFF (#1956)
* flake.nix: devendor aurora

* flake.nix: nixfmt

* flake.nix: add BUILD_SHARED_LIBS=OFF
2026-06-01 20:22:45 -06:00
Luke Street 37abcaf616 Use BUILD_SHARED_LIBS=OFF on base linux/macos presets 2026-05-31 21:30:25 -06:00
Luke Street b26f3f7f51 Update aurora & fix rebuilding on iOS reconfigure 2026-05-31 17:18:11 -06:00
Pieter-Jan Briers 81caa89e12 Update Aurora & use new texture replacements API (#1935)
Cherry picked from TPHD branch

Co-authored-by: Luke Street <luke@street.dev>
2026-05-30 19:57:17 -06:00
Luke Street bc3cdcc955 Revert "Adds a new cheat that let you transform from the start of the game. (…" (#1927)
This reverts commit 62c19c0f64.
2026-05-29 21:20:15 -06:00
tomlube bf0dc85468 Revert "Added Sword and Shield skip Achievement" (#1917) 2026-05-29 15:14:05 -04:00
tomlube 656346a900 Merge pull request #1909 from 5upern1ce/sword-and-shield-skip
Added Sword and Shield skip Achievement
2026-05-29 15:11:46 -04:00
Supern_Ice 5269eadfaf Added Sword and Shield skip Achievement 2026-05-29 15:26:26 +01:00
Sirius902 e5c032f6e6 fix: item and talk rendering (#1896) 2026-05-29 03:15:56 +02:00
tomlube 030ef0f3bf Merge pull request #1884 from TwilitRealm/revert-1320-moonjumpfix
Revert "Fixed being unable to break through the water surface with the moonjump cheat"
2026-05-28 12:24:28 -04:00
Luke Street c3c8d459e8 Revert "Fixed being unable to break through the water surface with the moonju…"
This reverts commit 477192f3c2.
2026-05-28 09:29:23 -06:00
Giorgio Mendieta 21e0491d43 Preview texture replacements without the menu obstructing the view (#1599)
* feat: Change texture replacement from config_bool_select to graphics_tuner_control

* fix: add kTextureReplacementHelpText

* fix: remove unused header
2026-05-28 00:28:20 -06:00
Olivia!! 62c19c0f64 Adds a new cheat that let you transform from the start of the game. (#1241)
* Adds a new cheat that let you transform from the start of the game.

* Preserves transformation when passing loadzones similar to having shadow crystal

* standards compliance

* code compliance with decomp
2026-05-28 00:25:45 -06:00
Flash Computer 477192f3c2 Fixed being unable to break through the water surface with the moonjump cheat (#1320)
* Speed Vector for Link and Epona added to the Player Info debug ImGUI window for debugging.

* Fix being unable to moonjump through water surface

* Revert "Speed Vector for Link and Epona added to the Player Info debug ImGUI window for debugging."

This reverts commit d87cad3b37.
2026-05-28 00:16:50 -06:00
Ash 71961dae85 feat: Make gamepad status lighting optional (#1705)
* feat: Status Lighting option

* wip: rename to "Enable Controller LED"

* wip: setting for all four ports individually

* wip: fix detection + code cleanup

* wip: increase led speed for dusk preset

* wip: use aurora API

* bump aurora to 2b07d55

* wip: remove isSupported + fix namespace comment

* wip: add value override to BoolButton

* Style nit & remove unused

* Undo change

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-28 00:04:23 -06:00
Jairinho 6592d95199 Allow independent X and Y sensitivity for free camera (#1431)
Co-authored-by: Luke Street <luke@street.dev>
2026-05-27 23:53:14 -06:00
JaxonKEKW c10e41f02e Scale Memory Card at Widescreen, fix Name Select screen (#1828)
* Improve Widescreen/Ultrawide Collection/File Select Menus

Re-scale (unstretch) and center elements of the Collection Screen/File Select details screen for Widescreen/Ultrawide

* Fix oversight

Fix default behavior

* Support ultrawide on Collection menu, target PC

support ultrawide instead of reverting to default behavior

wrap logic in target PC ifdefs (both changed functions themselves are still behind them as a whole as well) and use old function behavior otherwise

* Fix icon overshift at ultrawide

Icon shifted too much at ultrawide

Move redundant duplicate line

* Finished Collection/File Select screen changes

Added settings for the scaling mode (GameCube, Wii, Dusklight)

Depending on the setting in the Interface menu (Dusklight preset automatically sets scaling to Dusklight option, Classic preset sets to Gamecube, Wii/all old behavior available as well) Collection and File Select screens get scaled differently

Fixed backdrop behind slots on File Select with Dusklight setting (the Magic Armor background slot seeming too low on all aspects is vanilla behavior)

Fixed Fused Shadow/Mirror size and position with Dusklight setting

All logic is behind TARGET_PC gates (not the logic specifically, but the functions themselves have always been)

Changes  dSelect_cursor_c::refreshAspectScale to take a parameter so the scale of the selection cursor can be reset to default (only ever called in TARGET_PC functions or wrapped in gates)

* Ultrawide oversight

* Update d_file_select.cpp

copy paste oopsie

* Update d_file_select.cpp

im tired, never tested msvc

* Menu Scaling Mode

changed definitions to be more open ended

header additions now in TARGET_PC ifdefs

fixed/added scaling for Save/Option buttons in Collection menu with Dusklight setting, stopped scaling just the text

* Update settings.cpp

* Scale Memory Card screen, fix GC name screen

Scales the Memory Card screen (text only) on Wii and Dusklight scaling settings, GC already keeps default scaling

Fixes oversight on Name selection screen on GC settings (all textboxes/letters were getting scaled down)

* deleted line oopsie

* cleaning

* fix stupid

Moved cachedPanes to each 'wide' function because they're static and only being used there anyway
2026-05-27 23:52:31 -06:00
Pieter-Jan Briers e70fef0650 SafeStringCopy log fix (#1858)
* Fix logging on SafeStringCopy overflow failure

* Fix CRASH() macro to not take varargs

Didn't work, probably a remnant of a different iteration I made.

* Fix ValidateChannel CRASH call

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-27 23:49:54 -06:00
Giorgio Mendieta e7e04b7c15 Skip CI build jobs on documentation-only changes (#1768)
* feat: don't build on PRs that only change documents

* fix: ignore docs/** on push
2026-05-27 23:39:30 -06:00
Olivia!! 42d9dd23c0 Add option for inverting Direct Select (#1841)
Adds a new subheading under Input for gameplay-related settings.
It's at the bottom because players probably will want to configure their camera
more than they care about ornery gameplay details.

The one and only toggle there right now is to invert the function of the L-trigger
on the Item Wheel. It renders the on-screen text properly if inverted too,
meaning with it on the game does tell you that holding L will rotate
and moving the stick without holding L will direct select.
2026-05-27 23:35:29 -06:00
Pieter-Jan Briers 5d68762590 Add a *ton* of const and constexpr around the codebase. (#1864)
* Add a *ton* of const and constexpr around the codebase.

This makes the codebase compile without strings being cast to non-const char*. I also went through and added constexpr where appropriate for tons of static data.

* Make process definitions const too

Might as well
2026-05-27 23:12:16 -06:00
TakaRikka db39a9c7f3 Merge pull request #1871 from TwilitRealm/snow-actor-fix
Set daObjAvalanche_c Matrix Properly
2026-05-27 21:06:46 -07:00
TakaRikka 23a5e2c48d Merge pull request #1857 from PJB3005/26-05-27-skip-event-size
Fix mSkipEventName again
2026-05-27 20:43:35 -07:00
SuperDude88 496ddf63bd More Issue Form Cleanup (#1877)
* Bug Form Formatting

- Space out yml more so it's easier to skim
- Add id to each section (GitHub says it does something but I'm mostly adding it for completeness)
- Tidy up some capitalization/punctuation for consistency

* Feature Request Form

- Add a simple feature request template that requires a feature description + marks it as the right type
2026-05-27 21:40:13 -06:00
SuperDude88 eab481661d Add Bug Report Issue Form (#1873) 2026-05-27 20:18:44 -06:00
SuperDude88 a9c8f44a86 Set daObjAvalanche_c Matrix Properly
- Set the matrix properly instead of multiplying based on the previous one

Fixes an issue where the snow would not fall when bonking if you had bloom disabled
2026-05-27 19:36:19 -04:00
PJB3005 5b9e9106ef Fix mSkipEventName again
They WAY undersized this in the original game it seems. The event used for the Zora overflows the original buffer size by *6* bytes.

Fixes https://github.com/TwilitRealm/dusklight/issues/1531
2026-05-27 14:00:36 +02:00
Luke Street a85f8c203d Better config saving handling (#1846) 2026-05-26 20:42:26 -06:00
Luke Street dc0c868bc1 Crash handler: Properly map stack frames from modules; fix build IDs (#1848) 2026-05-26 20:42:11 -06:00
Irastris 2afc52772c Suppress Textinput line break events on BaseStringButton (#1833)
* Suppress Textinput line break events on BaseStringButton

* Oops, removed a comment
2026-05-26 20:39:07 -06:00
doop 0dc475108b Ensure dMdl_c packet is in drawlist for interp (#1818)
Fixes #1010.
2026-05-26 11:39:40 -04:00
Pieter-Jan Briers a7790d7323 Change "verify your dump" instructions in readme (#1809)
* Change "verify your dump" instructions in readme

No need to do this manually as the game already does it. Instead let's link to a guide for dumping the game legitimately.

* Gotta shill
2026-05-25 08:25:21 -06:00
Luke Street 8b6f989315 Update aurora 2026-05-24 22:56:06 -06:00
Olivia!! f03bd71612 store config to disk when destroying ui (#1791) 2026-05-24 22:20:32 -06:00
Luke Street 2e1cc7cb26 Save config when hiding controller config window 2026-05-24 22:17:24 -06:00
SuperDude88 498868c17d Invert Air/Swim Axes (#1155)
* Invert Air/Swim Axes

Apparently this is a setting in TPHD, so for parity's sake I'll throw it in here

* Invert Air Controls

Thanks @Abzol for knowing exactly where this is
2026-05-24 22:12:36 -06:00
Loïs 2a3bc722d9 Add in-process crash handler with symbolizable backtrace (#1536) 2026-05-24 22:11:45 -06:00
Ash 326ef70afa feat: more info in player info window (#1641)
* wip: more info in player info window

* wip: 3d speed + vel vec + ui change

* wip: add epona velocity vec

* wip: remove dead code + add format indexing
2026-05-24 22:08:37 -06:00
Luke Street 1f970eb2dc More ZoneScoped 2026-05-24 17:45:04 -06:00
Luke Street 8aaf451708 Update Android SDLActivity 2026-05-24 17:44:54 -06:00
Luke Street a8a2f5c84c Disable OSReport in release builds 2026-05-24 17:44:43 -06:00
Luke Street fa074a2311 Disable STUB_LOG in release 2026-05-24 17:44:05 -06:00
Luke Street 1f1f7e324b Use absl::flat_hash_map in frame_interpolation 2026-05-24 17:43:51 -06:00
Luke Street 8905fbc1eb Downgrade SDL3 for Android 2026-05-24 17:43:39 -06:00
Luke Street c207150ae9 Fix achievement logic startup crash 2026-05-24 13:00:41 -06:00
Luke Street d73b0be801 Update aurora 2026-05-24 12:57:06 -06:00
Irastris 78e1a05aef Various mirror mode fixes (#1725)
* Fix mirror mode stage map scrolling

* Fix Link's arrow rotation on fullscreen map

* Fix fishing in mirror mode

* Fix cucco controls in mirror mode

* Only stick_x is necessary

---------

Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
Co-authored-by: Luke Street <luke@street.dev>
2026-05-24 12:31:04 -06:00
qwertyquerty 8668474a33 Achievements improvements v2 (#1553)
* make LJA achievement more attainable glitchlessly

* update loach achievement description

* 3 kill rollstab achievement

* update gone fishin description

* gorge skip achievement

* early city achievement

* make goats and snowboarding safety check stage

* fix indomitable requirement, add hero mode achievement

* properly check skybook completion when returned

* prototype ganondorf achievement

* Autospin Annihilation
2026-05-24 12:18:07 -06:00
Pieter-Jan Briers a6376368ee String safety (#1548)
* Array size UB fixes

* Fix ShieldD

* Remove (almost) all unsafe strcpy calls

Bunch of macros. C arrays are easy enough and just need a different call. For various cases where a char* is passed around bare, I've made a TEXT_SPAN macro that can store a length too for bounds checking.

* Move crash handling in safe string operations to separate TU

* strcat safe version

* sprintf made safe too

* Fix compile
2026-05-24 10:43:00 -06:00
Jasper St. Pierre af162bbd0a New Depth of Field implementation (#1773) 2026-05-24 10:41:59 -06:00
Luke Street 0504f1dda7 Uodate aurora 2026-05-24 05:31:15 -06:00
Olivia!! edc4aa0be4 Fixes linux credits crash (#1780)
alpha comparison mID is u16, but indexes into a 256-item table.
this causes MAT3 materials with an alpha comparison index of 0xFF crashes on linux

closes #1073
closes #1531
2026-05-23 21:31:19 -06:00
Olivia!! ac316f6288 fixes empty howl tab near certain actors (#1771)
When howling suns song near actors that arent howl stones, an empty howl tab was shown.
This fixes the issue by duplicating a check for sun's song howling into the relevant code branch.
2026-05-23 20:16:02 -06:00
Irastris 114e6e60bb build.yml revisions (#1744)
* build.yml revisions

* Undo push and PR changes
2026-05-23 20:15:32 -06:00
Reilly Brogan e9a7628218 linux: Fix Wayland window associations (#1718)
* linux: Fix Wayland window associations

`src/m_Do/m_Do_main.cpp` uses `SDL_SetAppMetadata("Dusklight", DUSK_VERSION_STRING, "dev.twilitrealm.dusk")` which results in the Wayland appId getting set to `dev.twilitrealm.dusk`. Wayland compositors associate Wayland windows to desktop files by comparing the window appId against installed desktop files by the name of the desktop files. For a given window with appId `dev.twilitrealm.dusk` it would look for `dev.twilitrealm.dusk.desktop`, and because the desktop file is not named that the compositor is unable to correctly associate the window which results in the default Wayland icon being shown for the window. It also results in windows not being associated with the given launcher if the desktop file is pinned to a task management widget of some kind.

Fix this by renaming the desktop file to `dev.twilitrealm.dusk.desktop`. Also while we're at it we can rename the icons as well to match the desktop file name, which isn't required but is a bit cleaner and will fit various packaging standards better.

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>

* Use dev.twilitrealm.dusk instead

---------

Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
2026-05-23 19:56:24 -06:00
Carlos Manuel 533c76f4d6 Add support for changing save location on Android (#1520)
- Enabled the Android UI path for changing the data folder
- Added Android MANAGE_EXTERNAL_STORAGE permission
- Added an Android flow to request “All files access” before opening the folder picker
- Added code path to resume the folder selection flow after returning from Android settings
- Improved the Android write-probe error message to point users at the required permission
2026-05-23 19:43:02 -06:00
SuperDude88 beb4146f33 Rework No Heart Drops (#1448)
- Check the setting once in daItem_c::_daItem_create
2026-05-23 19:41:18 -06:00
Luke Street ce0185adc4 CI: Add ARM64 Windows and Linux builds (#1778)
* ci: Try arm64 Linux/Windows builds

* Update aurora

* Explicitly set CMAKE_SYSTEM_PROCESSOR on Windows

* Update build-appimage.sh for aarch64

* Set Rust_RUSTUP_INSTALL_MISSING_TARGET=ON

* Use CMAKE_SYSTEM_PROCESSOR normalization for jpeg-turbo build too

* MSVC ARM64 support for freeverb
2026-05-23 19:32:50 -06:00
Luke Street db7e2a1e7b Update aurora 2026-05-23 17:00:08 -06:00
Luke Street 7a3e8977f1 Disabled vendored Dawn for macOS 2026-05-23 16:31:24 -06:00
Luke Street e4caf20a7a Update aurora 2026-05-23 16:27:28 -06:00
Luke Street a68f4ae1e6 Update aurora 2026-05-23 16:20:11 -06:00
Luke Street 05393fe7aa Update aurora 2026-05-23 15:52:21 -06:00
Carl 1711251cf5 Android: derive versionName and versionCode from git tag (#1593) 2026-05-23 07:22:24 -06:00
Loïs c804b1f663 Rework nix flake for offline multi-platform builds (#1601)
* Rework flake.nix for offline multi-platform builds (Linux & macOS)

* fix typo + fmt
2026-05-23 07:20:45 -06:00
Irastris c49f0e5c6e Use std::chrono for THP playback pacing (#1757)
* Use std::chrono for THP playback pacing

* Redundant include
2026-05-23 07:18:29 -06:00
Irastris 9655b827f3 Add KI_NUMPADENTER as input for NavCommand::Confirm (#1752) 2026-05-23 00:23:46 -04:00
doop 6a52cdf80e UI/copy tweaks (#1756)
* "Mortal Edge" description nit

"Darkhammer" seems to be the more common rendering of the name.

* Add missing option descriptions

* Tighten spacing for version/disc info on mobile

* Graphics API init failure message nit
2026-05-23 00:23:22 -04:00
TakaRikka ba6ef0d250 Merge pull request #1689 from itssecretnate/map_offset_fix
Fixed mirror mode dungeon map's offset
2026-05-21 00:13:19 -07:00
TakaRikka f7a5d88dfd Merge pull request #1674 from TwilitRealm/poecount
map poe counter option
2026-05-21 00:06:04 -07:00
Nathan Mena 8ac2658f54 fixed dungeon map offset in mirror mode 2026-05-20 15:15:28 -06:00
TakaRikka 0cb93a2a9f Merge branches 'poecount' and 'main' of ssh://github.com/TwilitRealm/dusklight into poecount 2026-05-20 13:24:57 -07:00
JaxonKEKW 716a2b4020 Improve Collection/File Select screens at Widescreen/Ultrawide (#1614)
* Improve Widescreen/Ultrawide Collection/File Select Menus

Re-scale (unstretch) and center elements of the Collection Screen/File Select details screen for Widescreen/Ultrawide

* Fix oversight

Fix default behavior

* Support ultrawide on Collection menu, target PC

support ultrawide instead of reverting to default behavior

wrap logic in target PC ifdefs (both changed functions themselves are still behind them as a whole as well) and use old function behavior otherwise

* Fix icon overshift at ultrawide

Icon shifted too much at ultrawide

Move redundant duplicate line

* Finished Collection/File Select screen changes

Added settings for the scaling mode (GameCube, Wii, Dusklight)

Depending on the setting in the Interface menu (Dusklight preset automatically sets scaling to Dusklight option, Classic preset sets to Gamecube, Wii/all old behavior available as well) Collection and File Select screens get scaled differently

Fixed backdrop behind slots on File Select with Dusklight setting (the Magic Armor background slot seeming too low on all aspects is vanilla behavior)

Fixed Fused Shadow/Mirror size and position with Dusklight setting

All logic is behind TARGET_PC gates (not the logic specifically, but the functions themselves have always been)

Changes  dSelect_cursor_c::refreshAspectScale to take a parameter so the scale of the selection cursor can be reset to default (only ever called in TARGET_PC functions or wrapped in gates)

* Ultrawide oversight

* Update d_file_select.cpp

copy paste oopsie

* Update d_file_select.cpp

im tired, never tested msvc

* Menu Scaling Mode

changed definitions to be more open ended

header additions now in TARGET_PC ifdefs

fixed/added scaling for Save/Option buttons in Collection menu with Dusklight setting, stopped scaling just the text

* Update settings.cpp
2026-05-20 15:55:38 -04:00
TakaRikka 069650295c dmap count fix 2026-05-20 04:06:33 -07:00
TakaRikka 5119135068 dmap poe counter 2026-05-20 04:03:32 -07:00
TakaRikka fa660ebd0f fmap poe counter 2026-05-20 03:19:25 -07:00
TakaRikka 5d6e58eeac Merge pull request #1129 from Krutonium/improvement/toggle_owl_statue_markers
Add ability to toggle off Owl Statue Markers on Map
2026-05-19 16:46:56 -07:00
MelonSpeedruns cd97563d3f Merge branch 'main' into improvement/toggle_owl_statue_markers 2026-05-19 10:10:11 -04:00
TakaRikka 43e8563609 Merge pull request #1615 from PJB3005/26-05-18-charge-bouclier
Fix truncating button name
2026-05-18 18:37:42 -07:00
PJB3005 aa8f905768 Fix truncating button name
Fixes https://github.com/TwilitRealm/dusklight/issues/1549
2026-05-18 21:23:03 +02:00
Irastris c516b91476 Add "Output Resampling" option (#1541)
Adds an Output Resampling option to the Video tab to allow choosing between the old Bilinear sampler and a new Area sampler. Area sampling produces a much cleaner, softer image when downscaling, and a significantly sharper image when upscaling. This can also serve as a halfway decent anti-aliasing substitute until we have a more proper implementation.
2026-05-17 20:26:10 -06:00
Luke Street 7919c6110d time.h: Include immintrin.h on x86_64 macOS 2026-05-17 22:25:12 -04:00
Ash 2da6590657 feat: FPS Limiter (#1446)
* Add interpolation frame rate cap

* wip: reworked framelimiter

Based on my testing this is a bit more stable in frametimes.

* wip: efficiency improvement + windows build fix

Significantly improve efficiency by using a hybrid approach.

* wip: UI changes

* wip: end frame AFTER limiting

* wip: remove unused include

* wip: minor ui code change

Makes it easier to remove/add presets

* Simplify Limiter UI

- Change enableFrameInterpolation to an enum with off/capped/unlimited values
- Simplify the UI to use 2 settings (unlock framerate + a max value entry)

* wip: slight limiter simplification

* wip: implement review suggestions

* wip: fix syntax error

* wip: revert enum order + replace old checks

* Fix compile error

---------

Co-authored-by: SailorSnoW <sailorsnow@pm.me>
Co-authored-by: Loïs <49660929+SailorSnoW@users.noreply.github.com>
Co-authored-by: SuperDude88 <82904174+SuperDude88@users.noreply.github.com>
Co-authored-by: Luke Street <luke@street.dev>
2026-05-17 20:11:32 -06:00
Irastris 66c5cb1dae Fix interpolation for Shadow Beast & Twilight Vermin hair (#1575)
* Fix interpolation for Shadow Beast hair

* Fix interpolation for Twilight Vermin hair
2026-05-17 20:09:04 -06:00
Olivia!! 28d0017d4c Transform level is 0xF after lakebed temple, verified on dolphin (#1571) 2026-05-17 20:04:34 -06:00
TakaRikka ec281a475f Merge pull request #1573 from TwilitRealm/j2dindtexmtx-be
Endian-swap indirect texture matrix in J2D data
2026-05-17 18:23:15 -07:00
TakaRikka a493693cbb Merge pull request #1569 from PJB3005/26-05-18-operator-new-problems
Tag operator new overloads with noexcept
2026-05-17 18:03:41 -07:00
doop 1745e110fb Fix typo 2026-05-18 00:56:14 +00:00
doop 2be2615e61 Endian-swap indirect texture matrix in J2D data
Fixes copy/delete effects on the file screen.
2026-05-18 00:46:45 +00:00
PJB3005 629cd2f9d3 Missed these in JASHeapCtrl.h 2026-05-18 02:16:43 +02:00
PJB3005 831a34ac8f Right, the definition needs the specifier too 2026-05-18 02:15:12 +02:00
PJB3005 05edbec827 Tag operator new overloads with noexcept
According to the C++ standard, regular operator new must always return a valid pointer, and allocation failure should throw an exception.

The original game did not use exceptions, and instead had its operator new return null on alloc failure.

Clang and GCC seem to be enforcing the standard here, and this is causing crashes on non-Windows platforms like https://sentry.twilitrealm.dev/organizations/twilitrealm/issues/952/, where a JAISe allocation failure (custom pooled operator new overload) crashes the game when it should be handled gracefully. MSVC seems to not make use of this opportunity, meaning the code works as intended.

Tagging the operators with noexcept seems to satisfy GCC, but I admit cppreference is very light on details here.
2026-05-18 02:06:38 +02:00
Cybes f33827a969 Extend wooden sign backdrop across ultrawide screens (#1546) 2026-05-17 19:06:57 -04:00
TakaRikka 5d33076304 Merge pull request #1550 from TwilitRealm/fix/bulblin_arrow
Fix enemy arrows loading too fast
2026-05-17 15:48:18 -07:00
TakaRikka 7fcc43accf Merge pull request #1561 from PJB3005/26-05-18-oh-fuck
Re-converge the timelines
2026-05-17 15:42:30 -07:00
PJB3005 4857de6e8f Merge branch 'main' into 26-05-18-oh-fuck 2026-05-18 00:10:43 +02:00
PJB3005 7ba789fdc5 Merge commit 'def29adbab12886082cd2d543d3cf71a7990894a' into HEAD
We screwed up when redacting git history before release, and
accidentally rewrote all but *two* of the entire history of decomp. This
is me re-merging the history with "git merge -s ours"
2026-05-18 00:08:47 +02:00
tomlube 0c28d45d13 Merge pull request #1352 from TwilitRealm/ios-instructions
fix some oopsies, add a bit more info to ios instructions
2026-05-17 17:40:37 -04:00
Irastris e8a29f65b5 Revert "Feature - remember window position (#1238)" (#1558)
This reverts commit e10e1f74d5.
2026-05-17 23:32:42 +02:00
Pheenoh 4204f232c5 delay loading first arrow 2026-05-17 14:20:25 -06:00
tomlube 55b277ff03 Merge pull request #1543 from TwilitRealm/d3d11-option
expose d3d11 to end users//cli help as well
2026-05-17 14:56:45 -04:00
Tom Lube 315c1f27fd fixed minor things 2026-05-17 14:42:05 -04:00
Tom Lube a1fc6cf6e1 add to m_Do_main 2026-05-17 14:34:14 -04:00
Tom Lube 00964650b6 expose d3d11 to end users 2026-05-17 14:04:35 -04:00
Giorgio Mendieta 31dd069879 docs: Improve building.md file (#1530)
* docs: Improve building.md file

- Fix broken XCode link
- Add MacOS running instructions
- Alphabetize linux packages

* fix: collapse packages sections for readability

* fix: collapse packages sections for readability

* fix: add --dvd flag to specify iso path

* fix: Remove incorrect info about game.iso
2026-05-17 07:51:38 -06:00
SrBananaMan a499877c37 Add an enable texture replacements option in the video tab (#1517)
Co-authored-by: Luke Street <luke@street.dev>
2026-05-17 07:51:15 -06:00
Olivia!! b91a58feab Adds option to unbind using controller only (#1212)
* Adds option to unbind using controller only

* Adds a new cheat to let you transform from the start of the game, without Midna or the Shadow Crystal

* Revert "Adds a new cheat to let you transform from the start of the game, without Midna or the Shadow Crystal"

This reverts commit 51ed736729.

* Do not allow unbinding the A or B buttons to prevent softlocks when no other input sources are available (e.g. playing on a TV)

* change 'and' to '&&' in accordance with code standards
2026-05-17 07:45:08 -06:00
doop c710ea5b38 Use 10% steps for bloom brightness setting (#1423) 2026-05-17 07:44:29 -06:00
Olivia!! cd4b29f8a1 Update controller bindings menu. (#1461)
* Add a button to reset to default controls, and hides the digital L and R binds except on advanced menu.

* Rename Controller mentions to Device + Extra menu sounds

* Shouldn't add a column here

* Changes mentions of controller to device in accordance with #1479

---------

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-17 07:38:24 -06:00
Loïs 6faa4a3330 Fix mButtonText buffer overflow on long localized action labels (#1491) 2026-05-17 07:34:18 -06:00
Luke Street eed81e9ecc Update aurora 2026-05-17 09:33:26 -04:00
Loïs a773e5489e Fix unresponsive R trigger in dusklight menu (#1424) 2026-05-17 07:27:27 -06:00
Krutonium db6a1835d2 Flake: Update GitHub revision and hash for aurora-src (#1237)
* Flake: Update GitHub revision and hash for aurora-src

Fixes Build Error due to Aurora being out of date in the flake.

* No Required Aurora Hash
2026-05-17 07:26:50 -06:00
David Kanevskyy e10e1f74d5 Feature - remember window position (#1238)
* added .zed/ to gitignore (editor configs)

* remember window position upon closing

* Save window location on SDL_EVENT_WINDOW_MOVED or SDL_EVENT_WINDOW_RESIZED

* Fix code format mistakes

* Also persist window width/height

* Undo change to input::handle_event

* Undo aurora submodule change

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-17 07:25:12 -06:00
TakaRikka ff3eb9aa48 Merge pull request #1511 from SailorSnoW/fix/ook-consistency
Fix Ook first jump not matching console behavior
2026-05-16 17:55:41 -07:00
TakaRikka 513fdd2312 Merge pull request #1502 from SailorSnoW/fix/autostart-run
Fix LiveSplit not starting when TV settings screen is skipped
2026-05-16 17:52:25 -07:00
TakaRikka f33c3bdf72 Merge pull request #1380 from TwilitRealm/fast-boots-backwalk-anim-fix
Fix Backwalk Animation Speed with Fast Iron Boots
2026-05-16 17:48:50 -07:00
TakaRikka e08b427650 Merge branch 'main' into fast-boots-backwalk-anim-fix 2026-05-16 17:43:31 -07:00
SailorSnoW 9f0fa12c6e Fix Ook first jump not matching console behavior 2026-05-17 02:12:14 +02:00
SailorSnoW ad4f75bbb6 Fix LiveSplit not starting when TV settings screen is skipped 2026-05-16 19:13:07 +02:00
Loïs 5d2811955c Fix item wheel background capturing interpolated frame instead of current sim (#1447) 2026-05-16 08:19:57 -04:00
Pieter-Jan Briers 3b30c09e79 Fix PAL name keyboard (#1467)
Fixes #1460
2026-05-16 08:15:27 -04:00
MelonSpeedruns 8adc40708e Infinite Rupee now set to max Rupees (#1417)
Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-16 10:28:45 +02:00
SuperDude88 2541c3f293 Update Description (#1439)
Mention that it applies to other cases besides just boots
2026-05-16 10:28:21 +02:00
Loïs 30b003c9d9 fix rein interpolation jitter by rolling snapshot once per sim tick (#1421) 2026-05-15 17:16:36 -04:00
SuperDude88 c77ed40208 Fix Backwalk Animation Speed
Also make one of the other similar checks more concise
2026-05-15 01:52:53 -04:00
Luke Street af8300a77c Update aurora 2026-05-14 23:22:08 -06:00
SuperDude88 1ce1003e1a Bold Back Button Name in Popup (#1376)
* Bold Back Button Name

Makes it stand out more, especially when the back button is called something else that's just a common word

* Just b

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-14 23:21:01 -06:00
Loïs 10e2181692 Fix file select softlock when resetting during save (#1293) 2026-05-14 23:17:17 -06:00
Miguel 424d1d7b71 Fixed Debug target not compiling (#1157)
* Update f_op_actor_mng.h

* Update f_op_actor_mng.h
2026-05-14 23:10:09 -06:00
matthewdavidrichardanderson 26be454999 soft reset hotkey on release (#1358)
Co-authored-by: matthewdavidrichardanderson <matthewdavidrichardanderson@mfb.com>
2026-05-14 23:05:08 -06:00
Pieter-Jan Briers cf89da811a Fix fast tears going out of bounds (#1337)
Incorrect decomp from TPHD making the tears think you're always in the Zora River ride

Fixes https://github.com/TwilitRealm/dusklight/issues/1047
2026-05-14 23:04:36 -06:00
tomlube f02c7bd1ac modify gx init fail text (#1332) 2026-05-14 23:04:13 -06:00
Pieter-Jan Briers 53abb8b96d Use safe string copies in d_save.cpp (#1232)
* Use safe string copies in d_save.cpp

Seeing sentry crashes here that I suspect involve buffer overflows here.
2026-05-14 23:03:42 -06:00
Loïs 6a27fa23c8 Fix game mode on MacOS <26 (#1362) 2026-05-14 22:56:28 -06:00
Luke Street 025a425884 Use -fsigned-char on ARM 2026-05-14 22:54:55 -06:00
Irastris 5064385c8c Add styling for <b> tags (#1349) 2026-05-15 03:12:36 +02:00
Tom Lube f969c3aa54 fix some oopsies, add a bit more info 2026-05-14 19:12:00 -04:00
Luke Street e52d9e9b71 Fix mDoLib_project with safe area 2026-05-14 17:06:58 -06:00
qwertyquerty 3520bb746c better completionist achievement requirements for skybook (#1258) 2026-05-14 22:56:15 +02:00
Irastris 1e10d95936 Disable scrolling the name cursor (#1243) 2026-05-14 22:53:34 +02:00
Loïs a923aa24e1 Fix Rollgoal completion reward to scale with Bigger Wallets (#1296) 2026-05-14 22:45:27 +02:00
tomlube 9c4f61678e update instructions (#1329)
better OS interoperability with iloader and imo much easier to set up too
2026-05-14 22:43:46 +02:00
MelonSpeedruns 7967ee1f66 Fix Autosaves resetting memory card during minigames (#1318)
* Fix autosaves resetting memory card during minigames

* Update description

* remove unused include

---------

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-14 22:42:39 +02:00
Loïs 2bdc7b6c09 use bit-stable lerp form in frame_interpolation (#1326) 2026-05-14 15:05:54 -04:00
tomlube 232f73365c rebrand fix (#1290) 2026-05-14 16:31:37 +02:00
TakaRikka a913f1699f Merge pull request #1252 from TwilitRealm/erd
clear e_rd static boss ptr on delete
2026-05-13 19:31:35 -07:00
TakaRikka 01b4eaa2fa clear e_rd static boss ptr on delete 2026-05-13 19:27:39 -07:00
SuperDude88 9d2ba3eb49 Rename Settings Preset (#1233)
To match the bloom preset, since that name was updated in #1211
2026-05-13 20:26:30 -04:00
JaxonWasTaken 6026b4bb9b Apply rebrand to bloom setting value name (#1211)
The display name for BloomSetting::Dusk was unchanged in the rebranding
process, and still shows up as "Dusk" in the settings menu. Rename it to
"Dusklight" to bring it in line with the rebrand.
2026-05-13 16:34:14 -04:00
Luke Street 7a77d48954 Use legacy path if migration fails 2026-05-13 09:08:41 -06:00
qwertyquerty 4ee0d8ed4b 1.1.1 fixes (#1168)
* fix keyboard npe

* fix autosave NPE

* hintTalkEvCamera UB

* fix UB in f_pc_base logging

* fix NPE in karg carry logic

* fix link model dangling pointers

* exponential audio slider and better audio default

* fix speedrun mode defaullt layer restore issue
2026-05-13 08:56:16 -06:00
qwertyquerty ce554a107d speedrun mode hotfixes (#1160) 2026-05-13 01:10:25 -06:00
Luke Street 9ce1ab7d5a Migrate only user files 2026-05-13 00:47:29 -06:00
Luke Street 8830760d34 BUILD_SHARED_LIBS=OFF for Android 2026-05-12 23:04:13 -06:00
SuperDude88 9abe89f47f Oops (#1156)
Forgot one
2026-05-12 22:57:42 -06:00
Loïs 3e62c1e96e Add Invincible Enemies cheat (#1123) 2026-05-12 22:52:35 -06:00
Irastris d9bbea300d Add map loader to RmlUi (#1147)
* Add Warp to RmlUi

* Remove ImGui map loader
2026-05-12 22:52:02 -06:00
Luke Street 1a951511be Merge pull request #1153 from TwilitRealm/slingshot-ammo-cheat
Infinite Slingshot Seeds
2026-05-12 22:51:23 -06:00
Luke Street ab0efb7a3b CI fixes and enable mobile THP support 2026-05-12 22:33:12 -06:00
Luke Street 5fdc3c7a54 Merge pull request #875 from Krutonium/flake-desktop-icon 2026-05-12 22:10:53 -06:00
SuperDude88 2978ae145d Infinite Slingshot Seeds 2026-05-13 00:04:58 -04:00
Krutonium e93773757f Edit CMakeLists to add Nix Version 2026-05-12 23:35:54 -04:00
Krutonium 6be742b15f Merge branch 'main' into flake-desktop-icon 2026-05-12 23:34:10 -04:00
Luke Street 861efaa053 Update aurora 2026-05-12 20:33:01 -06:00
qwertyquerty 8e41e0195e Merge pull request #1142 from SailorSnoW/fix/lja-achievement-bugfix
Fix LJA achievement triggering from cutscene teleport
2026-05-12 19:00:51 -07:00
qwertyquerty e9359a92d7 Merge branch 'main' into fix/lja-achievement-bugfix 2026-05-12 19:00:08 -07:00
SailorSnoW 0c78376ba8 Fix LJA achievement triggering from cutscene teleport 2026-05-13 03:40:38 +02:00
Loïs 8c001f7968 Add Nix devshell for Linux and macOS development (#1044)
- Restructure flake to expose `devShells.<system>.default` across
  x86_64-linux, aarch64-linux, x86_64-darwin, and aarch64-darwin via
  `nixpkgs.lib.genAttrs`. The existing `packages.x86_64-linux.default`
  build is preserved (still tied to the linux-x86_64 dawn/nod prebuilts).
- Linux devshell (`mkShell`): gcc + clang/lld, cmake, ninja, pkg-config,
  python3 + markupsafe, rustc/cargo, sccache, plus the system libs
  mirrored from the Ubuntu apt list in .github/workflows/build.yml
  (X11/Wayland, Vulkan, GL, ALSA/PulseAudio/PipeWire, GTK3, freetype,
  zstd, ...).
- macOS devshell (`mkShellNoCC`): cmake, ninja, python3 + markupsafe,
  rustc/cargo, sccache. No cc-wrapper so CMake picks up Apple Clang and
  the Xcode SDK directly, matching the build-apple CI job.
- Ignore `.direnv/` and `.envrc` so local direnv state stays out of git.
2026-05-12 19:37:31 -06:00
gymnast86 ef43b94370 Add options for binding custom buttons to specific actions (#1141)
* custom action framework and first person custom action

* add bind for midna call

* custom binding for opening dusklight menu

* turbo speed button action

* text descriptions

* fix not stopping default GC controller menu combo

* more explanation text

* block bind actions when in the dusklight menu
2026-05-12 19:36:07 -06:00
Pieter-Jan Briers 76efa02beb Allow written files to be read by other applications (#1092)
* Allow written files to be read by other applications

Intended for the log file mainly. Hopefully fixes https://github.com/TwilitRealm/dusk/issues/966?

* Consistency
2026-05-12 19:23:49 -06:00
MelonSpeedruns aeeb1ccdd2 Auto Save Protection (#1102)
* Auto Save Protection

* added line behind target_pc define

---------

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
2026-05-12 19:23:28 -06:00
SuperDude88 93c7d0d64d Only Flip Stick Axes (#1132)
Some people asked about this, I think I've come around to their position (follow-up to #870 ).

I checked what TPHD does and its invert setting only changes the sticks
2026-05-12 19:21:28 -06:00
qwertyquerty 1b76b2650c input viewer options in rmlui and reset key option (#1136)
* input viewer options in rmlui

* reset key
2026-05-12 19:18:00 -06:00
Pieter-Jan Briers 45196886b0 Trim trailing newlines off OSReport (#1127) 2026-05-12 19:16:49 -06:00
Pieter-Jan Briers 80af15c95b Log build info on startup (#1117)
Co-authored-by: Luke Street <luke@street.dev>
2026-05-12 19:16:37 -06:00
Sulfrix 4c5e3b933e set sdl app metadata when initializing audio (#1137)
* set sdl app metadata when initializing audio

* move metadata to main
2026-05-12 19:15:33 -06:00
SuperDude88 5eddcb9653 Discord RPC Toggle (#1120)
* Discord RPC Toggle

* I learned my lesson (Formatting)

Took me long enough

* Fix Mobile Platforms

- ifdef the setting so it builds properly on platforms that don't have rpc
- More formatting I missed
2026-05-12 19:14:44 -06:00
tomlube 6dd50c955c fix minor typo (#1134) 2026-05-13 01:21:45 +02:00
Krutonium 273af7beb6 Figured it out, compiles now 2026-05-12 19:02:43 -04:00
Krutonium 18cbb584c6 Fix the order of entries
Based on the build error the CI gave, I think this is the issue.
2026-05-12 18:39:18 -04:00
Krutonium 42cded342e Merge branch 'main' into improvement/toggle_owl_statue_markers 2026-05-12 18:22:09 -04:00
TakaRikka 4db65b9845 Merge pull request #1071 from TwilitRealm/better-speedrun-mode
improved speedrun mode
2026-05-12 15:11:24 -07:00
Krutonium 696e8e6aa9 Add ability to toggle off Owl Statue Markers on Map 2026-05-12 17:36:34 -04:00
madeline ede6827369 Merge branch 'main' of https://github.com/TakaRikka/dusk into better-speedrun-mode 2026-05-12 14:15:05 -07:00
Luke Street 2c9b20841d Update aurora 2026-05-12 14:00:38 -06:00
Luke Street 2b9ed729a3 Fix file logging on Android 2026-05-12 14:00:38 -06:00
Luke Street f39195c5e0 Fix duplicate "Pause on Focus Lost" option 2026-05-12 14:00:38 -06:00
Luke Street a0f42c0c80 Incorporate SDL_GameControllerDB 2026-05-12 14:00:38 -06:00
Joey Cato d1e9d5af2f Add Fast Roll cheat (#929)
* Add roll fast cheat

* Corrected case on cheat name

* Addressed PR feedback

* Fixed whitespace

* Renamed cheat to be more consistent with other options
2026-05-12 15:56:54 -04:00
Rib 61b2e6ce4d Allow menu navigation via D-Pad (#814) 2026-05-12 11:48:14 -04:00
BoLThompson e73244bca5 add deltatime to darkworld blur size oscillation (#957)
* add deltatime to darkworld blur size oscillation

* updated bloom oscillation to use game_clock
2026-05-12 11:47:14 -04:00
Nathan Mena a4f25ecb28 Fix map offset when toggling mirror mode (#938)
Co-authored-by: Nathan Mena <natemena153+git@gmail.com>
2026-05-12 14:12:38 +02:00
Flash Computer 39b546b81f Don't slow down underwater rolling if the fastIronBoots cheat is on. (#1085)
* Don't slow down underwater rolling if the fastIronBoots cheat is on.

* Removed the comment
2026-05-12 14:11:59 +02:00
madeline 1bd4585994 fix indent 2026-05-11 22:23:31 -07:00
madeline c896bb39ea improved speedrun mode 2026-05-11 22:20:53 -07:00
doop 3366613354 Pillarbox widezoom cutscenes instead of cropping (#1054)
Fixes #777.
2026-05-11 22:59:17 -06:00
Luke Street 79b1f4ab4d Customizable data directory & migration (#1059)
* Customizable data directory & migration

* Add file/dir rename fast-path

* Write data_location.json to base path on Windows; fix UTF-8 custom paths

* Build fix

* Another build fix

* Android data directory selection

* Fix CMake target ref
2026-05-11 22:57:59 -06:00
Irastris 157f4f9df2 Rebrand (#1064)
* Rebrand

* Revert Info.plist.in

* Think, Mark!
2026-05-11 22:06:58 -06:00
SuperDude88 9d5d8dd13a Fix Prelaunch Break-Out With Controller Config (#950)
* Fix Prelaunch Break-Out With Controller Config

Fixes #945

* Formatting
2026-05-11 21:49:24 -06:00
Krutonium b0f1fbee1c Fix Overflow/Off-by-one. Fixes #1036 and #1012 (#1042)
* Fix Overflow/Off-by-one. Fixes #1036 and #1012

* Guard behind TARGET_PC
2026-05-12 01:16:33 +02:00
Howard Luck 40e3f7d057 freedom units (#948) 2026-05-11 12:23:04 +02:00
Luke Street 764fc0b96f Fix "Pause on Focus Lost" preventing startup 2026-05-10 22:29:34 -06:00
SuperDude88 1b4a842eec Invert First Person Aiming (#870)
- Inverts first person aiming on either axis, for both stick and gyro controls

Could be separated from gyro if desirable, but I think it makes the most sense to have it apply to both
2026-05-10 19:00:20 -06:00
gymnast86 08c7261262 fix going into first person with orbital cam (#923) 2026-05-10 19:00:09 -06:00
Luke Street 07b440a1c9 Update aurora 2026-05-10 18:42:31 -06:00
SuperDude88 e7ab978a30 Crash Reporting Popup (#879)
* Initial Draft

- Add draft crash report window on startup

If you want to disable them before/during startup, there is a command line option to force it

* Fixes

- Update language to be more precise, consistent with settings menu
- Actually shut down reporting properly if you disable it
- Fix my silly syntax errors

* Update text & use Sentry consent

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-10 18:37:22 -06:00
qwertyquerty 3a02e129e7 Fix keyboard not binding maybe (idk i cant repro) (#901)
* fixkb

* restore comment
2026-05-10 17:35:29 -06:00
qwertyquerty 93c6106770 cherry pick actor spawner (#920) 2026-05-10 17:30:39 -06:00
Luke Street b08d994e32 Update aurora 2026-05-10 17:27:30 -06:00
Luke Street 0665a78c84 Update CMakePresets.json 2026-05-10 13:35:58 -06:00
Luke Street 4db8b51f24 Disable Sentry on Android 2026-05-10 13:22:26 -06:00
Luke Street 800da8dbff Update aurora 2026-05-10 12:48:49 -06:00
Krutonium d6cbc9b6d5 Set Version String to be NixOS-<short git hash> OR dirty 2026-05-10 14:21:03 -04:00
Luke Street a0ecdb1735 Re-enable Sentry for release builds 2026-05-10 12:10:32 -06:00
Krutonium b10211c4c2 Add Desktop Icon 2026-05-10 13:25:43 -04:00
Luke Street c948bffd32 Update aurora 2026-05-10 10:55:30 -06:00
Luke Street 4bcf4ca354 Improve build-appimage.sh 2026-05-10 10:54:43 -06:00
Krutonium bfd9917ca1 Fix Flake to Build Successfully (#791)
* Fix Flake to Build Successfully

* Fix typo; Res Folder is now correctly placed
2026-05-10 10:53:07 -06:00
Pieter-Jan Briers 7f6212f9b7 Add some basic code conventions to the README (#831) 2026-05-10 10:52:47 -06:00
Irastris 80245387f3 Update README & fallback ImGui error message (#857) 2026-05-10 10:52:34 -06:00
Markos Theocharis 0a1fea4bc7 Add LSSupportsGameMode to enable game mode (#859) 2026-05-10 10:51:45 -06:00
project516 4ec7b01213 update github actions in ci (#852) 2026-05-10 10:39:55 -06:00
Luke Street 5187fe90c3 Seed initial pipeline cache through SDL IO & UTF8 path fixes 2026-05-10 10:39:11 -06:00
Pieter-Jan Briers a86fa9c162 State share Unicode fix (#834) 2026-05-10 10:35:11 -06:00
MelonSpeedruns 4ec8c1aaee Fix recording mode muting music until next reboot (#832)
Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-10 17:32:55 +02:00
Luke Street 97d032f8b5 Add Android CI 2026-05-10 00:51:34 -06:00
Luke Street 286532904a Update aurora 2026-05-10 00:31:49 -06:00
Luke Street 04b5861f29 Update CI (again x2) 2026-05-10 00:12:11 -06:00
Luke Street 453e958068 Update CI (again) 2026-05-10 00:11:05 -06:00
Luke Street e7d2fbcc0b Update CI 2026-05-10 00:08:42 -06:00
Krutonium 8f71c70d14 fix io.hpp to enable compiling on GCC15 (#790) 2026-05-09 23:41:15 -06:00
Luke Street df23edcb69 Add iOS UIFileSharingEnabled integration 2026-05-09 21:42:43 -06:00
Luke Street daff157027 Fix change notifications in Android DocumentsProvider 2026-05-09 21:42:32 -06:00
Luke Street 0c23bd4332 Add "Open Data Folder" to Interface menu 2026-05-09 20:57:34 -06:00
Luke Street 7562486449 Log disc verification status 2026-05-09 20:40:59 -06:00
Luke Street 5e08b810fc Update aurora 2026-05-09 20:26:37 -06:00
Pieter-Jan Briers c66cccf660 Fix handling of Unicode paths on Windows (#767)
I love C++
2026-05-09 20:24:50 -06:00
Luke Street 3b1118229b Add Android DocumentsProvider 2026-05-09 20:23:11 -06:00
TakaRikka 491da372a1 Merge pull request #764 from TwilitRealm/gyro-axis-fix
Fix Gyro Sensitivity Axes
2026-05-09 17:47:59 -07:00
SuperDude88 a2f463d146 Fix Gyro Sensitivity Axes
Fixes #759
2026-05-09 20:15:33 -04:00
TakaRikka 63b3ce4849 temp fix for speedrun timer controls 2026-05-09 15:16:54 -07:00
MelonSpeedruns 8280ac00a0 Always disable cursor if Gyro is set to Mouse mode and the menu is not open (#736)
Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-09 15:06:58 -06:00
Luke Street 45ef0d72b1 Fix Android backgrounding & re-hide bars after swipe 2026-05-09 15:03:21 -06:00
SuperDude88 ad9c460ec9 Navigate Carousel Without Focus (#741)
* Navigate Carousel Without Focus

- Allow left/right inputs to change the setting value without having the arrow explicitly clicked

* Formatting
2026-05-09 14:23:59 -06:00
Phillip Stephens 23dc9bc39a Disable setting default mappings for now (#742) 2026-05-09 14:14:45 -06:00
SuperDude88 bf23d44389 Fix Syntax Warning (#743)
- Remove invalid property value
2026-05-09 14:14:36 -06:00
SuperDude88 d0b9b6d10f Fix Prelaunch Break-out (#738)
- Prevent users from breaking out of the prelaunch menu through the GraphicsTuner pages
2026-05-09 13:37:14 -06:00
Luke Street 2f83753260 Fix Android release gradle build 2026-05-09 10:13:59 -06:00
Luke Street eeb0ad77a4 Missed a spot 2026-05-09 10:03:05 -06:00
Luke Street 594cadcf7d Update Android app ID to dev.twilitrealm.dusk 2026-05-09 09:55:26 -06:00
TakaRikka 4290726691 update setup instructions 2026-05-09 07:38:19 -07:00
TakaRikka 80dd5ff278 revert mirror mode message override for now 2026-05-09 07:32:29 -07:00
TakaRikka 08efb9a3cf Merge pull request #735 from TwilitRealm/mute-streams
Recording Mode - Mute streams & Fix 1 note playing
2026-05-09 06:38:33 -07:00
MelonSpeedruns d8a1dd1da4 Recording Mode - Mute streams & Fix 1 note playing 2026-05-09 09:15:10 -04:00
SuperDude88 13dd3c3932 Clamp LOD For Cutscene Midna (#728)
- Sets max eye LOD level to 0 for `demo00_Midna_cut00_FC_tongue` and `demo00_Midna_cut00_BD_tmp`
2026-05-09 06:30:46 -06:00
TakaRikka dd7885da9c Merge pull request #734 from TwilitRealm/number-button-fix
Number Button Fix
2026-05-09 04:40:55 -07:00
TakaRikka 5a05433a2b Merge pull request #733 from TwilitRealm/fix/e_s1_e_yg
Frame interp: Fix e_s1 & e_yg
2026-05-09 04:35:25 -07:00
TakaRikka c3ff3884d7 Merge pull request #730 from TwilitRealm/fix/fchain
Frame interp: Fix obj_fchain
2026-05-09 04:34:34 -07:00
SuperDude88 e42c4d3174 Number Button Fix
- Add `is_editing` helper to BaseStringButton
- Block left/right input from changing number while typing

Resolves #706
2026-05-08 23:19:48 -04:00
Pheenoh 06c77a6818 frame interp: e_s1 & e_yg 2026-05-08 21:16:57 -06:00
Pheenoh 4d4a80891f frame interp: fix obj_fchain 2026-05-08 20:21:37 -06:00
doop 71c892368d Use float vertex positions for trim (#729)
Fixes #726 and looks much smoother.
2026-05-08 21:31:46 -04:00
Irastris d2a1dda523 Add interp callbacks to the stalks of four Baba variants 2026-05-08 21:00:16 -04:00
roeming 78179eb93f comment out flags tab in editor (#727)
Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-05-08 18:56:38 -06:00
Luke Street 34e10d3844 Show "3-finger tap" for menu notif on mobile 2026-05-08 17:55:39 -06:00
Howard Luck 65e8577253 frame interp: fix b&c chain links (#724) 2026-05-08 17:26:33 -06:00
Luke Street a4fcc10f5f Make version logic tolerate prerelease semver 2026-05-08 17:25:09 -06:00
Luke Street a2c2988666 Disable Sentry in CI builds 2026-05-08 17:12:58 -06:00
Irastris abec043249 Add mouse as a gyro input source (#720)
* Add mouse as a gyro input source

* Revisions

* Grammar
2026-05-08 17:11:13 -06:00
SuperDude88 699d069b0a Fix Letter Menu Page Numbers (#722)
This bug comes from `getBounds()` returning a reference to a static variable -- the compiler can load the float right away or later (after the second call), so the value it is referencing may have changed. If it waits to load the first operand, the subtraction results in 0. Further discussion at https://discord.com/channels/1446645861529550869/1446648842387722411/1502415404386091118.

Resolves #719
2026-05-08 17:10:37 -06:00
Tom Lube 4d67033ff8 Remove reset via CTRL + R 2026-05-08 17:08:03 -06:00
Irastris 84ffd67622 Refactor notification settings, allow disabling controller toasts (#721)
* Refactor notification settings, allow disabling controller toasts

* "Toasts" to "Notifications"
2026-05-08 17:01:19 -06:00
Luke Street 1c85ee63eb Many mobile fixes, Android update check, "Background Input" & "Pause On Focus Lost" options 2026-05-08 16:57:33 -06:00
qwertyquerty 81c7213993 Merge pull request #599 from TwilitRealm/50_achievements
More Achievements
2026-05-08 12:27:25 -07:00
madeline be82e606b2 45 achievements 2026-05-08 11:20:17 -07:00
MelonSpeedruns 44da1a9f7d Added sounds to Reset & Quit modals (#718)
Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-08 11:51:13 -06:00
doop d0f8ea56f9 Interpolate more things (#699)
* Interpolate trim height

* Interpolate (some) fades
2026-05-08 11:50:44 -06:00
Howard Luck e472b36cef Merge pull request #717 from TwilitRealm/fix/super_clawshot 2026-05-08 10:26:46 -06:00
MelonSpeedruns 3934e09c8f remove mention of chains not rendering 2026-05-08 12:07:00 -04:00
MelonSpeedruns 3136816ce9 Merge remote-tracking branch 'origin/main' into fix/super_clawshot 2026-05-08 12:06:47 -04:00
MelonSpeedruns 6fd3762ffc optimized code 2026-05-08 12:06:38 -04:00
Pheenoh 97a1190713 set max chain links to 600 2026-05-08 08:59:13 -06:00
MelonSpeedruns 73a3bd9ae8 super clawshot warning about chains (#716)
Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
2026-05-08 08:53:01 -06:00
Luke Street fc533dbdc7 UI: Add update checks (#715) 2026-05-08 08:52:36 -06:00
madeline 6217e071d2 Merge branch '50_achievements' of https://github.com/TakaRikka/dusk into 50_achievements 2026-05-08 05:17:48 -07:00
Luke Street 673ca7f686 Update Linux icons & .desktop
Resolves #714
2026-05-08 01:23:53 -06:00
CraftyBoss 29a1cff7ea update aurora, add comment explaining king bulblin 1 strange behavior
the game saves a flag when the player hits king bulblin at least once, which makes subsequent loads (including king bulblin 2) have 1 less "health" as lap_num for the boar is set to 1 during creation, as it checks the flag.
2026-05-08 00:05:16 -07:00
Luke Street 3c5152a67b Disable autosave in speedrun mode 2026-05-08 00:46:02 -06:00
MelonSpeedruns 1c1a849095 Recording Mode & Enable Autosave in Dusk preset (#685)
* branch for recording without a HUD

* no more black bars thanks maddie

* Backslash hotkey

* mute music

* dont check for null twice

* renamed option to recording mode, and added it to the rmlui menu

* Move recording mode to Interface

* re-added & renamed minimal hud option

* Mute all BGM if recording mode is on

* Update Interface section

* Un-experimentalize Autosave & enable in Dusk preset

---------

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
Co-authored-by: Irastris <irastris15@gmail.com>
Co-authored-by: Luke Street <luke@street.dev>
2026-05-07 23:26:22 -06:00
Phillip Stephens 89d393e57a Add missing climits include 2026-05-07 22:24:31 -07:00
Phillip Stephens 2f27687d80 Fix OSReport strings corruption with non-trivial format (#709)
* Fix OSReport strings corruption with non-trivial format

* Limit format attempts to 3
2026-05-07 23:10:23 -06:00
SuperDude88 167a50c01d Deselect Sub-Menu On Focus Change (#710)
- Unselect any previous items when focusing a new one

This might be way over-inclusive so it should be scrutinized harshly (but fixes #672)
2026-05-07 23:09:25 -06:00
SuperDude88 313f03f5e5 Dim Carousel Arrows
- Dim carousel arrows if there are no further options in that direction (closes #708)

This sets the color property constantly, not sure if that is a concern for perf (would imagine not since it already sets the rml to mValueElem every frame also?)
2026-05-07 23:05:08 -06:00
Howard Luck 6cfdc3d8a3 add keyboard controls + roll support to fly cam (#705) 2026-05-07 23:04:29 -06:00
Luke Street 9c24a0bc4b Disable Development Mode & move Input Viewer
Resolves #712
2026-05-07 23:03:26 -06:00
TakaRikka b99ad920c4 Merge pull request #704 from TwilitRealm/ira/rmlui-confirmation
Add confirmations modals to Reset and Quit
2026-05-07 13:57:03 -07:00
TakaRikka 912b18eca1 Merge pull request #703 from TwilitRealm/ui/advanced-settings
Advanced Settings
2026-05-07 13:55:13 -07:00
TakaRikka 9e651a51db Merge pull request #700 from TwilitRealm/ira/rmlui-fps
Add FPS counter to RmlUi
2026-05-07 13:51:51 -07:00
TakaRikka c8b6e997a7 Merge pull request #702 from TwilitRealm/ira/rmlui-inputconfig
Add remaining controller config options to RmlUi
2026-05-07 13:45:35 -07:00
Irastris 928e187524 Add mobile layout for prelaunch 2026-05-07 15:57:52 -04:00
Irastris cf12d19860 Resolve RmlUi deprecation warning, add L1/R1 tabbing to MenuBar 2026-05-07 13:48:12 -04:00
Irastris e3a3ac56fb Add confirmations modals to Reset and Quit 2026-05-07 13:32:59 -04:00
MelonSpeedruns d15ed81cd5 Only show Editor if Advanced Settings is enabled 2026-05-07 12:39:37 -04:00
TakaRikka ff054f6f47 update aurora and enable MTX_USE_PS 2026-05-07 09:36:32 -07:00
MelonSpeedruns 667cf70fa0 Add Advanced Settings option & Disable debug hotkeys if it's off 2026-05-07 12:01:32 -04:00
Irastris 73eb401c93 Add remaining controller config options, remove ImGui config 2026-05-07 12:00:35 -04:00
Irastris b11f3add06 Don't immediately dismiss prelaunch if skip config is toggled
Prevents a situation where memcard is not init until restarting after the deferral change
2026-05-07 09:26:41 -04:00
Irastris 92f888a152 Remove blur and shadow from counter, consolidate options 2026-05-07 03:28:30 -04:00
Irastris 78ed5cc716 Add FPS counter 2026-05-07 03:13:08 -04:00
Luke Street 3968b67c5d Disc verification cleanup 2026-05-07 00:35:00 -06:00
Luke Street 119830c979 Merge pull request #695 from TwilitRealm/hash-verif
Hash verification for disc images
2026-05-06 23:41:57 -06:00
Luke Street 647394c875 Don't hash on startup & cleanup 2026-05-06 23:33:55 -06:00
Luke Street c50d777309 Progress modal & persist validation state 2026-05-06 23:21:43 -06:00
Luke Street 4954685cca Merge branch 'main' into hash-verif 2026-05-06 22:09:20 -06:00
qwertyquerty 39d43a8d8f Keyboard mouse binding controls (#682)
* kbm controls

* submodule

* files.cmake

* a

* Fixes

* include <cstring> in J3DStruct.h

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-06 22:07:28 -06:00
TakaRikka b4761cc54e fix build 2026-05-06 20:36:21 -07:00
qwertyquerty 9aee2e9cfe PS math accuracy (#654)
* math accuracy

* submodule

* Update aurora

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-06 21:22:59 -06:00
Luke Street 7c7c8b228e Crafty's crafty Dungeon door hack 2026-05-06 19:53:18 -06:00
doop ca7714dafd Merge pull request #697 from TwilitRealm/include-numbers
Try to fix Windows/macOS build errors
2026-05-06 21:09:53 -04:00
doop 1ad5ab8632 Try to fix Windows/macOS build errors 2026-05-07 01:02:43 +00:00
Irastris c4e7838089 Swap shield labels in RmlUi editor 2026-05-06 21:02:15 -04:00
roeming 7313712263 update area flags to precalculate correct offsets/masks (#694)
Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-05-06 18:40:10 -06:00
doop aa48d95f24 Procedurally-generate HQ minimap textures (#692)
* Procedurally-generate HQ minimap textures

* Don't leak old minimap textures
2026-05-06 18:40:04 -06:00
Thomas c5baabbe9c assets: Remove objdiff screenshot (#691)
Leftover from the decomp.
2026-05-06 18:38:01 -06:00
Irastris 1d2716139f Redesign PresetWindow 2026-05-06 19:49:57 -04:00
MelonSpeedruns 742ad2c150 Increase Link's heap size for mods 2026-05-06 19:48:43 -04:00
Luke Street 18eb0692f0 UI: "No controller" & menu notifications
Resolves #629
Resolves #678
2026-05-06 17:34:08 -06:00
Irastris b5f98f69db Redesign Modal 2026-05-06 19:19:38 -04:00
Irastris 47593d0eb4 Allow hash-mismatched discs to be loaded with user confirmation 2026-05-06 19:19:38 -04:00
Irastris 4404fce369 Do hash-based verification of disc images 2026-05-06 19:19:38 -04:00
Irastris 72c20f4dd0 Add stylesheet rules 2026-05-06 19:19:38 -04:00
doop 3240885bfd Preserved doop work
* Disc verification

* Add platform and region info to known discs map

* Use array over map

* Use std::to_array
2026-05-06 19:19:38 -04:00
Luke Street 7f0955f022 Add ImGui screen for Aurora Null backend
Resolves #628
2026-05-06 16:39:28 -06:00
Luke Street c21bce0093 UI: Adjust battery icon thresholds 2026-05-06 11:49:24 -06:00
Luke Street 4e23472ed5 UI: Controller connect/disconnect toasts 2026-05-06 11:14:12 -06:00
doop cfe1f2304b Increase line-height for right pane descriptions 2026-05-06 13:15:30 +00:00
TakaRikka de6568d750 allow suns song / quick transform in ToT past 2026-05-06 04:25:42 -07:00
TakaRikka 3aafe7fa16 more mirror mode map fixes 2026-05-06 04:19:00 -07:00
Luke Street c1e65d19e7 Autosave: Rotate inner ring too 2026-05-05 23:57:20 -06:00
Luke Street 5fdf954994 Reduce autosave spinner opacity 2026-05-05 23:25:06 -06:00
Luke Street 230868af3c Add autosave spinner & make RmlUi respect 4:3
Resolves #627
2026-05-05 23:18:11 -06:00
doop 66154d9de8 Remove post-trim scissor (#684)
* Remove post-trim scissor

Fixes #679

* Add comment
2026-05-05 19:41:59 -06:00
Luke Street 93ec3c7dbd New UI: Achievement toasts (#690)
* Rename Overlay -> GraphicsTuner, Popup -> MenuBar

* Update GraphicsTuner CSS

* WIP Overlay document & toasts

* Achievement toasts

* Cleanup
2026-05-05 19:29:42 -06:00
MelonSpeedruns 945ce3e4bc Alternate RMLUI Menu Sounds (#686)
* Alternate RMLUI Menu Sounds

Those fit more the game I feel like.

* swapped tab sounds

* pressing A on tab button plays the OK sound

* Fix tab sound + Added menu sounds to prelaunch menu

* Centralize UI sound definitions

* Improvements

* Add "Play" button sound

* Use kSoundItemFocus in prelaunch

* Oops

* Update play/enable/disable sounds

---------

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
Co-authored-by: Luke Street <luke@street.dev>
2026-05-05 16:44:11 -06:00
TakaRikka 782a8573e9 Merge pull request #570 from TwilitRealm/mapmirror
fix main map for mirror mode
2026-05-05 14:22:25 -07:00
Irastris 4e0ca51159 Remove restart notice from cardFileType's rightPane 2026-05-05 17:03:04 -04:00
Irastris 3cd160e1b2 Defer mDoMemCd_ThdInit if necessary, removing restart requirement
Thanks, Melon
2026-05-05 16:56:41 -04:00
Luke Street 93a236a9d2 Prelaunch settings: actually save config 2026-05-05 14:47:53 -06:00
Irastris eaf3bc2f40 Remove skipWarningScreen config option, always skip logos 2026-05-05 16:27:41 -04:00
Luke Street 5ca0a2ba06 UI: Fix focus reconciliation for context root 2026-05-05 14:17:57 -06:00
Luke Street ccd2bdbaac Add full Settings window to prelaunch 2026-05-05 14:12:53 -06:00
Irastris 08321699cd Display the real title screen behind the prelaunch menu (#638)
* Start game execution as soon as a disk image is available

* Do not update dDemo_c if prelaunch document is visible

* Prevent intro music until prelaunch has popped

* Replace "Start Game" references with "Play"

* Make prelaunch layout respect mirror mode

* Add drop shadow to prelaunch disk-status and version-info

* Remove ImGui prelaunch

* Add "Change Disk Image" button to prelaunch options

* Actually validate discs and make prelaunch very betterer :)

* Check your build before pushing dumbass, and go to sleep

* "Disc" consistency, adjust restart notice logic

* Better LanguageSelect logic

* Add restart notice to SaveTypeSelect

* Added wind sounds to the pre-launch menu

* Add Modal document, use it for disc verification

* Consolidate Modal and PresetWindow

* Squash various bugs, rearrange document flow

* Allow Window inheritors to opt-out of being toggleable

* Tweak focus behavior/syntax

* Implement "Restart Now" option

* Tweaks

* Remove a bunch of dynamic_cast

* Update README.md

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-05 12:18:25 -06:00
Luke Street 7300c0e0f5 Update aurora 2026-05-05 12:15:01 -06:00
Luke Street 7e562824fe Add a <br> 2026-05-05 11:30:49 -06:00
Luke Street ed8b5c96b9 Update aurora & add logo to README.md 2026-05-05 11:28:05 -06:00
TakaRikka 14bccdffa6 fix mirror map portal selection 2026-05-05 06:25:46 -07:00
TakaRikka 39e465bcab fix mirror map region selection 2026-05-05 06:22:49 -07:00
TakaRikka e53bb3a12d Merge branch 'main' of github.com:TwilitRealm/dusk into mapmirror 2026-05-05 04:59:25 -07:00
TakaRikka 50fccd393f fix mirror mode text / rodeo direction 2026-05-05 04:44:14 -07:00
TakaRikka 7993740ac8 fix kargorok mirror mode controls 2026-05-05 01:16:01 -07:00
TakaRikka 8e5bb8ae59 Merge pull request #676 from TwilitRealm/instant-text-tweaks
Instant text tweaks
2026-05-04 23:43:43 -07:00
TakaRikka 8fefdd4114 Merge pull request #669 from TwilitRealm/remove-discord-rpc
Remove discord-rpc/rapidjson; roll our own
2026-05-04 23:43:24 -07:00
gymnast86 64c8cee21b revert to checking for Hold B at the start of do_isReady 2026-05-04 23:08:01 -07:00
gymnast86 25fe686573 add message ids for not being able to buy bombs from barnes 2026-05-04 23:07:23 -07:00
Luke Street 1c1ea98fdd Update aurora 2026-05-04 23:35:21 -06:00
TakaRikka e098104f8f Merge pull request #642 from TwilitRealm/debug-fly-cam
Add fly mode option to debug cam
2026-05-04 19:25:19 -07:00
Pheenoh 3c5ade5565 don't allow activation if paused or in event 2026-05-04 20:15:02 -06:00
Pheenoh b2ad75027e Merge branch 'main' into debug-fly-cam 2026-05-04 19:26:31 -06:00
TakaRikka fdfbf83b88 Merge pull request #660 from TwilitRealm/fix/fix-ub
Fix a UB in Morpheel
2026-05-04 18:24:16 -07:00
SuperDude88 1b9ca0949e Clear Description on More Hovers (#673)
- Properly clear the previous option description when you hover over "toggle fullscreen" or "restore default window size"

Fixes #671
2026-05-04 19:17:39 -06:00
Luke Street 827037f0fa Update aurora for RmlUi base path fix 2026-05-04 18:27:50 -06:00
Luke Street d84c5790f5 NOMINMAX 2026-05-04 16:27:12 -06:00
Luke Street 49eb2282af Forgor to add 2026-05-04 16:20:30 -06:00
Luke Street 741f9ecfab Remove discord-rpc/rapidjson; roll our own 2026-05-04 16:14:57 -06:00
Luke Street 37b8122962 UI: Refactor pane control to allow hover for help text 2026-05-04 14:16:35 -06:00
doop 5f2cf68e80 Minor UI nits 2026-05-04 19:38:11 +00:00
Luke Street 74f2c58b29 UI: Preset tweaks 2026-05-04 13:08:20 -06:00
madeline 208433047a Merge branch 'main' of https://github.com/TakaRikka/dusk 2026-05-04 12:06:28 -07:00
madeline 2c01430035 fix stereo audio with mirror mode fixes #666 2026-05-04 12:06:24 -07:00
Luke Street 5121437bcf UI: Avoid looping at end of window content 2026-05-04 11:49:12 -06:00
Luke Street f61bd3e5ad UI: Reorder settings tabs 2026-05-04 11:31:09 -06:00
Luke Street 835e409b32 UI: Fix prelaunch options close anim 2026-05-04 11:27:31 -06:00
Luke Street 010bdb7e25 UI: Fix left/right nav from content to change tabs 2026-05-04 11:17:48 -06:00
Luke Street 7ba22b7714 UI: Refocus top document automatically 2026-05-04 11:14:40 -06:00
Luke Street efcb19a3d0 Revert hide change to popup menu 2026-05-04 10:49:57 -06:00
Luke Street 55455bb1b5 Adjust presets & default settings 2026-05-04 10:43:42 -06:00
qwertyquerty e49be12297 RmlUi improvements (#663)
* rmlui audio

* fix menu select sound

* Fixes #662

* fix reset logic and fix popup getting stuck closed

* fix X button on menu popup

* rmlui achievements, and fix open/close bug

* presets, achievements css, and menu sounds toggle

* forgor

* fix b button causing audio when menu not visible
2026-05-04 10:25:13 -06:00
MelonSpeedruns 75f4940f5e set field_0xbaf variable like all the other conditions 2026-05-04 11:29:29 -04:00
MelonSpeedruns 8047330952 oops i suck 2026-05-04 09:55:01 -04:00
MelonSpeedruns 9105dcb078 remove empty line 2026-05-04 09:54:24 -04:00
MelonSpeedruns b8e38e03e2 Apply PJB request 2026-05-04 09:54:00 -04:00
MelonSpeedruns 331352878e Fix a UB in morpheel 2026-05-04 08:41:19 -04:00
Luke Street 62a88f1e9a UI: Add warning icons to experimental settings 2026-05-03 23:44:38 -06:00
Luke Street 43b603e70b UI: 3-finger tap to toggle menu on mobile 2026-05-03 22:39:31 -06:00
doop 95e6ac54cf Random UI and README tweaks (#653) 2026-05-03 22:02:09 -06:00
Luke Street c4b2e2e501 Make prelaunch fade out smoother 2026-05-03 22:01:02 -06:00
Luke Street dccba23980 Update aurora 2026-05-03 20:47:14 -06:00
Luke Street bf27d10519 Revert "Convert UI fonts to WOFF2 (#647)" (#648)
This reverts commit 6c27011e32.
2026-05-03 20:41:24 -06:00
doop 6c27011e32 Convert UI fonts to WOFF2 (#647)
* Convert UI fonts to WOFF2

* ...except for the ones we use for ImGui
2026-05-03 20:36:55 -06:00
Luke Street 6220990dc5 UI: Use decorator: text for close button 2026-05-03 19:01:44 -06:00
Phillip Stephens 93e9767c9f Fix OSReport crash on linux, harden FormatToString against malformed strings (#640)
* Fix OSReport crash on linux, harden FormatToString against malformed strings

* Move size increment to after error check

* Update aurora and impl OSPanic

---------

Co-authored-by: Luke Street <luke@street.dev>
2026-05-03 18:50:49 -06:00
Luke Street c774f53dad UI: Fix L/R to switch tabs
Resolves #645
2026-05-03 18:36:06 -06:00
Luke Street 7fbfe5ad88 UI: Add close button to tab bar 2026-05-03 18:29:08 -06:00
Luke Street ef02037990 Remove ESC to exit fullscreen 2026-05-03 17:26:17 -06:00
Luke Street 23cc18ba0e UI: Press ESC to unbind a button
Resolves #562
2026-05-03 17:26:17 -06:00
Luke Street 924dbc7715 UI: Implement controller config
Resolves #622
2026-05-03 17:26:17 -06:00
TakaRikka 742f4938f2 Merge pull request #641 from TwilitRealm/fix/klift00
Frame Interp: Fix obj_klift00 chains
2026-05-03 15:32:35 -07:00
TakaRikka 02e0f586d3 Merge pull request #639 from TwilitRealm/fix/fyer_cs
Frame Interp: Fix Fyer canon repair cutscene
2026-05-03 15:31:09 -07:00
Luke Street 5717aeef85 UI: Bold modified settings values 2026-05-03 16:01:33 -06:00
Luke Street da9b99f650 Update aurora 2026-05-03 15:28:03 -06:00
Pheenoh 901ce2ee4c add debug fly cam option 2026-05-03 15:23:59 -06:00
Pheenoh dd2b993cd5 frame interp: fix obj_klift00 chains 2026-05-03 09:58:31 -06:00
Pheenoh 83577d3b82 frame interp: fix fyer canon repair cs 2026-05-03 09:20:41 -06:00
TakaRikka 1cb8b19520 Merge pull request #612 from TwilitRealm/26-05-01-gameheap-size
Increase gameHeap size by an order of magnitude
2026-05-03 00:18:37 -07:00
TakaRikka d109cd891e add note 2026-05-03 00:07:37 -07:00
doop 63c4002ca6 Fix prelaunch nav cycling 2026-05-03 05:49:53 +00:00
Lurs 6954efcd15 Should fix #636 2026-05-03 06:46:49 +02:00
Jasper St. Pierre 78c2147771 midna eye lod fix 2026-05-02 15:36:00 -07:00
Irastris c938d5468e Add Interface tab to RmlUi, remove ImGui interface menu 2026-05-02 18:16:42 -04:00
Irastris 35590c5312 Increase font size for pane text 2026-05-02 17:24:10 -04:00
Luke Street e976b10e2a UI: Avoid overlapping ImGui menu bar 2026-05-02 15:22:24 -06:00
Irastris 3949706b28 Revise gyro aim help text, remove ImGui input menu 2026-05-02 17:19:41 -04:00
Irastris ce55916845 Add Autosave to RmlUi, remove ImGui gameplay menu, formatting consistency 2026-05-02 17:01:30 -04:00
Irastris 9b252cbdd2 Remove ImGui cheats menu 2026-05-02 16:33:50 -04:00
Irastris 97fa09f6ee Add spatial sound option to RmlUi, remove ImGui audio menu 2026-05-02 16:05:57 -04:00
TakaRikka 0e7a7cccb9 Merge pull request #458 from TwilitRealm/feature/autosave
Autosave Feature
2026-05-02 13:03:29 -07:00
Irastris 1c0cdcc176 Typo 2: Electric Boogaloo 2026-05-02 15:54:42 -04:00
Irastris 280305c2ba Typo 2026-05-02 15:33:44 -04:00
Luke Street d1f1d579bc Prevent macOS crash on shutdown by tracking logging dtor (#626) 2026-05-02 13:22:28 -06:00
Irastris eeeb3ffe25 Remove ImGui graphics menu 2026-05-02 14:45:34 -04:00
Jasper St. Pierre 1ee0f862e1 map highlight fix 2026-05-02 11:45:01 -07:00
Jasper St. Pierre 6b327c9f61 disable jpa interp for now
closes #618
2026-05-02 11:44:21 -07:00
Luke Street f148e0ebc1 UI: Rework Document close handling again 2026-05-02 12:39:07 -06:00
Jasper St. Pierre 6f20f4d629 compile fix 2026-05-02 10:54:45 -07:00
Irastris 94670270d6 Fix prelaunch menu transition post-startup 2026-05-02 13:52:20 -04:00
Luke Street 8e21247a97 UI: Prelaunch fade + BG persistence 2026-05-02 11:32:59 -06:00
Luke Street aa84004cb4 Merge branch 'rmlui-integration' 2026-05-02 10:50:18 -06:00
Luke Street e1c201f4bd Make prelaunch sticky & kill ImGui prelaunch 2026-05-02 10:44:59 -06:00
MelonSpeedruns 425a1d15a0 Merge remote-tracking branch 'origin/main' into feature/autosave 2026-05-02 10:56:36 -04:00
MelonSpeedruns e3ad41792a fix respawn stageinfo when autosaving 2026-05-02 10:42:20 -04:00
MelonSpeedruns c1ba10fc8b fix mistake 2026-05-02 10:29:23 -04:00
TakaRikka 1c5686f71b Merge pull request #616 from TwilitRealm/HRTF
Emulate Surround option
2026-05-01 22:51:25 -07:00
TakaRikka b9e0f2b9ca Merge pull request #611 from TwilitRealm/26-05-01-heap-crash-log
Improve heap crash logging
2026-05-01 22:19:33 -07:00
TakaRikka ede175f141 Merge pull request #600 from TwilitRealm/fix/fix-bow-aiming
Fix bow aiming in first person
2026-05-01 22:18:14 -07:00
TakaRikka a301874e30 Merge pull request #592 from TwilitRealm/fix/free-cam-fix
Freecam Fixes
2026-05-01 22:17:21 -07:00
Irastris 9b4a9a6bd9 Initial attempt at the prelaunch document 2026-05-02 00:10:11 -04:00
Luke Street 04274b1884 Make RmlUi F1, ImGui Shift+F1 2026-05-01 21:53:48 -06:00
Luke Street ca783b8424 Merge branch 'main' into rmlui-integration
# Conflicts:
#	extern/aurora
2026-05-01 21:24:24 -06:00
Luke Street 2e4c2b5b46 UI: Add controller input 2026-05-01 21:24:12 -06:00
Luke Street 4c09d8b910 Fix restoring scroll position on pop 2026-05-01 17:40:38 -06:00
Luke Street fb1b260d09 Add Input tab to settings 2026-05-01 16:52:08 -06:00
Luke Street 98eb8f718e Add Bloom settings 2026-05-01 16:32:04 -06:00
Luke Street 68b2e0ee2d Rework Settings components 2026-05-01 16:14:20 -06:00
Luke Street 81771a0522 Editor Collection, Minigame, Config tabs 2026-05-01 14:12:12 -06:00
madeline 93c8bcc210 hrtf 2026-05-01 13:04:08 -07:00
Luke Street 176bf5f0c4 Editor inventory tab 2026-05-01 13:11:43 -06:00
Luke Street 65a5945778 Location tab in editor 2026-05-01 12:37:40 -06:00
Luke Street 8f7b9cdfdd Dual pane navigation & more player editor 2026-05-01 12:06:05 -06:00
MelonSpeedruns acecba7ff7 Reset camera zoom to 0 if freecam is enabled mid-game 2026-05-01 12:54:40 -04:00
MelonSpeedruns 507e0aadbc Merge remote-tracking branch 'origin/main' into fix/free-cam-fix 2026-05-01 12:54:12 -04:00
Jasper St. Pierre 8406d9b192 Merge pull request #613 from TwilitRealm/widescreen/wide-hidden-village
Wide Bulblin count in Hidden Village
2026-05-01 09:04:23 -07:00
Jasper St. Pierre 6f3170cb56 Merge pull request #604 from TwilitRealm/widescreen/dmap-menu
Widescreen Dungeon Map
2026-05-01 09:04:08 -07:00
Jasper St. Pierre 835582224e Merge pull request #601 from TwilitRealm/fix/fmap-widescreen
Widescreen Field Map
2026-05-01 09:04:00 -07:00
MelonSpeedruns 52879f50f0 Wide Bulblin count in Hidden Village 2026-05-01 11:47:18 -04:00
Irastris 2b505f1be4 Revise floating scrollbar margin 2026-05-01 11:19:51 -04:00
Irastris f089f9024d Centralize tab styling and other tidying 2026-05-01 11:13:14 -04:00
roeming 43fb421a93 Merge pull request #608 from TwilitRealm/location-flags-ui
Area flags UI
2026-05-01 07:26:23 -04:00
PJB3005 f06d6b50a9 Fix Plumm game score reset
Fixes #609
2026-05-01 09:27:45 +02:00
Jasper St. Pierre 2c987b0211 build fix 2026-05-01 00:17:51 -07:00
Jasper St. Pierre 3d860ad454 jpa interp start 2026-05-01 00:12:26 -07:00
Luke Street b5bf19569b Button: Selected but not active style 2026-05-01 01:01:38 -06:00
PJB3005 5a7f5cb4a7 Increase gameHeap size by an order of magnitude
Why not?
2026-05-01 08:57:37 +02:00
Luke Street 1affefbbfc Pane: Focus selected child first 2026-05-01 00:56:53 -06:00
PJB3005 e4ff38a712 Disable spammy mDoGph_Painter log line
What was this even debugging? Who knows.
2026-05-01 08:54:32 +02:00
PJB3005 f2ac4d6f44 Leave OSReport enabled. 2026-05-01 08:52:41 +02:00
PJB3005 48b98a5432 Make JKRExpHeap OOM logging more verbose 2026-05-01 08:50:55 +02:00
PJB3005 a4752154f7 Nicely plumb OSReport error/warning/etc through Aurora's logger
This makes a new implementation in the dusk src folder, and makes the existing file containing these functions not compiled anymore.

A ton of dead code is now gone.
2026-05-01 08:50:42 +02:00
Luke Street 0d973a497b Editor: Add get_item_name 2026-05-01 00:40:57 -06:00
Luke Street ab4eccf1df Some more dual pane select work 2026-05-01 00:26:04 -06:00
Luke Street e0c449f28e Improve add_child and Button APIs 2026-04-30 23:36:30 -06:00
Jasper St. Pierre ce9a5c06d5 heap name 2026-04-30 22:19:19 -07:00
Jasper St. Pierre 2bbba1e4e8 couple small fixes 2026-04-30 21:37:28 -07:00
Luke Street 39298f8d8f Preserve focused element on pop 2026-04-30 22:31:24 -06:00
Luke Street 32b4c0567a Animate overlay open/close 2026-04-30 22:17:48 -06:00
Jasper St. Pierre 7ff1b5332e Merge pull request #606 from dooplecks/trim-correction
Correct trim height for arbitrary aspect ratios
2026-04-30 20:38:03 -07:00
Jasper St. Pierre 5e77a60bd6 Merge pull request #610 from dooplecks/shadow-interp
Interpolate shadow camera
2026-04-30 20:36:53 -07:00
doop 9629c000bd Interpolate shadow camera
Fixes #454.
2026-05-01 03:25:07 +00:00
Luke Street 9dc5fed686 Fix overlay CSS 2026-04-30 21:12:25 -06:00
Luke Street 2cc9db77dd Fix overlay 2026-04-30 21:10:48 -06:00
Luke Street 8aa08c9443 Window animations & tags instead of classes 2026-04-30 20:55:21 -06:00
Irastris dca3e2eba6 Overlay: I forgot about pop_document()
This in turn fixes a bug that I was about to bother encounter about, smh
2026-04-30 21:54:52 -04:00
Irastris 57061fba38 Initial attempt at the overlay document 2026-04-30 21:39:39 -04:00
Luke Street cee6a24309 UI: Defer document destruction 2026-04-30 17:46:36 -06:00
Luke Street 62edb3abc6 UI: Implement initial document stack logic 2026-04-30 17:21:55 -06:00
Luke Street 1c9e1c0a66 Minor clean 2026-04-30 16:15:27 -06:00
Luke Street a06aeb10c1 Extract TabBar component 2026-04-30 16:13:08 -06:00
roeming b84b309e00 compilation fix attempt 3 2026-04-30 17:51:52 -04:00
roeming 62eecb3ccd compilation fix attempt 2 2026-04-30 17:48:39 -04:00
roeming ec07572ced compilation fix attempt 2026-04-30 17:45:53 -04:00
roeming b45e2fa34d swap array for named variables 2026-04-30 17:25:24 -04:00
roeming 289a718446 fix comment wording 2026-04-30 17:10:33 -04:00
roeming 292a2a6c34 fix wrong formatting, fix duplicate ui object, fix wrong flags getting set 2026-04-30 17:03:47 -04:00
Luke Street 2e8415b950 Update aurora 2026-04-30 14:43:44 -06:00
roeming dbf1f6e354 implement multibyte area flags in UI 2026-04-30 16:25:56 -04:00
roeming 9a2fe9745d Draw area flags as table 2026-04-30 15:55:59 -04:00
Irastris b5ca343fac Fix apostrophes in strings 2026-04-30 15:50:01 -04:00
doop 88c7ff63ff Fix preprocessor conditional 2026-04-30 19:48:03 +00:00
Luke Street 7a438ad30f UI: Extract a Document class 2026-04-30 13:44:33 -06:00
doop 89649de7c3 Correct trim height for arbitrary aspect ratios
Fixes #543.
2026-04-30 19:39:36 +00:00
Irastris a1960eaa33 Initial attempt at the popup menu 2026-04-30 15:30:14 -04:00
MelonSpeedruns d6820c9233 fix toast call 2026-04-30 14:53:15 -04:00
MelonSpeedruns 5c4bb8d33d Merge remote-tracking branch 'origin/main' into feature/autosave
# Conflicts:
#	src/dusk/imgui/ImGuiConsole.cpp
2026-04-30 14:51:17 -04:00
MelonSpeedruns e3ce1f01c9 Widescreen Dungeon Map 2026-04-30 14:38:24 -04:00
Luke Street 9b6b344ecf Revert "mirror clip fix"
This reverts commit 1ac6df8de7.
2026-04-30 12:09:18 -06:00
Luke Street 3db85d5b44 Merge branch 'main' into rmlui-integration
# Conflicts:
#	extern/aurora
2026-04-30 12:04:21 -06:00
roeming b5871d72d9 fix build 2026-04-30 11:47:22 -04:00
roeming b70a714f88 Remove missed randomizer flag 2026-04-30 11:45:16 -04:00
roeming cad5a8d1bc Add multibyte flags to Area iterators 2026-04-30 11:43:57 -04:00
roeming 93f8a5fa8f Move area multi flag bits to combined flags, at most 2 2026-04-30 11:11:08 -04:00
roeming b0809ea78c Add area flags 2026-04-30 11:02:18 -04:00
MelonSpeedruns b0e9033736 Widescreen Field Map 2026-04-30 10:55:53 -04:00
Jasper St. Pierre 1ac6df8de7 mirror clip fix
closes #581
2026-04-30 07:52:44 -07:00
MelonSpeedruns 5899b2157a fix bow aiming in first person 2026-04-30 09:29:42 -04:00
madeline 44f3828f68 fix morpheel logic 2026-04-30 02:48:30 -07:00
madeline 3f560b060c 40 achievements 2026-04-30 01:48:03 -07:00
Luke Street 3185f578fb Update aurora 2026-04-30 01:45:54 -06:00
Luke Street 4fc09799b6 UI: Fix section heading font 2026-04-30 01:45:25 -06:00
Irastris fe0e3cad72 Remove unused editor functions 2026-04-30 03:27:48 -04:00
Luke Street 37d1aa7f40 UI: Run builder before moving it 2026-04-30 01:07:11 -06:00
Luke Street 4a12554bf4 UI: Mobile keyboard fixes, safe area padding, & more 2026-04-30 00:06:27 -06:00
Phillip Stephens fecd1d5683 Update aurora 2026-04-29 22:33:02 -07:00
doop bce9bf6fd9 Merge pull request #597 from dooplecks/haze-fix
Correct JPADrawInfo proj matrix on widescreen
2026-04-30 00:55:32 -04:00
doop fbf63b075a Correct JPADrawInfo proj matrix on widescreen
Fixes #337.
2026-04-30 04:28:47 +00:00
Luke Street b86d6e90e2 Add Gameplay settings & make Panes scrollable 2026-04-29 21:52:33 -06:00
Luke Street 6425b452e7 Make PgUp/PgDown change tabs 2026-04-29 20:25:59 -06:00
Luke Street 1657fe8083 Split out string/number components 2026-04-29 20:19:27 -06:00
Luke Street ecd74a4cbd More settings/editor components 2026-04-29 19:54:37 -06:00
MelonSpeedruns 36dc43c602 Fix changing tunics crash while on top of mirror (#596)
* Fix changing tunics while reflection is active

* Revert "Fix changing tunics while reflection is active"

This reverts commit 89927dc7a6.

* Really fix changing tunics while reflection is active

* Fix transforming on ice again

---------

Co-authored-by: MelonSpeedruns <melonspeedruns@stratobox.net>
Co-authored-by: Irastris <irastris15@gmail.com>
2026-04-29 18:13:07 -06:00
Luke Street d92515f0d4 Begin scaffolding keyboard nav 2026-04-29 15:19:15 -06:00
MelonSpeedruns f147dcac0c Fix camera while crawling & disable freecam properly when not chasecam 2026-04-29 15:29:00 -04:00
MelonSpeedruns ee4c84f39b Fix slight spazz when changing cam type 2026-04-29 15:21:48 -04:00
MelonSpeedruns b8a83c6f59 disable freecam if not chasecamera 2026-04-29 14:37:32 -04:00
MelonSpeedruns 4462c0ef69 more optimizations to freecam code 2026-04-29 14:28:18 -04:00
Luke Street 3cb7fbd030 Create new component system & initial settings window 2026-04-29 00:38:26 -06:00
Irastris 1e372a856d Attempted to start making the save editor functional 2026-04-28 22:54:47 -04:00
Irastris b48d9aa052 Split window document and styles out to files for readability 2026-04-28 19:09:47 -04:00
Luke Street d899706208 Start UI over from scratch and add demo window 2026-04-28 16:20:45 -06:00
MelonSpeedruns 9a7b62cbc6 disable freecam if an event cam happens 2026-04-28 16:25:42 -04:00
MelonSpeedruns 8e0f0e878e optimize some code 2026-04-28 16:13:49 -04:00
MelonSpeedruns 79344edf0d maybe fix number 2 2026-04-28 15:19:32 -04:00
MelonSpeedruns e59bfd1a9c potential fix for freecam flashing 2026-04-28 15:01:57 -04:00
Luke Street f7b880c5ea Small tweak to rml_string 2026-04-28 00:27:18 -06:00
Luke Street ff78bc8d6c Start using Rml::PropertyId/Property instead of strings 2026-04-28 00:18:52 -06:00
Luke Street 6503b4e7eb Add blur and shadow to window component 2026-04-27 23:44:58 -06:00
Irastris 8fb4ba8924 Remove "Enable" from various options, and move DoF under post-processing 2026-04-27 22:51:56 -04:00
Irastris 5f675c6f2b Start deprecating ImGui 2026-04-27 22:44:26 -04:00
Irastris b3333241c5 Add right-pane for item descriptions 2026-04-27 22:44:26 -04:00
Irastris e39079c0f8 Initial game menu implementation 2026-04-27 22:44:26 -04:00
Irastris c3317d9232 Initial window class programming 2026-04-27 22:43:04 -04:00
Luke Street 025cb58493 Forgor to commit 2026-04-27 01:15:19 -06:00
Luke Street b3dee825e8 Improve button/option style 2026-04-27 00:44:01 -06:00
Luke Street f6c5aac3c8 Improve disc selector 2026-04-27 00:36:56 -06:00
Luke Street 25e9064d09 Revamped prelaunch experiment w/ RmlUi 2026-04-27 00:18:31 -06:00
Luke Street 3e1e8f1244 Enable RmlUi 2026-04-26 21:53:39 -06:00
TakaRikka eaae8b6137 Merge branch 'main' of github.com:TwilitRealm/dusk into mapmirror 2026-04-26 17:37:30 -07:00
roeming 0bf663141a change filter to avoid allocations 2026-04-25 14:39:47 -04:00
MelonSpeedruns d7dced7ddf don't autosave if playing a cutscene 2026-04-25 08:25:50 -04:00
MelonSpeedruns 78b0563c0e Merge remote-tracking branch 'origin/main' into feature/autosave
# Conflicts:
#	src/dusk/imgui/ImGuiMenuEnhancements.cpp
#	src/dusk/settings.cpp
#	src/f_ap/f_ap_game.cpp
2026-04-24 12:54:40 -04:00
MelonSpeedruns 871d18e294 added experimental setting for autosave 2026-04-20 13:15:37 -04:00
MelonSpeedruns c157564da6 dungeon doors now autosave 2026-04-20 13:02:25 -04:00
MelonSpeedruns ecc3b00c51 Merge remote-tracking branch 'origin/main' into feature/autosave
# Conflicts:
#	src/f_ap/f_ap_game.cpp
2026-04-20 12:55:17 -04:00
MelonSpeedruns 8afb1141ab Autosave when changing rooms 2026-04-17 13:41:56 -04:00
MelonSpeedruns 8c5673d9b8 autosave when loading scene 2026-04-17 13:12:20 -04:00
MelonSpeedruns 916dfcd9da Merge remote-tracking branch 'origin/main' into feature/autosave
# Conflicts:
#	src/dusk/imgui/ImGuiConsole.cpp
2026-04-17 12:10:24 -04:00
TakaRikka d9a0ef760f fix icon positions 2026-04-16 19:46:02 -07:00
MelonSpeedruns 842210e539 remove scene autosave cause that's buggy atm 2026-04-16 19:56:04 -04:00
MelonSpeedruns 39d951d0cb scene saving now works 2026-04-16 19:50:20 -04:00
MelonSpeedruns a4be0841e5 autosave WIP 2026-04-16 19:30:37 -04:00
TakaRikka 95470b830f wip map mirror 2026-04-16 05:55:46 -07:00
TakaRikka def29adbab cat door cleanup (#3155) 2026-04-13 01:42:10 -07:00
Howard Luck d912857ec4 Fix dMsgFlow_c::event027 aParam8 buffer size (#3153) 2026-04-11 12:54:25 -07:00
Howard Luck c57a7cf98f Fix daE_VA_c::mRopeCutStatus and va_tag_* array sizes (#3152) 2026-04-11 12:53:51 -07:00
Howard Luck 63d68e9b1d Fix daE_FB_c::mKeys array size on PC (#3151) 2026-04-11 12:52:48 -07:00
Howard Luck 1779734b12 Fix obj_maki_class::field_0x6f8 array size (#3149) 2026-04-11 12:51:20 -07:00
Howard Luck ad6f8e9265 Fix daNpcCoach_Attr_c::field_0x28 array size (#3148) 2026-04-11 12:50:50 -07:00
Pieter-Jan Briers 37d22cfed2 Fix daBaseNpc_c field_0x744 array size (#3154) 2026-04-11 12:37:32 -06:00
Pieter-Jan Briers 9b900a1a55 UB fixes (#3150)
* Fix incorrect size for J2DTevBlock8::insertTexture local_38

* Fix dMeter_drawOptionHIO_c mOptionTypeBGPosX/Y size

* dMeter_drawLightDropHIO_c mVesselAlpha fix

* d_a_mg_rod array size fixes

* Fix e_tk2_class mActionTimer array size

* daObjTOMBO_c field_0x714 array size fix
2026-04-11 11:28:01 -06:00
TakaRikka 472af2590a henna ub fix (#3147) 2026-04-11 00:07:18 -07:00
Pieter-Jan Briers 22d9840ed1 Fix field array size on field_0x50 (#3145)
UB caught by modern compilers, this fixes it.
2026-04-10 23:44:22 -07:00
Max Roncace d7c34741e2 Replace magic constants derived from framebuffer size (#3144) 2026-04-10 23:43:37 -07:00
Pieter-Jan Briers dabd6961a6 Couple sizeof(CMemBlock)s (#3143) 2026-04-10 23:42:00 -07:00
Pieter-Jan Briers bcd5a96391 Couple names in dMeterMap_c (#3142) 2026-04-10 23:41:24 -07:00
Pieter-Jan Briers dcb5f048d7 Replace some pointer casts with field references. (#3141) 2026-04-10 23:37:03 -07:00
TakaRikka 5685fa58c6 Z2Audio player debug work / fix actor method returns (#3140)
* Z2Audio player debug work

* fix actor method returns

* wii build fix
2026-03-30 02:10:42 -07:00
TakaRikka cb6ee4b21e d_path / d_vibration debug work (#3138)
* dpath debug

* dvibration debug

* d_meter2_info debug

* gcyl/gpsh debug
2026-03-29 16:43:00 -07:00
Luzagar c98b96f94e E ws work (#3137)
* e_ws work

* more doc

* add debug message

* move declaration

* more match

* test

* Revert "more match"

This reverts commit 3d910e6e913d84685aa40fe993a50402b3ee27a1.

* fix

* cleanup

* fix

* rename mIsHome
2026-03-29 16:27:52 -07:00
Max Roncace 36d89c7bbf object-particle debug almost matching (#3136) 2026-03-26 18:56:04 -07:00
Roman Sandu 0fc019dcfa JAHostIO and friends (#3131) 2026-03-26 18:54:07 -07:00
TakaRikka f8cf545848 cleanup d_a_obj_wflag (#3135) 2026-03-21 00:56:27 -07:00
TakaRikka bc7503cb70 fix push pull callback UB in other compilers (#3134) 2026-03-18 02:57:37 -07:00
TakaRikka f64015ea38 cc debug work (#3133) 2026-03-17 22:48:37 -07:00
Max Roncace 6694c1b281 Fix a bunch of compiler warnings and document several more bugs (#3130) 2026-03-17 22:38:05 -07:00
TakaRikka 9f340b604b various d_bg debug cleanup / d_menu_window_HIO debug (#3132)
* various d_bg debug cleanup

* matching forward decl for compiler compatibility

* fix build
2026-03-17 03:44:11 -07:00
roeming ae0f8909a6 convert daPasserMng_c::mGroupTbl underlying data from bytes to daPasserMng_c::Group (#3129)
* daPasserMng_c::mGroupTbl underlying data to daPasserMng_c::Group

* move over to const groups

* templated solution that works on modern compilers + mwcc

---------

Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-03-15 18:06:16 -07:00
Max Roncace bc9bf9d062 d_a_npc_tkj2 debug code+data 100% (#3128) 2026-03-11 03:18:57 -07:00
Max Roncace 01654335d4 d_a_horse debug improvements (#3127) 2026-03-11 03:16:11 -07:00
Max Roncace d27c7c4c29 Z2Creature debug fixes (#3126) 2026-03-11 03:13:09 -07:00
Luzagar 7f91d9547f E wb documentation + e_rd cleanup (#3125)
* e_rd cleanup

* first pass

* fix ?

* rename

* more rename

* fix other platform

* fix typo

* more documentation

* more work

* fix build

* fix

* more doc

* camera work

* more work

* cleanup

* more work

* clean up + fix build

* fix build

* more work

* change mSpeedRate name

* change description

* more work

* fire eff work

* fix build

* fix match

* debug fix ?

* update description

* rename field
2026-03-11 03:12:17 -07:00
Max Roncace 8a333fc7c9 More debug fixes for 99% TUs (#3122)
* d_a_e_hp debug code 100%

* d_a_npc_chin debug improvements

* d_a_npc_du debug code 100%

* d_a_npc_cdn3 debug code 100%

* d_a_e_rdy GCN symbol fixes

* d_a_kago debug code 100%

* d_a_e_oc debug code 100%

* d_a_e_yr debug code almost matching

* d_a_e_bg debug code 100%

* d_a_ykgr debug code 100%

* d_a_tag_hjump debug data fixes

* d_a_tag_attack_item debug data fixes

* d_a_e_df debug code 100%

* d_a_e_sh debug code 100%

* d_a_L7op_demo_dr debug code 100%

* d_a_L7low_dr debug code 100%

* d_a_e_sm2 debug code 100%

* d_a_movie_player debug code 100%

* d_a_e_st debug code 100%

* d_a_npc_aru debug code 100%

* d_a_e_yg debug code 100%

* d_a_door_spiral debug code 100%

* d_a_bg debug code 100% (still has .data issues)

* d_a_e_dn debug code 100%

* d_a_tag_attention debug code 100%

* d_a_e_bd debug code 100%

* d_a_tag_camera debug .rodata fix

* d_a_obj_movebox debug code 100% (array dtors are mismapped)

* d_a_mg_rod debug improvements

* d_a_e_rd debug symbol fixes
2026-03-11 03:07:19 -07:00
Huitzi 0b0fdd1f60 Actor status consolidation & process profile definition editing (#3117)
* Consolidate fopAcM_STATUS into fopAc_Status_e

* Add _e suffix to fopAcStts enums

* Prepare for profile enumeration
* Correct typo in scene_process_profile_definition
* Manually handle g_profile_Obj_DamCps (inline preprocessing)
* Correct g_profile_TAG_LV5SOUP procname to enum
* Create d_priority.h

* Update process profile definitions
* Moved inline comments to the left
* Add missing fopAcStts enums
* Add d_priority.h include in f_pc_leaf.h
* Manually update d_a_obj_damCps profile

* Replace fopAcStts enums replacing and anticipatory profile size correction
* Changed profile size from literal to sizeof() in anticipation of PR #3116
* Provided putative names to staff-related status enums
* Replaced appropriate literals with fopAcStts enums

* Fix borked merge

* Rename item number enums and move to d_item_data.h

* Rename process profile name & draw priority enums

* Move process profile name & draw priority enums to appropriate files
* Moved fpcNm_ enums from d/d_procname.h to f_pc/f_pc_name.h
* Moved fpcDwPi_ enums from d/d_priority.h to f_pc/f_pc_draw_priority.h

* ACTUALLY (whoops) stage merge

* Correct item mistranslation

Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>

---------

Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2026-03-09 18:33:31 -07:00
TakaRikka 30e839c28b d_s_room / d_s_name / d_a_title debug work (#3123)
* d_s_room / d_s_name debug work

* camera_class rtti fix

* d_a_title debug / handle shield rel changes

* fix shield build

* fix regressions
2026-03-06 22:30:25 -08:00
qwertyquerty 6c72b91f8e JUTDataFileHeader (#3121) 2026-03-02 16:29:07 -08:00
Luke Street 9649319ec4 Reorganize library code into libs/ (#3119)
* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN}

* Update configure.py and project.py for new libs structure

* Refactor `#include <dolphin/x.h>` -> `<x.h>`

* Remove `__REVOLUTION_SDK__` forwards from dolphin

* Fix dolphin/ references in revolution

* Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__`

* Always build TRK against dolphin headers

* Resolve revolution SDK header resolution issues
2026-03-01 14:35:36 -08:00
TakaRikka 6e149819e1 d_s_logo / d_s_play debug work, d_a_kago cleanup, misc cleanup (#3116)
* d_a_kago cleanup

* d_s_logo wii/shield work

* d_s_logo / d_s_play debug work

* fix missing profile class sizeof's

* fix phase->id values

* build fixes

* fix dCamera_c and camera profile
2026-03-01 13:19:48 -08:00
Luke Street 6a48380461 More GCC compatibility/warning fixes (#3118)
* Wrap >4-char literals in a MULTI_CHAR macro

Modern compilers do not support CW's non-standard behavior with
>4 char literals. We can, however, use a constexpr function to
compute the u64 values directly. This leaves <=4 char literals
unchanged.

* Replace non-pointer usages of NULL with 0

* Define NULL to nullptr on C++11 and above

* Fix more -Wpointer-arith and -Woverflow warnings

* Replace u32/s32 with uintptr_t/intptr_t where appropriate

* JSUOutputStream: Overload all standard int types
2026-02-28 20:19:17 -08:00
Luke Street b5d3b8c059 Another round of GCC fixes (#3115)
* Fix remaining <string> -> <cstring> for GCC compilation (#3114 follow-up)

MWerks' <string> header transitively includes C string functions
(memcpy, strlen, strcmp, etc.), but GCC/Clang's <string> is the C++
std::string header. These files all use C string functions and should
include <cstring> instead.

* Use std::isnan instead of isnan for GCC compilation

GCC's <cmath> places isnan in the std namespace. Using the unqualified
isnan fails to compile with GCC/Clang.

* Fix cCcD_Src types: s32 -> u32 for bitmask fields

cCcD_SrcObjCommonBase::mSPrm, cCcD_SrcObjTg::mType, and
cCcD_SrcObjAt::mType are used as bitmasks (SetType/SetSPrm take u32,
MskType/MskSPrm use u32, values like 0xFFFFFFFF are common in
aggregate inits). Change from s32 to u32 to match usage.

Also fix AT_TYPE_WOLF_ATTACK/AT_TYPE_UNK to use unsigned literals,
and remove now-unnecessary (s32) casts on hex literals in collision
source data.

* Mark dummy() functions as static to avoid multiple definition errors

These decomp artifact functions have the same name and signature across
TUs, causing linker errors when building as a single binary.
2026-02-28 13:35:07 -08:00
Luzagar 06ebc176c2 E rd documentation (#3106)
* some e_rd doc

* fix build

* more doc

* more doc

* fix debug

* fix debug for real

* change some name

* some rename

* rename
2026-02-28 12:25:31 -08:00
Max Roncace ebe7c7aabc ShieldD: Clean up a bunch of 99% matching TUs (#3113)
* d_a_npc_ks debug code 100%

* d_a_npc_rafrel debug code 100%

* d_a_npc_inko minor improvements

* d_a_npc_gro debug code 100%

* d_a_npc_pachi_taro debug code 100%

* d_a_npc_passer debug code 100%

* d_a_npc_pachi_maro debug code 100%

* d_a_npc_post debug code 100%

* d_a_obj_bemos debug improvements

* d_a_obj_scannon_ten debug code 100%

* d_a_b_mgn debug code 100%

* d_a_e_fb debug code 100%

* d_a_e_gb debug code 100%

* d_a_e_hz debug code 100%

* d_a_e_cr_egg debug code 100%

* d_a_e_md debug code 100%

* d_a_e_wb debug code 100%

* d_a_obj_mirror_6pole debug code 100%

* d_a_obj_spinLift debug data fixes

* d_a_obj_pdwall debug data fixes

* d_a_obj_ss_drink debug code almost matching

* d_a_obj_poFire debug code 100%

* d_a_obj_picture debug code 100%

* d_a_obj_dust debug code 100%

* d_a_obj_fallobj debug code 100%

* d_a_obj_itamato debug code almost matching

* d_a_obj_syRock debug code 100%

* d_a_obj_katatsumuri debug code 100%

* d_a_obj_wood_statue debug code 100%

* d_a_obj_lv6egate debug code 100%

* d_a_tag_qs minor debug symbol fixes

* d_a_obj_twGate debug code 100%

* d_a_obj_lv6SwGate debug code 100%

* d_a_obj_lv6swturn debug code 100%

* d_a_obj_lv6Tenbin debug code 100%

* d_a_obj_kwheel01 debug code 100%

* Fix RTTI order regression (cM3dGCyl vs cBgS_*)
2026-02-28 12:13:57 -08:00
Luke Street c900a043b8 Some GCC compilation fixes (#3114)
* Fix 6-byte multichar literals

* Add `struct` to `e_ga_class::ga_s`

* Fix remaining wrong forward declares (struct/class)

* Replace `#include <string>` with `#include <cstring>`

* Guard FLT_EPSILON define to prevent redefinition

* Add missing `#include <cstring>` for direct cstring function usage
2026-02-28 12:11:00 -08:00
Max Roncace d017a3cd36 d_a_alink debug improvements (#3112) 2026-02-27 11:20:39 -07:00
Pieter-Jan Briers a096caa8de Fix broken J3DTexture assert (#3111) 2026-02-25 14:06:37 -08:00
Pieter-Jan Briers f54661f878 Fix MORE wrong forward declares (struct/class) (#3110) 2026-02-24 14:20:45 -08:00
Pieter-Jan Briers 02607a4571 Minor JKRSolidHeap fixes (#3109)
64-bit compat
2026-02-24 14:20:11 -08:00
Pieter-Jan Briers 96ffd91c9a Fix JASGlobalInstance instance definitions (#3108)
There are a few places where JASGlobalInstance have their sInstance storage implemented via template specialization. The problem is that these have no initializer, which means that they are not proper definitions (only declarations) in standards-compliant C++. MSVC and (evidently) MWCC accept this, but modern Clang and GCC do not and won't emit symbols.

I've added a macro that properly initializes these outside MWCC.

Also, JASGlobalInstance<JAUSectionHeap> was only being declared in each actor file that used it, which sounds incorrect? Not sure about this but I added it to m_Do_main too, again behind MWERKS check.
2026-02-23 11:17:37 -08:00
Pieter-Jan Briers 59fd9f387a Fix incorrect forward declare keywords (#3107)
Mixups of class/struct keyword in forward declares. Doesn't seem to matter on MWCC, but causes name mangling mismatching on modern platforms.
2026-02-23 11:13:00 -08:00
Luzagar 73debfd6b9 Warpappear doc (#3104)
* warpappear documentation

* dist documentation

* more doc

* add enum name + square macro
2026-02-20 19:06:42 -08:00
Jcw87 2113d9044b d_resorce debug (#3105) 2026-02-20 03:05:23 -08:00
Max Roncace 803bc041c7 Implement Z2AudioCS (#3103) 2026-02-20 02:53:27 -08:00
roeming 0558bde1e6 Big cast cleanup (#3076)
* Big cast cleanup

* fix for name conflict

* rename header

* rename cast macros

* fix rename mistake

---------

Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-02-20 02:48:29 -08:00
Max Roncace 95c3626771 Fix Wii splits for EXI2_GDEV_GCN/main.c (#3102) 2026-02-17 23:04:42 -08:00
Max Roncace a790efafc5 d_cursor_mng mostly matching (#3101) 2026-02-17 22:58:52 -08:00
Max Roncace 34ea82dd28 Link exception.s for Wii/demo versions (#3100) 2026-02-13 15:16:28 -08:00
Max Roncace 1273e633f2 m_Re_controller_pad mostly matching (#3099)
* Move m_Re_controller_pad to m_Re/

* m_Re_controller_pad mostly matching
2026-02-13 15:15:42 -08:00
Jcw87 0b1cb89d69 d_demo debug (#3098) 2026-02-13 15:08:10 -08:00
Jcw87 68f3531c2d d_bg_parts debug (#3097) 2026-02-13 15:06:14 -08:00
Max Roncace 0e58f214e5 Add .gitkeep for orig/DZDE01 and add DZDE01 to README (#3092) 2026-02-13 15:05:16 -08:00
Jcw87 fd8bfaa398 fix d_a_player regression (#3096) 2026-02-12 01:03:43 -08:00
TakaRikka 51b8da6ba2 extract d_a_player l_sightDL (#3095) 2026-02-11 08:00:44 -07:00
Jcw87 a07ec61d66 fix compiler warnings (#3094) 2026-02-11 00:14:18 -08:00
Huitzi e537b32c66 Add doxygen comment format to .clangd (#3093) 2026-02-11 00:13:26 -08:00
Max Roncace 255705a4cd Revolution SDK work (#3091)
* Implement revolution/ax

Copied mostly unchanged from Petari

* Implement revolution/axfx

Copied mostly unchanged from Petari

* Implement revolution/arc

Copied mostly unchanged from Petari

* Implement revolution/mem

Copied mostly unchanged from Petari

* Implement revolution/tpl

Copied verbatim from Petari

* revolution/ipc matching (except small linking issue on ShieldD)

* revolution/pad/Pad matching

Largely copied from Petari with significant modifications

* Fix up ut_TextWriterBase symbols

* Fix homebuttonLib file names in Shield splits
2026-02-11 00:10:40 -08:00
Jcw87 b9de3375b4 d_a_obj debug (#3089) 2026-02-11 00:06:12 -08:00
Jcw87 d8a4157b9f d_jnt_col debug (#3088) 2026-02-11 00:05:16 -08:00
Jcw87 a772c05f4d d_save debug (#3087) 2026-02-11 00:04:54 -08:00
Jcw87 57cea18076 JParticle debug (#3090) 2026-02-07 04:43:51 -08:00
Max Roncace 434550355b Replace ALL_GCN with ALL in configure.py for Dolphin SDK libs (#3086) 2026-02-07 04:35:04 -08:00
Max Roncace 8609826deb revolution/usb matching for Wii+Shield (#3085) 2026-02-07 04:33:54 -08:00
Max Roncace 6ad0254bbc KPAD mostly matching for Wii (#3084) 2026-02-07 04:32:31 -08:00
Jcw87 61422182e8 d_lib debug (#3083) 2026-02-07 04:30:53 -08:00
Jcw87 00bdde3b94 d_com_static debug (#3082) 2026-02-02 23:46:39 -08:00
TakaRikka 2de91793ae update tools (#3081) 2026-02-02 23:33:59 -08:00
Max Roncace 3bc0670b91 Revolution WUD work (mostly matching) (#3080)
* WUD mostly matching for Wii

Mostly copied from Petari with small modifications, Shield match is
still pretty bad.

* Implement WUDHidHost

* Fix WUD regressions in Shield/ShieldD
2026-02-02 23:17:29 -08:00
Max Roncace 67f179161f Remove incorrectly-cased REL dirs from DZDE01 config (#3079) 2026-02-01 19:54:34 -08:00
Max Roncace f5dbf1d827 Revolution WPAD work (#3078)
* WPAD mostly matching, likely equivalent

* Implement WPADEncrypt (mostly taken from SMG1 decomp)

* Implement WPADHidParser

* Add wpad_debug_msg stub

* Fix WUD file paths in splits

* Fix WPAD regressions in Shield/ShieldD
2026-02-01 17:33:08 -08:00
Jcw87 21de544196 d_com_inf_game debug (#3075)
* d_com_inf_game debug

* inline sorting
2026-01-29 18:58:59 -08:00
Max Roncace f810edbbe9 Add configuration for DZDE01 (USA kiosk demo) (#3073) 2026-01-29 15:11:23 -08:00
Max Roncace 050ebb4471 Add missing TUs for Wii/Shield retail (+ filename cleanup) (#3072)
* Fix GCN_mem_alloc.c filename capitalization

* Fix up TRK file names in Wii/Shield splits

* Add string_TRK

* Add cc_gdev

* Add Shield-only wstring TUs

* Implement NdevExi2A

* Add missing JSystem TUs (more are still missing from ShieldD)

* Clean up includes
2026-01-29 14:18:08 -08:00
roeming c161523338 JUtility matching for debug (#3074)
* Jut cleanup work

* data section fix

* match the last of JUtility

* added more helpful comment

* Add missed null terminator

* do while -> while loop

* replace more do whiles

* Fix wii regression

* Add suggestions

* fix null check

---------

Co-authored-by: roeming <roeming@users.noreply.github.com>
2026-01-28 19:38:20 -08:00
hatal175 46951b63e8 Use literals in TWgate (#3071) 2026-01-28 14:22:12 -08:00
Huitzi 414a650f9f Various Lakebed Temple/water-related object debug equivalencies (#3070)
* d_a_obj_syRock + waterPillar debug equivalent
* Implemented HIO genMessage
* Added drawCylinder debug drawing

* d_a_obj_waterfall debug equivalent
* Implemented HIO genMessage
* Added unused tri collider and cull box data

* Various LV3 d_a_obj_* actors debug equivalent
* Added/modified some documentation
* Added some widescreen support functions
* Added relevant HIO stuff
* Noted weak ordering issues in configure.py

* Refactoring according to feedback
2026-01-28 14:21:47 -08:00
YunataSavior 5812194fad DBG npc_henna and mg_fshop equiv (#3069)
* DBG npc_henna almost, some mg_fshop

* Fix weed_control

* demo_camera_shop OK

* misc dbg symbol/etc fixes

* Fix e_ym/npc_henna dbg bss splits
Thanks @LagoLunatic

* dbg mg_fshop equiv

* PR comments

* DEBUG_CHECK_PAD_TRIG_Z mg_fshop
2026-01-28 14:19:46 -08:00
kipcode66 d787afaee0 Std7 (#3068)
* fix standard compiler error for d_a_tag_TWgate

* fix standard compiler errors for J3DJoint

* fix regression in ShieldD
2026-01-27 00:20:19 +02:00
hatal175 be3efedee3 Work on d_jdpreviwer (#3067) 2026-01-25 21:20:02 -08:00
Jcw87 7883248acc d_map debug (#3066) 2026-01-25 21:17:59 -08:00
TakaRikka 5867eaf68b 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
Niklas Bauer e01dbc3297 d_a_e_tk debug (#3062)
* d_a_e_tk debug

* a_this -> actor
2026-01-24 21:20:33 +02:00
Jcw87 86fddd48d5 d_stage debug (#3063) 2026-01-22 21:11:28 -08:00
Jcw87 7e0d9c3169 JUtility wii (#3061)
* JUtility wii

* lbl_8074CFA4
2026-01-20 20:28:42 -08:00
Jcw87 c256a9965e J2DMaterial linked (#3060) 2026-01-20 16:35:53 -08:00
Jcw87 623ba48542 JKernel wii (#3059) 2026-01-20 16:35:11 -08:00
Max Roncace e023387d7b Add missing d_bg_* TUs (#3058)
* Implement d_bg_s_capt_poly

* Add d_bg_s_func

* Ad d_bg_w_deform

* Add empty source file for d_bg_w_hf
2026-01-20 16:29:47 -08:00
YunataSavior 6472d5a4a6 dbg npc_aru (-1 func), npc_maro, and npc_bans equiv (#3053)
* dbg npc_aru (-1 func), npc_maro, and tag_push equiv
* daNpc_Aru_c::adjustMoveDir doesn't match. I don't know how to fix it without breaking GCN

* JORM default args + PR comments

* npc_bans dbg equiv
2026-01-20 16:28:50 -08:00
Max Roncace 1fba6e13e5 Use default parameter values in JORMContext calls where appropriate (#3057) 2026-01-19 18:18:30 -08:00
Max Roncace d83996c711 Fix misspelled dSv_config_language enum values (#3056) 2026-01-19 18:15:39 -08:00
Max Roncace 9d926f6720 Fix signaling NaN constants not appearing in debug .rodata (#3055) 2026-01-19 18:15:10 -08:00
Max Roncace a0a5b0cc38 d_a_tag_* TUs mostly matching for debug (#3054)
* d_a_tag_event debug almost matching

* d_a_tag_msg debug almost matching

* d_a_tag_attention almost matching

* d_a_tag_chkpoint debug almost matching (weak func order)

* d_a_tag_evt debug almost matching (extra weak fns)

* d_a_tag_evtarea debug almost matching (weak func order)

* d_a_tag_evtmsg debug almost matching (weak func order)

* d_a_tag_mist debug almost matching (weak func order)

* d_a_tag_howl debug almost matching (weak func order)

* d_a_tag_lantern debug almost matching (weak func order)

* d_a_tag_push debug almost matching (weak func order)

* d_a_tag_telop debug almost matching (weak func order)

* d_a_tag_CstaSw debug almost matching (weak func order)

* d_a_tag_ajnot debug almost matching (weak func order)

* d_a_tag_attack_item debug almost matching (weak func order)

* d_a_tag_gstart debug almost matching (weak func order)

* d_a_tag_hinit debug almost matching (debug weak func order)

* d_a_tag_hjump debug almost matching (weak func order)

* d_a_tag_hstop debug almost matching (weak func order)

* d_a_tag_lv2prchk debug almost matching (weak func order)

* d_a_tag_magne debug almost matching (weak func order)

* d_a_tag_mhint debug almost matching (weak func order)

* d_a_tag_mstop debug almost matching (weak func order)

* d_a_tag_spring debug almost matching (weak func order)

* d_a_tag_statue_evt debug almost matching (weak func order)

* d_a_tag_arena debug almost matching (weak func order)

* d_a_tag_Lv6Gate debug almost matching (weak func order)

* d_a_tag_Lv7Gate debug almost matching (weak func order)

* d_a_tag_Lv8Gate debug almost matching (.data + weak func order)

* d_a_tag_TWgate debug almost matching (weak func order)

* d_a_tag_lv6CstaSw debug almost matching (weak func order)

* d_a_tag_assistance debug almost matching (weak func order)

* d_a_tag_bottle_item debug almost matching (weak func order)

* d_a_tag_chgrestart debug almost matching (weak func order)

* d_a_tag_csw debug almost matching (weak func order)

* d_a_tag_escape debug almost matching (weak func order)

* d_a_tag_firewall debug almost matching (weak func order)

* d_a_tag_gra debug almost matching (weak func order)

* d_a_tag_guard debug almost matching (weak func order)

* d_a_tag_instruction debug almost matching (weak func order)

* d_a_tag_kago_fall debug almost matching (weak func order)

* d_a_tag_lightball debug almost matching (weak func order)

* d_a_tag_lv5soup debug almost matching (weak func order)

* d_a_tag_mmsg debug almost matching (weak func order)

* d_a_tag_mwait debug almost matching (weak func order)

* d_a_tag_myna2 debug almost matching (weak func order)

* d_a_tag_myna_light debug almost matching (weak func order)

* d_a_tag_pachi debug almost matching (weak func order)

* d_a_tag_poFire debug almost matching (weak func order)

* d_a_tag_qs debug almost matching (small mismatch in search)

* d_a_tag_ret_room debug almost matching (weak func order)

* d_a_tag_river_back debug almost matching (weak func order)

* d_a_tag_rmbit_sw debug almost matching (weak func order)

* d_a_tag_schedule debug almost matching (weak func order)

* d_a_tag_setBall debug almost matching (weak func order)

* d_a_tag_setrestart debug almost matching (weak func order)

* d_a_tag_shop_item debug almost matching (weak func order)

* d_a_tag_smk_emt debug almost matching (weak func order)

* d_a_tag_spinner debug almost matching (weak func order)

* d_a_tag_sspath debug almost matching (weak func order)

* d_a_tag_ss_drink debug almost matching (weak func order)

* d_a_tag_stream debug almost matching (weak func order)

* d_a_tag_theB_hint debug almost matching (weak func order)

* d_a_tag_watchge debug almost matching (weak func order)

* d_a_tag_waterfall debug almost matching (weak func order)

* d_a_tag_allmato debug almost matching (weak func order)

* d_a_tag_camera debug almost matching (extra weak fns)

* d_a_tag_wara_howl debug almost matching (RTTI mismatch?)

* d_a_tag_yami debug almost matching (weak func order)

* Fix Shield regressions related to d_a_tag_* debug work
2026-01-19 18:11:54 -08:00
Niklas Bauer 1817d3123f d_a_obj_fallobj debug work + dVibration_c alignment (#3048)
* d_a_obj_fallobj debug

* fix dVibration_c alignment

* fix

* pr comments
2026-01-19 17:58:59 -08:00
Jcw87 87a3705039 m_Do debug (#3052)
* m_Do debug

* m_Do wii data
2026-01-18 17:59:57 -08:00
YunataSavior 52a1e1363a npc_besu, npc_toby DBG equiv (#3051) 2026-01-18 17:52:48 -08:00
Jeffrey Crowell a5b7f2d1c4 fix build in daNpc_Hoz_c::test (#3050)
mMotionSeqMngr.setNo and mFaceMotionSeqMngr.setNo were called with int instead of the proper pointer.
2026-01-17 19:15:44 -08:00
roeming d45b10d0fd fopAcM_Register cleanup (#3047)
* use macro `fopAcM_Register` more consistently

* replace fopAcM_RegisterCreateID with version that doesn't create `a_this`
2026-01-17 15:52:32 +02:00
roeming 740387eb4f match d_a_npc_tk for debug (#3046)
* match d_a_npc_tk for debug

* fix macro usage

* fix whitespace
2026-01-17 15:45:52 +02:00
TakaRikka b1f44ce532 d_a_alink cleanup / debug work (#3045)
* start d_a_alink debug cleanup

* d_a_alink_damage debug

* d_a_alink_guard debug

* d_a_alink_bow debug

* d_a_alink_boom debug

* d_a_alink_copyrod debug

* d_a_alink_hvyboots debug

* d_a_alink_grab debug

* d_a_alink_sumou debug

* d_a_alink_horse debug

* d_a_alink_canoe debug

* d_a_alink_crawl / d_a_alink_hang debug

* d_a_alink_swim debug

* d_a_alink_hook / d_a_alink_iceleaf debug

* d_a_alink_bottle debug

* d_a_alink_whistle / d_a_alink_kandelaar / d_a_alink_ironball debug

* d_a_alink_demo debug

* d_a_alink_effect debug

* d_a_alink_wolf debug

* d_a_alink debug / cleanup

* cleanup button status enums
2026-01-17 15:44:37 +02:00
Max Roncace 93dcac3343 Use attention enums everywhere instead of integer literals (#3044) 2026-01-14 16:55:59 +02:00
Max Roncace c0e0bbaaf3 Clean up HIO for TUs using HIOParam/Param_c/HIO_c pattern (#3043) 2026-01-13 14:58:15 -08:00
kipcode66 235cb9a9ad fix va_list (#3042) 2026-01-13 17:51:14 +02:00
Jcw87 9a889bfcf8 JAWWindow (#3039) 2026-01-13 17:50:47 +02:00
Jcw87 335349693d ShieldD: integer division by 255 is not a relocation (#3038) 2026-01-13 17:49:31 +02:00
Jcw87 1a65a6bbbd J3D debug (#3037)
* J3DGraphBase debug

* J3DGraphAnimator debug

* J3DGraphLoader debug
2026-01-13 17:49:09 +02:00
kipcode66 dd03bf861f 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
YunataSavior 53aaed17c0 obj_pumpkin dbg equiv (#3036) 2026-01-12 22:18:58 +02:00
roeming a2e8347e8d d_a_obj_cowdoor debug matching (#3031)
* d_a_obj_cowdoor debug work

* fix formatting
2026-01-12 22:17:56 +02:00
roeming 6cc5e6fcca attempt 2 at d_a_cow debug work (#3030)
* transfer cow progress

* fix symbol names

* Fix shield names

* typo

* remove predefined macro
2026-01-12 22:17:09 +02:00
YunataSavior 24c08d322e e_rd, npc_ks dbg work (#3029)
* Partial e_rd, npc_ks dbg work

* More e_rd matching

* e_rd fixes and dbg ctor matched

* obj_ita dbg equiv

* e_st dbg almost equiv

* Some obj_ladder dbg work

* dbg e_rd PR comments

* Further e_rd dbg clangd fixes
2026-01-11 19:49:05 -08:00
Max Roncace 6a59c5231f Fix errors when building with -ipa program (#3035) 2026-01-11 19:25:26 -08:00
Max Roncace 47daf0b4ed Add __start.c for Wii builds (#3034) 2026-01-11 19:24:02 -08:00
hatal175 db8ae465ac Work on c_damagereaction and f_ap_game debug (#3033) 2026-01-11 19:22:57 -08:00
Max Roncace decb0c5437 d_camera debug almost matching (#3032) 2026-01-11 19:20:17 -08:00
Jcw87 2dd7e2ea62 J2DGraph debug (#3028)
* J2DGraph debug

* J2DGraph debug
2026-01-11 19:00:04 -08:00
Jcw87 6e76f12dd3 std-vector debug (#3027) 2026-01-10 23:39:15 +02:00
roeming 562f4d0d65 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
hatal175 2d4a8ee46a Work on d_debug_camera (#3024) 2026-01-08 07:53:40 -07:00
Jcw87 0e7b42e9ea linklist debug (#3025) 2026-01-08 07:52:18 -07:00
Jcw87 2b52bc59d0 JMath debug (#3023) 2026-01-07 19:53:53 +02:00
Jcw87 a313c26f0b JFWDisplay debug (#3022) 2026-01-07 19:52:16 +02:00
Max Roncace fd863582d6 f_pc mostly linked for Wii/Shield (#3015) 2026-01-06 04:45:15 -08:00
Max Roncace 3679e7abab Misc debug include/class order improvements + link remaining Z2AudioLib TUs (#3014)
* Improve dolzel.pch ordering

* Improve JSystem include order

* Various class ordering fixes

* Link remaining Z2AudioLib TUs

* Fix some symbols in Shield and weak functions in ShieldD
2026-01-06 04:38:40 -08:00
Jcw87 5b987084ea JUtility debug (#3020) 2026-01-05 04:07:04 -08:00
Max Roncace e15ba03caa Link d_a_npc and d_a_npc_cd2 (#3019) 2026-01-05 03:58:09 -08:00
Jcw87 22dc7a37db fix functions not returning values (#3018) 2026-01-05 03:55:35 -08:00
Jcw87 767e3ba17e Z2AudioLib debug (#3016) 2026-01-05 03:54:00 -08:00
kipcode66 1d2a0d9568 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
Jcw87 b897ed3ec9 m_Do debug (#3017)
* m_Do debug

* d_particle fix
2026-01-05 02:19:14 -08:00
Jcw87 deb7bead20 JKernel debug (#3012) 2026-01-04 17:22:56 -08:00
roeming 1400687731 d_a_e_rdy debug work (#3011)
* debug work for d_a_e_rdy

* remove unused fake function

* fix regressions

* rename variable

* Fix version diffs of angle adding
2026-01-04 17:22:04 -08:00
Max Roncace b72be3074a m_Do_ext retail linked + debug improvements (#3009) 2026-01-04 17:20:35 -08:00
Max Roncace 7cf1038865 d_particle debug improvements (#3010) 2026-01-02 08:24:40 -08:00
Niklas Bauer c3213e0c67 f_op work (#3008)
* f_op debug 1

* f_op debug 2

* f_op debug 3

* f_op debug 4

* f_op debug 5

* f_op_debug fix build

* f_op linking

* remove goto in fopac_create

* fix regressions

* fix regressions

* pr comments

* f_op debug 6

* f_op debug 7

* f_op debug 8

* f_op debug 9

* f_op debug 10

* f_op work, linking, symbols, heap

* regressions 1

* regressions 2

* pr comments
2025-12-30 14:22:38 +02:00
hatal175 e77f841d35 Work on d_cc_d debug (#3002) 2025-12-29 04:12:01 -08:00
TakaRikka 1f391dc5bd jgadget debug improvements (#3000) 2025-12-27 15:24:27 -07:00
Jcw87 038b8fd62f JAudio2 debug (#3006) 2025-12-27 15:23:15 -07:00
TakaRikka ce41820bf0 d_a_door_spiral mostly done (#3007) 2025-12-27 13:46:46 -07:00
YunataSavior 1668a01ab9 Enable unk_0x4d38 for VERSION_SHIELD (#3005) 2025-12-26 17:52:14 -08:00
YunataSavior 6e3b22adee Debug d_a_e_ym (#3003) 2025-12-26 16:23:14 -08:00
LagoLunatic 09280ae00b Fix optimization flag for Shield (#3004)
* Fix optimization flag for Shield

* Minor debug work

* Fix NULL asserts
2025-12-26 16:20:21 -08:00
roeming 4ebf9fac9f match most of d_a_e_wb debug (#3001)
* match most of d_a_e_wb debug

* Move over to using new `UNUSED` macro
2025-12-26 14:56:46 -08:00
roeming ec3f92b8bf match d_a_e_mk debug (#2999)
* match d_a_e_mk debug

* Fix platform guard
2025-12-26 14:56:15 -08:00
Jcw87 bae6d9da2d JAudio2 debug (#2996) 2025-12-26 13:20:53 -08:00
Niklas Bauer 67b576ad9a f_op debug work (#2991)
* f_op debug 1

* f_op debug 2

* f_op debug 3

* f_op debug 4

* f_op debug 5

* f_op_debug fix build

* f_op linking

* remove goto in fopac_create

* fix regressions

* fix regressions

* pr comments
2025-12-26 13:17:51 -08:00
LagoLunatic 229527daf7 Resolve all gameInfo fakematches (#2995)
* Clean up various inlines/fakematches/comments

* Copy OptRuby inline name from TWW debug

* Resolve all dEvt_control_c related fakematches, return pointer instead of reference

* Fix some more missing inline usages
2025-12-24 16:57:36 -08:00
TakaRikka cefe919b8d msl_c mostly matching for wii/shield (#2994) 2025-12-24 16:54:21 -08:00
Max Roncace 8a478c5ebe d_a_mg_rod debug improvements (#2993) 2025-12-23 16:11:09 -08:00
LagoLunatic 877889c510 Clean up code, remove fakematches, add UNUSED, enable warnings (#2992)
* Remove NDEBUG_DEFINED fakematch, clean up getName temps

* Fix ifdef

* Fix bad JSystem pch ifdef breaking decomp.me

* Remove Acch Chk fakematches

* Private Acch fields

* Fix some clangd errors in headers

* Add UNUSED macro for matching debug parameters

* Enable clangd unused-parameter warning

* Remove extern from initializers

Probably added by dol2asm?

* Fix process profile definitions

* Remove leftover dol2asm address comments

* Remove some unnecessary double casts

* Enable some more clangd warnings

* Fix missing usages of fopAcM_ct

* Fix wrong enum usage

* Fix more fakematches
2025-12-23 15:53:10 -08:00
Jcw87 6ef13c620a JAudio2 debug (#2990) 2025-12-23 10:23:09 -08:00
TakaRikka c9d0c58ffe 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
LagoLunatic ce895330ed Add missing RVL .init splits (#2989)
* Fix Debug_BBA being in the wrong split for GCN

* Add .init splits/symbols for Wii versions

* Fix incorrect relocations detected to __check_pad3 for Wii

* Add .init splits and fix __check_pad3 for Shield versions
2025-12-22 21:55:51 -08:00
Max Roncace 9767e76ba0 GCN data 100% matching (#2987)
* Update GZ2J01 symbols from linked DOL

* GCN data 100% matching

* Run dtk apply
2025-12-22 15:41:19 -08:00
Niklas Bauer 8fece471c6 Update README after GCN matching (#2986) 2025-12-22 12:32:48 -08:00
Jcw87 f156a2a413 JAHostIO, JAWExtSystem debug (#2985) 2025-12-22 12:27:31 -08:00
kipcode66 47ac1d4a4c 4th round of standard compiler fixes (#2984)
* 4th round of standard compiler fixes

* use of fpcM_ERROR_PROCESS_ID_e in gWolfBustersID
2025-12-22 02:20:08 -08:00
kipcode66 4045f16667 next round of standard compiler fixes (#2969)
* next round of standard compiler fixes

* Fix weak function order issue

* fix missmatch with ShieldD version
2025-12-21 17:48:09 -08:00
LagoLunatic b4f931f75f Miscellaneous data fixes (#2983)
* Replace bss lbl_ with init$0000

* Rename l_HIOInit to hio_set

The name is excluded from TP's weird maps, but hio_set is the name they used in TWW's maps.

* Fix a couple more init$ names

* Fix nbomb missing some bss

* Fix camera localstatics having wrong name

* Rename l_initHIO to hio_set

* A couple manual fixes

* Rename hioInit to hio_set

* Couple more manual fixes

* Fix d_a_npc_cd2 data and function order

* More data fixes

* Fix inconsistent hex vs decimal
2025-12-21 16:43:06 -08:00
Max Roncace c69e31bd0f Make Debug_BBA symbol global in __start.c (#2982)
This fixes an issue where the virtual address of the symbol would
be appended after the name making it impossible to automatically
match the symbol on more than one version.
2025-12-21 12:36:00 -08:00
Max Roncace ee32f5db55 d_a_vrbox2 matching (#2981) 2025-12-21 10:52:34 -08:00
LagoLunatic 16a2980f5a Update to objdiff 3.5.0 (#2980)
* Update to objdiff 3.5.0

* Fix symbols being in .data instead of .rodata for Wii/Shield
2025-12-21 10:46:14 -08:00
LagoLunatic 48f1d47690 Work on weak order (#2979)
* JAUSectionHeap OK

* Slightly improve d_camera weak func order (12 -> 10)

* Minor d_a_alink fixes

* weak_order_diff.py: Change to take source file as cli argument instead of .o file

For cli autocompletion to work.

* Reorganize J3D structs (no change in weak order)
2025-12-21 14:13:21 +02:00
YunataSavior 69bdaaca19 Link d_a_e_fb + npc_shad wii NA 1.0 ifdef (#2978)
* Link d_a_e_fb

* revert npc_ks changes
2025-12-21 14:11:50 +02:00
LagoLunatic f6e2cbca9d Match d_a_obj_ice_s rideCallBack (#2977)
* Match d_a_obj_ice_s rideCallBack

Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>

* Fix debug regression

---------

Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>
2025-12-20 18:53:41 -08:00
TakaRikka bd0c601a52 m_Do_MemCard/d_file_select wii/debug work (#2976)
* m_Do_MemCard/d_file_select wii/debug work

* fix builds
2025-12-20 18:30:04 -08:00
Luzagar 762159a990 d_a_npc_ks documentation (#2970)
* npc_ks work

* more work

* fix debug

* more documentation
2025-12-20 18:10:44 -08:00
Carco_21 c434c2edde Various d_ work (#2968)
* map work

* various meter work

* d_meter_button ShieldD almost equivalent

* error fix
2025-12-20 18:06:17 -08:00
Max Roncace a1c691ec92 Add config for Wii PAL (RZDP01) (#2975) 2025-12-20 18:04:28 -08:00
LagoLunatic 917d93664d Match dMsgUnit_c::setTag (#2974)
* Match dMsgUnit_c::setTag for GCN USA

Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>

* Match dMsgUnit_c::setTag for debug

* Minor cleanup

---------

Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>
2025-12-19 23:00:17 -08:00
LagoLunatic 0395053737 Match dNpcLib_lookat_c::action and daBaseNpc_lookat_c::calc (#2973)
* Match dNpcLib_lookat_c::action and daBaseNpc_lookat_c::calc

Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>

* Improve d_a_npc weak func order

---------

Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>
2025-12-19 22:59:16 -08:00
LagoLunatic ac9a361676 Match JFWSystem::init (#2972)
Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>
2025-12-19 17:25:09 -08:00
roeming f9d69372a1 match last function in d_camera.cpp (#2971)
Co-authored-by: Cuyler36 <Cuyler36@users.noreply.github.com>
2025-12-19 17:24:18 -08:00
Jcw87 2c62444df1 m_Do_main debug (#2965) 2025-12-19 21:22:03 +02:00
LagoLunatic 9771ae6879 JASAiCtrl OK (#2967) 2025-12-18 13:38:20 -08:00
LagoLunatic 21ce84ae43 d_a_npc_kn OK (#2966)
* d_a_npc_kn OK

* Remove nonmatching comment
2025-12-18 13:37:50 -08:00
roeming 93067110f6 Use consistent s32/u32 (#2964)
* cleanup long usage

* fix regression
2025-12-18 13:31:44 -08:00
Luzagar 7cae156176 fix ENABLE_REGHIO macro (#2963) 2025-12-18 13:31:00 -08:00
Niklas Bauer c0bdb153b5 random debug objects (#2961) 2025-12-17 11:26:51 +02:00
LagoLunatic 6a02f5b387 d_a_npc_wrestler 100% (#2962)
* Match sumouPunchMiss, improve sumouPunchChaseShock

Removing these consts also matches several functions on debug.

* Match sumouSideStep and sumouPunchChaseShock
2025-12-16 22:45:46 +02:00
TakaRikka 8185d87f85 copy homebuttonLib from oot-vc (#2960)
* initial copy of hbm from sdk_2009-12-11

* some more nw4hbm cleanup

* nw4hbm db mostly done

* nw4hbm snd copied from oot-vc

* nw4hbm ut copied

* nw4hbm lyt copied

* nw4hbm copied, mostly matching usa 1.0

* setup nw4hbm debug define

* fix HBMDataInfo struct

* add rvl sdk card lib
2025-12-16 16:55:07 +02:00
Jcw87 c8104b6d62 d_meter_HIO debug (#2959) 2025-12-16 16:54:05 +02:00
LagoLunatic 497aa20aa9 d_a_movie_player OK (#2958)
* Match THPAudioDecode

* Match daMP_MixAudio

* Fix weak func order

* Fix global.h
2025-12-16 16:52:28 +02:00
LagoLunatic d4859f8595 d_a_alink 100% (#2957)
* Match daAlink_c::checkHorseGetOff

* Match daAlink_c::procCanoeRowInit
2025-12-15 17:09:39 -08:00
Max Roncace bf4a07ca52 More Wii symbol cleanup (#2956) 2025-12-15 17:08:51 -08:00
LagoLunatic a11e3d6016 Fix bugs in weak_order_diff.py (#2955)
* Fix readelf path

* Improve diffing of literal/in-function data order
2025-12-15 17:08:14 -08:00
Max Roncace b9cb15ad98 Enable regHIO for Wii USA R0 (#2953) 2025-12-15 17:06:10 -08:00
Luzagar 618a3783f8 d_a_e_b +d_a_e_bi_leaf documentation (#2952)
* some e_bi documentation

* fix match issue

* fix error

* e_bi_leaf documentation
2025-12-15 17:04:20 -08:00
Carco_21 86bf768665 d_a_obj_bemos debug work (#2947)
* debug work

* PR cleanup
2025-12-15 17:02:29 -08:00
kipcode66 d7facf5956 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
TakaRikka 4e6dffff5a most of shieldD revo sdk matching (#2951)
* shieldD revo wpad done

* shieldD revo hio2 done

* shieldD revo aralt, ppcarch, gf done

* shieldD revo exi done

* shieldD revo SI done

* shieldD revo vi done

* shieldD revo mtx done

* shieldD revo GX mostly done

* shieldD revo ai/dsp done

* shieldD revo sc mostly done

* shieldD revo esp/euart/wenc mostly done

* build fixes
2025-12-13 18:21:32 +02:00
Max Roncace 25dfef320b Add configuration for GZ2J01 (Wii JPN) (#2950) 2025-12-12 22:22:03 -08:00
LagoLunatic 1b8ea3206d J3D debug work (#2949)
* J3D debug work

* Clean up JSystem GXColor ctors, remove a couple fakematches

* Update symbols.txt

* Fix res include syntax

* Remove fakematch that isn't necessary anymore

* Fix some Shield regressions
2025-12-12 21:04:03 -08:00
roeming 7e514502d2 d_a_obj_movebox debug work (#2948)
* match lots of debug for d_a_obj_movebox

* the rest of the debug work
2025-12-12 21:01:48 -08:00
Carco_21 87732304d1 d_particle debug work (#2944)
* misc work

* more work

* fixed error

* more work

* PR cleanup

* missed cleanup

* error fix

* wii fix
2025-12-12 20:54:42 -08:00
roeming 2481e184fb Link J2DWindowEX (#2946)
* Add debug for J2DWindowEx, link GCN version

* locking non-const copy ctor behind GCN check

* fix typo for define

* fix another define typo

* update bugged ctor and leave a comment
2025-12-11 15:41:44 -08:00
Max Roncace 638e30d28d Wii .text symbol fixes (#2945) 2025-12-11 15:40:05 -08:00
Max Roncace 8ad2d661a2 Clean up conditional compilation a bit (#2943) 2025-12-11 15:34:16 -08:00
Jcw87 ae4ad9f477 fix functions not returning values (#2942)
* fix functions not returning values

* implement functions that should return values
2025-12-11 15:31:44 -08:00
hatal175 2c6986f1cc Work on d_a_obj_ice_s debug (#2941) 2025-12-10 15:06:57 -08:00
LagoLunatic 50f0876194 Fakematch JASTrack::TList::seqMain (#2940)
* Fakematch JASTrack::TList::seqMain

* Add debug ifdef
2025-12-10 21:54:25 +02:00
Max Roncace 63d902bc89 Fix Wii USA v2 configuration & add file checksums (#2938) 2025-12-09 22:35:23 -08:00
LagoLunatic 26f4c5a0fe JASAramStream OK (#2937) 2025-12-09 14:52:31 -07:00
hatal175 cfded01caa Match resource.cpp with a small fake match (#2936) 2025-12-09 13:44:27 -08:00
LagoLunatic 2447d5a02a d_a_npc_cdn3 OK (#2935) 2025-12-09 22:41:11 +02:00
Carco_21 60645e1423 d_a_e_gb debug + documentation (#2916)
* cleanup and documentation

* PR cleanup
2025-12-08 20:33:55 -08:00
kipcode66 3b26aae532 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
LagoLunatic a3d6bafcdd Match JASTaskThread::run (#2934) 2025-12-08 22:12:42 +02:00
Carco_21 bff5982293 almost matching (#2933) 2025-12-08 22:12:20 +02:00
LagoLunatic 7820b4590e Match JStudio_JStage::TAdaptor_light::adaptor_do_begin (#2932) 2025-12-08 22:11:03 +02:00
Carco_21 c74ce87f5a decent work (#2931) 2025-12-08 22:10:37 +02:00
Max Roncace 1669731d6c Add missing RELs for Wii USA v0 (#2930) 2025-12-08 22:08:33 +02:00
TakaRikka 353721578d shieldD revolution dvd/nand mostly done (#2922)
* shieldD revo dvd mostly done

* shieldD revo nand mostly done

* shieldD revo fs mostly done

* shieldD revo ipc mostly done

* shieldD revo sdk pad done
2025-12-08 12:44:29 +02:00
LagoLunatic 251d49c6f1 JASBNKParser OK, Z2Audience OK (#2929) 2025-12-07 21:49:42 -08:00
roeming 07a4e6b052 match debug for D_menu_fmap2_d (#2925)
* menu_fmap2d debug progress

* match debug for d_menu_fmap2D

* fix broken function

* fix weird shield mismatch

* fix other shield mismatch

* fix suggestions

* fix func for wii version

* match func for all versions

* remove cast from saveBitLabels
2025-12-07 17:09:47 -08:00
Max Roncace e82c27fd00 Add Wii USA v2 to GH Actions (#2928) 2025-12-07 14:22:33 -08:00
Max Roncace f1bbdc5042 Fix up Wii USA v0/v2 symbols (#2927) 2025-12-07 14:22:14 -08:00
LagoLunatic 40a8b9ed54 d_a_npc_blue_ns OK (#2924)
* Match daNpcBlueNS_c::_Execute

* Cleanup loop

* d_a_npc_blue_ns OK
2025-12-07 12:26:55 -07:00
LagoLunatic cd94afafa0 Match Z2SceneMgr::sceneBgmStart (#2923) 2025-12-06 21:09:16 -08:00
kipcode66 fc31053cb6 Improving compatibility with standard cpp compiler (#2920)
* Improving compatibility with standard cpp compiler

* Add __REGISTER macro for non mwcc compatibility

* Fix for PR comments

* fix missing define for revolution

* Simplifying cSAngle conversion
2025-12-06 21:08:05 -08:00
LagoLunatic 7ac2c38caf Fix const loop invariant issues (#2921)
* Fix const loop invariant issues by defining explicit operator= for structs

* Fix J2DMatBlock weak func order
2025-12-06 14:19:09 -08:00
Max Roncace 136f6b3f40 d_kankyo debug work (#2918)
* Global: Define DEBUG as 0 if not already defined

* Clean up DEBUG-guarded code

* d_kankyo debug almost matching
2025-12-06 13:39:30 -08:00
Max Roncace a30e617e5a 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
kipcode66 9f1a648851 fix TPosition3.h (#2919) 2025-12-05 22:24:34 -08:00
LagoLunatic ae9fa8922a 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
Carco_21 e6b1f3a4f2 d_a_e_mk debug work + documentation (#2913)
* initial work

* documentation
2025-12-05 18:37:17 -08:00
LagoLunatic 4e4d89eab6 d_a_mg_rod 100% (#2914) 2025-12-05 11:52:18 -07:00
LagoLunatic 7fe9a68a9d d_a_horse 100% (#2912)
* Fix missing line numbers for debug

* Fix horse inlines and HIO

* Match daHorse_c::setEffect

* Improve a few debug matches

* Match daHorse_c::checkHorseNoMove (half fake)

* Update configure.py
2025-12-04 16:03:13 -08:00
Niklas Bauer 4d3f25d34e Resolve all "illegal jump past declaration/initializer" warnings (#2911)
* resolve illegal jump past declaration/initializer

* pr comments
2025-12-04 14:57:33 +02:00
LagoLunatic f97d334732 Debug+retail matches and clean up some fakematches (#2910)
* Debug matches

* Match daAlink_c::procGrassWhistleWait

* Match JASAramStream::channelProc

* More debug matches

* Match JAUStreamStaticAramMgr_::deleteStreamAram and bitset inlines

* Fix some fakematches

* Fix gameinfo player info not being a struct

* Update bug comments

* Fix procids in alink

* d_a_scene_exit OK
2025-12-03 15:09:56 -08:00
Carco_21 5716efc4c8 d_a_e_dn work (#2899)
* d_a_e_dn work

* PR cleanup and more documentation
2025-12-03 14:16:08 -08:00
Niklas Bauer c1861812ef d_a_npc_kn debug work (#2907)
* d_a_npc_kn debug work

* d_a_npc_kn pr comments
2025-12-03 20:30:59 +02:00
LagoLunatic e39af8edf5 Match 4 more functions (#2909)
* Match daNpcF_Lookat_c::adjustMoveDisAngle

* Match daNpc_ykM_c::reset and daNpc_ykW_c::reset

* Fakematch daNpcThe_c::main gameInfo load

* Update configure.py
2025-12-02 18:18:28 -08:00
LagoLunatic cabc703969 J3DShapeDraw and J3DSkinDeform OK (#2908) 2025-12-02 15:38:12 -08:00
Niklas Bauer 9a69fa38c7 d_a_obj_brakeeff debug equivalent (#2906)
* d_a_obj_brakeeff fmt

* d_a_obj_brakeeff debug equivalent
2025-12-02 15:33:29 -08:00
Niklas Bauer d2d45c58ee d_a_obj_damcps debug equivalent (#2904)
* d_a_obj_damcps initial

* d_a_obj_damcps guard

* d_a_obj_damcps pr comments
2025-12-02 22:44:39 +02:00
Niklas Bauer 2260191fe6 Consistent cull_box struct usage (#2905)
* consistent cullbox usage

* d_a_obj_waterPillar debug work so its not a regression
2025-12-02 20:34:19 +02:00
LagoLunatic ffc86e0412 Fix HIO load issues (#2903)
* Fix HIO load order in daHoZelda_c::searchBodyAngle

* Fix regression in daHoZelda_c::createHeap

Apparently the HIO class being constructed having an explicit ctor breaks the compiler ability to branchlessly optimize the false/true return afterwards. Without an explicit ctor the compiler is able to optimize it successfully, which breaks the match.

* Fix HIO load order in daNpc_ykW_c::setAttnPos

* Remove false version diff

* Update configure.py

* Remove old comment

* Fix alink HIO members being private

* alink: Fix HIO loads in 3 retail functions and almost all debug functions
2025-12-01 18:37:04 -08:00
Sven Elmendorp 737db261e9 Some variable names for hookshot and moved some values (#2900)
* Some variable names for hookshot and moved some values

* Revert using data.inc file
2025-12-01 16:36:09 -08:00
robojumper 6a5397e847 JStudio debug improvements (#2902) 2025-12-01 16:33:32 -08:00
LagoLunatic 1e2d9151a0 d_a_tag_kmsg OK (#2901) 2025-12-01 13:33:12 -08:00
LagoLunatic 03efb3f79a d_bg_w_kcol OK (#2897)
* Match dBgWKCol::WallCorrect

* Match dBgWKCol::ShdwDraw

* Match dBgWKCol::WallCorrectSort

* d_bg_w_kcol OK

* Fix debug asserts
2025-11-30 15:46:36 -08:00
TakaRikka a6e76c0841 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 434415337d J3DSkinDeform work (#2896)
* Match four inline asm functions with manual regalloc

* J3DSkinDeform::changeFastSkinDL: Clean up var names, slightly improve match

* Syntax

* More var names
2025-11-30 23:39:56 +02:00
Howard Luck 20e9957356 d_a_alink_HIO work (#2852)
* daAlink_c::jointControll OK

* daalink debug work

* checkpoint

* fix casting

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* remaining functions + fixes round 1

* fixes round 2

* fixes round 3

* fixes round 4

* revert getNeckAimAngle for now
2025-11-30 22:26:50 +02:00
TakaRikka 139722c731 shieldD revolution OS mostly done (#2892)
* begin revolution sdk setup

* wii rvl test

* revo OS mostly done for shieldD
2025-11-30 08:59:04 +02:00
LagoLunatic 3c1323cf0d d_a_npc_moir OK (#2894)
* d_a_npc_moir OK

* Remove old comment
2025-11-29 21:32:11 -08:00
LagoLunatic 7abe8d4a40 JASHeapCtrl OK (#2893) 2025-11-29 21:30:50 -08:00
Niklas Bauer 1be301393b d_a_obj_crvgate debug almost matching (#2880)
* Match d_a_obj_crvgate debug

* d_a_obj_crvgate remove this->
2025-11-29 14:51:45 -08:00
Max Roncace 89ccf4c7ef d_a_bg debug work + matching for retail (#2890) 2025-11-29 22:11:21 +02:00
Julian Maynes 72c37de758 D_a_e_mm_mt 99% matching (#2881)
* do draw, smbindeffect, isdelete, delete, most of heapinit

* Fix lowercase hex

* fix style

* Add spaces after if

* Do most of drop and carry

* Almost done

* Finish normal

* Get functions to mostly regalloc + a few compiler quirks.

* fix up comments

* Fix all issues and get everything to 100
2025-11-29 00:55:42 -08:00
roeming da03a43cef Adding tons of enum resource files (#2886)
* add shield assets

* add shieldD assets

* add GCN US assets

* add GCN JP asset enums

* add GCN PAL asset enums

* add WII asset enums

* add WII Rev 2 asset enums

* add all other files

* change asset include directory to force "res/" prefix

* remove wrong duplicate marks

* Allow cpp files to reference arc enums

* rename all resource files to not begin with "res_"

* update res_arc tool to use argparse

* remove Stage enums
2025-11-28 19:10:04 -08:00
LagoLunatic 9f7a71a70f J2DScreen OK (#2889)
* J2DScreen OK

* Fix clangd errors

* Remove nonmatching comment
2025-11-28 18:15:10 -08:00
LagoLunatic 59d0f49309 J3DMtxBuffer OK (#2888) 2025-11-28 18:13:17 -08:00
Max Roncace 3e8442dcbd Minor linklist.h debug fixes (#2887) 2025-11-28 18:11:57 -08:00
LagoLunatic c974c979ee d_a_passer_mng OK (#2885) 2025-11-28 11:29:09 -08:00
LagoLunatic ff550da0b2 d_map_path_dmap OK (#2884) 2025-11-28 11:28:27 -08:00
LagoLunatic 4fb3af91b8 Various small matches (#2879)
* Misc debug matches

* Fix JASBasicWaveBank weak func order

* Remove more dol2asm stuff, fix missing includes

* Some data fixes

* Update comments

* d_file_sel_warning is already OK

* Fix Z2 splits

* Fix movebox namespace

* Fix inlining issue in m_Do_ext

* Fix Z2 splits for P and J
2025-11-27 21:34:18 -08:00
Niklas Bauer a089a1d21c d_a_player checks debug work (#2878)
* Match player checks via BOOL

* PR comment

* resolve conflict
2025-11-27 21:20:22 -08:00
TakaRikka 6f96e66518 various Z2Audio / JAudio debug cleanup (#2876)
* some JAudio work

* audio cleanup checkpoint

* checkpoint more audio cleanup

* fix symbols

* more z2 cleanup

* fix regression

* fix build

* some fixes
2025-11-27 21:19:33 -08:00
Max Roncace 767caeecc3 d_a_npc_ykm debug almost matching (#2877) 2025-11-27 14:28:39 -08:00
Carco_21 f8d6c5fe1b rafrel debug almost matching (#2866) 2025-11-27 14:24:44 -08:00
Carco_21 4d4444ca18 d_a_b_mgn debug almost equivalent (#2842)
* debug almost equivalent

* PR cleanup
2025-11-27 14:22:27 -08:00
LagoLunatic 8d362b7e14 Update objdiff, fix data progress tracking (#2875) 2025-11-26 20:10:30 -08:00
Max Roncace 90133fb1cb Small d_a_mg_rod fixes (#2874) 2025-11-26 20:01:55 -08:00
Max Roncace 3080360a2a d_kankyo matching (#2872) 2025-11-26 13:52:12 -08:00
LagoLunatic 5d0da9be7c Match J3DTransformInfo::operator=, fixing several regalloc issues (#2873) 2025-11-26 14:41:10 -07:00
Niklas Bauer df1ae6898e d_a_obj_ihasi debug equivalent (#2870)
* d_a_obj_ihasi debug equivalent

* ihasiD JUT_ASSERT
2025-11-26 12:20:39 -08:00
Niklas Bauer c619b761e6 d_a_obj_carry ALL_GCN matching (#2871)
* d_a_obj_carry matching

* d_a_obj_carry::execute() debug matching
2025-11-26 19:27:50 +02:00
Max Roncace 2bff9b49b5 d_particle equivalent (#2869) 2025-11-25 20:55:01 -08:00
hatal175 e0f996e6c3 work on d_a_movie_player (#2868) 2025-11-25 20:52:22 -08:00
hev7 43e2dadc12 Link b_mgn, tbox equivalent (#2867)
* Link b_mgn

* tbox equivalent
2025-11-25 20:48:34 -08:00
Niklas Bauer d7909a7652 d_a_e_mk_bo ShieldD work (#2864)
* d_a_e_mk_bo ShieldD work

* PR comments
2025-11-25 20:19:53 -08:00
Max Roncace 9f76ba2f69 d_a_npc debug work (#2863)
* Remove d_a_npc3.cpp

This file appears to not actually be real and the asserts in its
functions all reference d_a_npc2.cpp instead.

* d_a_npc debug almost matching
2025-11-25 22:32:01 +02:00
Max Roncace 360bad3995 Clean up some fakematches, mostly around gameInfo loads (#2862) 2025-11-25 22:30:14 +02:00
LagoLunatic 7ca9ef46db d_a_mg_rod equivalent (#2865) 2025-11-25 22:29:44 +02:00
Max Roncace 9943a52a79 Move cBgS_GrpPassChk and cBgS_PolyPassChk to separate headers (#2861)
This is supported by RTTI ordering which only makes sense if these
classes are in separate headers from the dBgS_* classes.
2025-11-25 18:39:11 +02:00
Carco_21 f5e3e89512 d_a_mg_rod a little closer to matching (#2857)
* closer to matching

* build error fix

* PR cleanup
2025-11-25 18:36:25 +02:00
Carco_21 9e232b61fb Small matches/improvements (#2844)
* j2dmatblock debug work

* J2DMaterialFactory matching

* J2DPictureEx matching

* tiny work

* fixed regressions

* PR cleanup

* build error fix
2025-11-25 18:34:19 +02:00
LagoLunatic 2f2f37a734 Misc fixes (#2860)
* Misc matches

* Remove more old dol2asm stuff

* Remove dCcS::SetMass-related fakematches

No longer necessary with the PCH for some reason.

* Use attention types enum in more places

* Remove more dol2asm stuff

* Clean up matDL_dis.py
2025-11-25 18:32:34 +02:00
hev7 cd3d634133 Link npc_guard (#2859) 2025-11-24 15:30:01 -08:00
hatal175 c4df6a5771 d_a_grass Matching (#2858) 2025-11-24 15:28:20 -08:00
LagoLunatic 97c60c9092 Match 5 d_bg_w_kcol funcs (#2856)
* dBgWKCol::CaptPoly equivalent

* dBgWKCol::CaptPoly OK

* Switch s32->int for the rest of the dBgW functions just in case

This doesn't immediately help any other functions besides CaptPoly, but I suspect it could help prevent issues in the future since it's more likely to be what the original devs did.

* Debug var fix

* Match 3 more kcol funcs

* Remove unused lits

* Update nonmatching comments

* Fix ChkShdwDrawThrough
2025-11-23 22:07:35 -08:00
roeming 178191908c kcol progress (#2855) 2025-11-23 21:16:42 -08:00
YunataSavior 818bd2f0bf Some npc_ks dbg work (#2854) 2025-11-23 21:14:20 -08:00
YunataSavior 0cc9ebd724 Link npc_zra (#2853) 2025-11-23 21:10:24 -08:00
hev7 6067c05f14 Link npc_doc (#2851)
* Link npc_doc

* Remove changes causing regression in debug
2025-11-23 21:09:19 -08:00
LagoLunatic 8d53f6dd59 Fix more nonmatchings (#2850)
* Fix GetPolyIndex and GetBgIndex, fixing a couple regallocs

* Match daNpcCd2_c::checkFearSituation and daNpcCd2_c::getAnmP

* Match daAlink_c::jointControll

* Clean up float class checks

* Move float constants to global.h
2025-11-23 15:23:44 -08:00
Trueffel eaf980174f d_a_npc_guard all functions OK (#2849)
* guard about to match

* weak func order messes linking up

* improve executePath
2025-11-23 21:51:19 +02:00
Max Roncace 24c1bf1723 Clean up d_msg_unit, misc fixes for PAL and JPN (#2848) 2025-11-22 18:40:49 -08:00
hatal175 5dce13b8c6 vrbox2 debug almost matching (#2847)
* vrbox2 debug almost matching

* Putting variable declaration at the top in daVrbox2_Draw
2025-11-22 15:20:44 -08:00
Max Roncace f2ad303961 Link d_msg_class (all) and d_msg_unit (JP only), minor alink fix (#2846) 2025-11-21 21:45:29 -08:00
LagoLunatic e2fddadf32 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
Max Roncace 31621c3dac Link d_name for GCN JPN (#2843) 2025-11-21 14:27:21 -08:00
TakaRikka 726d7e22c2 npc_doc almost (#2840)
* npc_doc almost

* pr
2025-11-21 13:57:35 +02:00
maimai0254 b24b9a798c npc_grm OK (#2841)
* npc_grm OK

* uncomment debug stuff

* fix {
2025-11-21 01:47:47 -08:00
YunataSavior 73b6cd8507 Use ALL_GCN constant in configure.py (#2839) 2025-11-21 00:41:20 -08:00
YunataSavior 03f8a804fc Link e_hp (#2838) 2025-11-20 23:26:45 -08:00
Max Roncace e6a5d5c3dd Miscellaneous retail+debug fixes, link several new TUs (#2836) 2025-11-20 23:09:21 -08:00
LagoLunatic 91011befd7 Remove fake matches, fix false equivalencies, and other small matches (#2837)
* Debug matches and remove fake matches

* Fix false equivalencies, regallocs, and vtable orders

* Fix PAL splits
2025-11-20 21:17:51 -08:00
roeming 6f7457a870 add debug functionality to d_a_horse, match almost all functions (#2834)
* add debug functinality to d_a_horse, match almost all functions

* fix some wii funcs

* fix wii build
2025-11-20 14:41:52 -08:00
Carco_21 248f57b257 npc_midna linked (#2835) 2025-11-20 11:53:19 -08:00
Carco_21 e7270bf7ab d_a_kytag13 matching + small various work (#2826)
* kytag13 matching

* pr cleanup
2025-11-20 11:47:11 -08:00
Luke Street cb08a259a5 Update dtk-template & use wibo on macOS (#2829)
* Update dtk-template & use wibo on macOS

* Update to wibo 1.0.0-beta.5

* Fix implicit dependencies for pch rules
2025-11-20 01:16:44 -08:00
YunataSavior 8815bd5da9 Link npc_shoe (#2833) 2025-11-19 22:49:08 -08:00
LagoLunatic 52fb959cb4 Fix DOL name for Wii (#2832) 2025-11-19 20:29:20 -08:00
Max Roncace 105c4031f7 d_bg_w_kcol mostly finished (#2831) 2025-11-19 17:36:12 -08:00
LagoLunatic 4cf2c7e37d Misc fixes (#2830)
* Replace DANPCF_C_HACK with a better fakematch

* d_a_obj_item OK

* Fix ninja diff

* Misc debug/nonmatching fixes

* Fix ninja diff for PAL

* Fix bad PAL split
2025-11-19 14:10:03 -08:00
Max Roncace 8956be538e d_a_npc_grs matching (#2827) 2025-11-19 13:27:28 -08:00
hev7 4373bba251 d_a_npc_soldierB matching (#2828) 2025-11-19 12:53:12 -08:00
hatal175 678c1a0e70 JSUOutputStream Matching for shield (#2825)
* JSUOutputStream Matching for shield

* Fix nonmatching in JAUSectionHeap
2025-11-19 10:17:26 -08:00
Carco_21 9d325bfb29 d_a_npc_pachi_taro and d_a_npc_pachi_maro matching (#2824)
* solid progress

* almost matching

* pachi_taro matching

* pachi_maro matching
2025-11-19 10:07:35 -08:00
TakaRikka 7eff24706b add wii usa 1.0 to ci (#2823) 2025-11-19 17:28:57 +02:00
Max Roncace 7f863c069b d_a_npc_chin matching (#2822) 2025-11-18 21:10:04 -08:00
hev7 1b2fe5e2e3 d_a_npc_grd matching (#2821)
* d_a_npc_grd matching

* Fix regression

* Fix
2025-11-18 18:21:48 -08:00
hatal175 8a39ebfa8b fvb Matching (#2820)
* fvb Matching

* J2DScreen debug work
2025-11-18 18:13:35 -08:00
hatal175 158899a16d debug work on d_a_e_fb (#2819) 2025-11-18 01:34:52 -08:00
TakaRikka 638c0b968c npc_gnd finished, movie_player almost done (#2818)
* movie_player mostly done

* d_a_npc_gnd done

* fix fshop debug match
2025-11-18 01:34:34 -08:00
LagoLunatic bd2def28db 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
Carco_21 4ab97e8f26 d_a_npc_tkc matching (#2816)
* initial work

* minor work

* almost done

* evcut work

* matching
2025-11-17 20:04:53 +02:00
TakaRikka 540217c31b wii building OK / m_Do_graphic debug work (#2815)
* wii building OK + m_Do_graphic debug work

* d_meter_HIO debug cleanup

* wii m_Do_graphic stuff

* tag_attack_item OK, mirror_chain almost

* fix build

* mg_fshop matching
2025-11-17 20:01:03 +02:00
maimai0254 4350a38fe0 d_a_npc_sola OK (#2814)
* d_a_npc_sola OK

* delete NONMATCHING comment

* Fix: Add forgotten joint name
2025-11-16 17:17:43 -08:00
YunataSavior ca41270d36 Link kasi_hana, kasi_kyu. (#2813)
* kasi_mich and ashB equiv
2025-11-16 12:30:21 -08:00
YunataSavior 3fee8977c3 Link clerkb and clerkt (#2811) 2025-11-16 12:27:51 -08:00
YunataSavior d21e22f9ed npc_kn almost matching + dbg work (#2802)
* npc_kn almost matching + dbg work

* more npc_kn dbg work

* fix npc_kn select action functions

* Z2AudioMgr dbg change for taka
2025-11-15 18:40:47 -08:00
hev7 e7a610c5e2 npc_clerka matching, npc_clerkb and npc_clerkt equivalent (#2810) 2025-11-16 04:22:42 +02:00
Trueffel 8799ed141d Match remaining functions in d_menu_collect (#2809)
* match all funcs in d_menu_collect

* remove old nonmatching comments
2025-11-15 18:37:50 +02:00
hev7 fad2f41e33 d_a_npc_kyury matching (#2808) 2025-11-15 04:04:45 -08:00
hev7 2387021347 d_a_npc_pouya matching (#2806)
* d_a_npc_pouya matching

* mItemPartnerId fix
2025-11-15 04:02:24 -08:00
Trueffel 9ea1b81288 d_a_e_tt OK & linked (#2803)
* class decomped

* two funcs missing

* done

* s32 to int

* improve

* remove old nonmatching comment
2025-11-14 16:40:11 -08:00
LagoLunatic 7a1f995cff Get Shield final version building OK and add it to CI (#2807)
* Fix REL ctors splits for Shield final version

* Fix profile_lst split for Shield

* Add Shield to vscode configure task

* Add align:16 to most functions in Shield main.dol

* Start linking some TUs for Shield

* Add Shield final version to CI
2025-11-14 16:39:02 -08:00
Carco_21 0573bc517d d_a_npc_gro matching (#2805)
* initial work

* matching
2025-11-14 16:25:42 -08:00
roeming 977aee7c94 add debug functionality + close to linking hozelda (#2804) 2025-11-14 16:10:46 -08:00
Carco_21 d74c4dd66f d_a_npc_shaman matching (#2800)
* almost matching

* Make npc_shaman matching

---------

Co-authored-by: YunataSavior <yunatasavior@gmail.com>
2025-11-14 16:04:18 -08:00
Carco_21 9b32b9394e d_a_npc_theb matching (#2799)
* initial work

* almost matching

* matching

* merge stuff

* added comment about inline size
2025-11-14 16:00:15 -08:00
hev7 a0df17da2b npc_yamis, npc_yamit matching (#2801) 2025-11-14 12:32:10 +02:00
TakaRikka 3ccdb41ea9 npc_drailsol done (#2798) 2025-11-13 16:49:36 +02:00
roeming a3c76c8a7e rename variable in accordance with assert (#2797) 2025-11-12 16:45:53 -08:00
Carco_21 63093fea4a d_a_npc_passer and d_a_npc_passer2 matching (#2796)
* passer matching and passer2 init work

* passer2 matching
2025-11-11 19:58:27 -08:00
YunataSavior 70272b88f5 npc_wrestler dbg work (#2795) 2025-11-10 19:52:59 -08:00
LagoLunatic 23a1c94063 Regalloc/debug/misc fixes (#2794)
* Fix "0" asserts

* More debug and regalloc fixes

* Fix PTMF syntax for compatibility with other compilers

* Fix some fakematches, link more TUs for J/P
2025-11-10 18:25:00 -08:00
Carco_21 a02f72d8f3 d_a_npc_post matching (#2792)
* initial work

* matching

* changed draw ifdef

* enums added

* enum change
2025-11-10 18:15:17 -08:00
YunataSavior b4a08a36d0 npc_impal equivalent (#2791) 2025-11-09 18:46:24 -08:00
YunataSavior 533755fdfa Link npc_gra (#2790) 2025-11-09 15:57:00 -08:00
YunataSavior 87e651dcab Link e_po (#2789) 2025-11-09 15:30:24 -08:00
roeming 5c298bc401 D a npc gra matching debug (#2788)
* match all d_a_npc_gra functions in debug

* update all offsets to match release

* rename parameters

* add ct hack for d_a_npc_gra

* add suggestions

* fix type

* use sound enums

* fix sinit and one regswap

* fix wrong variable usage
2025-11-09 15:17:04 -08:00
LagoLunatic ba7cdd4fe9 Debug work + some retail regalloc fixes (#2787)
* Debug work + some retail regalloc fixes

* Use AUDIO_INSTANCES in places it's missing, link d_a_e_bee

* Link m_Do_machine

* Fix clang putting other includes before the pchs

* Link some more debug TUs that already match
2025-11-09 11:43:14 -08:00
YunataSavior cefde2a42c Debug myna work (#2786) 2025-11-09 11:32:48 -08:00
hatal175 885e29c359 d_a_myna linked (#2785) 2025-11-09 02:14:56 -08:00
TakaRikka 4b5277295e npcinko / myna2 done (#2780)
* npcinko done

* myna2 done

* Use sound enum

* Use FALSE instead of false when returning BOOL

* Use look mode enum

* TRUE instead of true when returning bool

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-11-09 11:20:51 +02:00
YunataSavior e49519229c Link obj_web0, obj_picture, npc_zrz (#2784)
* Link obj_web0

* Link npc_zrz

* Link obj_picture
2025-11-09 11:20:24 +02:00
YunataSavior 72cb2950a0 e_oc dbg work and cleanup (#2783)
* e_oc dbg work and cleanup

* daE_OC_c::getVisionAngle arg rename
2025-11-09 11:19:04 +02:00
YunataSavior c9bc11d470 Link obj_gra2, obj_gm (#2781)
* obj_gra2 almost linkable

* Link obj_gra2

* Link obj_gm
2025-11-08 15:58:02 -08:00
hatal175 b5092b9578 Add missing GZ2J01 links (#2782) 2025-11-08 15:56:06 -08:00
hev7 e331c37001 d_a_npc_knj matching (#2779)
* d_a_npc_knj matching

* remove casts
2025-11-07 16:51:13 -08:00
Carco_21 3981a9d359 d_a_npc_soldierA matching (#2778)
* initial work

* matching
2025-11-07 13:50:45 -08:00
Carco_21 833530b249 d_a_npc_zanb matching (#2777)
* matching

* cleanup

* added correct constructor macro
2025-11-07 13:42:18 -08:00
Carco_21 3c2ed235b3 d_a_npc_fairy matching (#2776)
* initial work

* almost done

* matching

* added correct constructor macro
2025-11-07 13:39:26 -08:00
TakaRikka 1f701cd132 npc_hoz done (#2775)
* npc_hoz done

* pr

* remove include
2025-11-07 15:26:52 +02:00
hatal175 1704a3acba d_a_obj_kuwagate OK (#2774) 2025-11-06 14:15:07 -08:00
YunataSavior 653ff8979c Misc obj linkage (#2773) 2025-11-05 19:48:31 -08:00
Max Roncace c428403198 d_a_e_sh matching (#2772) 2025-11-05 19:16:06 -08:00
TakaRikka 226325284d lv6togetrap, swpush2, tafence done (#2771)
* lv6togetrap, swpush2, tafence done

* fix jp/pal

* Use dEvtCnd_CANDEMO_e

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-11-06 03:19:01 +02:00
Carco_21 957a743742 d_a_e_yg matching (#2770)
* matching

* pr cleanup
2025-11-05 13:39:53 -08:00
Carco_21 2543ad18b6 d_a_npc_du matching (#2769)
* init work

* matching

* pr cleanup

* pr cleanup 2
2025-11-05 13:39:23 -08:00
Carco_21 936b7aa2e8 d_a_npc_bous equivalent (#2766)
* init work

* almost matching

* equivalent

* pr cleanup
2025-11-03 17:35:40 +02:00
TakaRikka 0b181f84d4 lv7bsgate, lv8udfloor, lv9swshutter done, lv7propellery almost (#2768)
* lv7bsgate, lv8udfloor, lv9swshutter done, lv7propellery almost

* fix builds

* obj_lv6egate done
2025-11-03 08:22:25 +02:00
Carco_21 453c8b9fbb matching (#2767) 2025-11-01 15:19:23 -07:00
Max Roncace 1be8e6c6c8 d_a_e_hm matching (#2764) 2025-10-31 22:04:10 -07:00
Max Roncace b0952f9818 Link several more TUs for GZ2J01 (#2765) 2025-10-31 21:22:43 -07:00
Carco_21 68514b59f7 d_a_npc_bans almost matching (#2762)
* initial work

* almost matching

* enum work

* tiny work

* nonmatching fixes - thanks Yunata!

* PR cleanup
2025-10-31 21:11:28 -07:00
TakaRikka c9838e29fa obj_lv8kekkaitrap / obj_nougu done, obj_lv7bridge almost (#2763)
* obj_lv8kekkaitrap / obj_nougu done, obj_lv7bridge almost

* kekkaitrap cleanup
2025-10-31 10:13:14 +02:00
TakaRikka 194282d2c2 obj_pdwall / obj_rw / obj_stopper2 done (#2760)
* obj_pdwall / obj_rw / obj_stopper2 done

* fix jp/pal

* Use NULL instead of 0

* Use dEvtCnd_CANDEMO_e

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-10-30 07:56:22 +02:00
TakaRikka 73927f50a9 kankyo / m_do_ext debug stuff (#2759)
* kankyo debug work

* finish draw packets
2025-10-28 05:55:46 +02:00
Carco_21 577747e228 d_a_obj_itamato & d_a_obj_kaisou matching (#2756)
* initial work

* itamato matching

* obj_kaisou matching

* pr cleanup

* fixed error

* error should actually be fixed now
2025-10-28 04:25:42 +02:00
Carco_21 54f989f16e d_a_obj_hata & d_a_obj_hb matching (#2752)
* hata matching

* hb initial work

* obj_hb matching

* fixed error

* pr cleanup
2025-10-28 04:25:15 +02:00
hev7 a61d0272a6 NPC work, obj_szbridge matching (#2757)
* Some NPC work

* Fix impal

* Hopefully fix regressions in debug

* HIO work for more NPCs

* fix regressions

* obj_szbridge matching

* Fix literals
2025-10-26 13:03:16 +02:00
roeming 6bd013741b link d_a_obj_lv6Tenbin (#2758)
* link d_a_obj_lv6Tenbin

* fix naming convention

* oops, actually fix naming
2025-10-26 06:54:57 +02:00
roeming 6ef3f87f06 link d_a_obj_lv6elevta (#2754)
* link d_a_obj_lv6elevta

* fix return

* use implicit construction
2025-10-24 04:20:04 +03:00
TakaRikka 70eefa53c7 d_a_obj_lv4CandleTag / d_a_obj_lv4EdShutter done, d_a_obj_picture almost (#2755) 2025-10-23 06:41:00 -06:00
Carco_21 9bebc819ab obj_ikada and obj_ita matching (#2753) 2025-10-23 04:48:04 +03:00
Carco_21 4a5752fe52 d_a_obj_gm almost matching (#2750)
* linked some objs

* major work

* equivalent

* almost matching

* almost matching

* PR cleanup
2025-10-23 04:39:18 +03:00
Carco_21 d6711a18c8 d_a_obj_grz_rock and d_a_obj_h_saku matching (#2749)
* matching

* h_saku initial work

* h_saku matching

* PR cleanup

* fixed header padding
2025-10-23 04:38:51 +03:00
hev7 8074d91ff1 d_name matching for PAL (#2751) 2025-10-22 03:52:02 +03:00
hev7 7d2e6ba444 d_a_npc_len matching (#2748)
* d_a_npc_len matching

* HIO

* more work on len

* d_a_midna work for PAL

* mg_rod PAL work
2025-10-21 21:37:13 +03:00
TakaRikka 9155add1f6 d_a_npc_blue_ns mostly done (#2747)
* d_a_npc_blue_ns mostly done

* d_a_obj_poCandle / d_a_obj_poTbox done
2025-10-21 21:33:59 +03:00
roeming 428a2c5447 fix build (#2746) 2025-10-19 21:49:10 +03:00
TakaRikka 850fae1aa3 m_Do_main / f_ap_game / f_op_actor debug work and misc (#2744)
* m_Do_main / f_ap_game debug stuff

* revolution sdk compatibility

* f_op_actor debug work

* rename fopAcM_SetupActor to fopAcM_ct

* fix build

* fix jp/pal splits
2025-10-19 20:30:49 +03:00
roeming 31c0f94a10 link d_a_obj_lv6FurikoTrap (#2745)
* link d_a_obj_lv6FurikoTrap.cpp

* name all fields
2025-10-19 05:13:43 +03:00
roeming c215366d9f link d_a_obj_lv6swturn (#2743)
* link d_a_obj_lv6swturn

* fix pal and jp build

* fix suggestions
2025-10-17 19:56:17 -07:00
hev7 962728ce44 d_name work for PAL (#2742)
* d_name work for PAL

* Fix regressions
2025-10-17 16:46:07 -07:00
Luzagar 9e3d968435 Some henna documentation (#2739)
* henna minor cleanup

* rename light to kankyo

* more cleanup

* pos

* more cleanup

* fix build

* final fix
2025-10-17 15:11:34 -07:00
Carco_21 86895b23c2 d_a_obj_swchain matching (#2741)
* initial

* Little more work

* matching

* updated matching versions
2025-10-17 15:09:58 -07:00
roeming 071e69e78a link d_a_obj_lv6SwGate (#2740)
* link d_a_obj_lv6SwGate

* retrigger build

* resolving suggestions
2025-10-17 18:27:09 +03:00
YunataSavior 43bf8abf48 npc_toby OK (#2733)
* npc_toby 68% done

* address ykm ykw regressions

* All npc_toby cut done + chkPassed1 fakematch

* npc_toby OK

* npc_toby some hio var rename

* npc_gnd cleanup

* npc_gnd CreateHeap and reset

* Add fakematch comment fo get_u16_Idx
2025-10-16 20:21:57 -07:00
Howard Luck da605fd792 d_a_obj_swchain WIP (#2737)
* checkpoint

* WIP

* clang format

* Missing new line

* Remove unnecessary nesting

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-10-15 04:38:32 +03:00
Carco_21 e5377068fc d_a_e_sf matching (#2734)
* Almost matching

* matching

* cleanup and variable naming

* pr cleanup
2025-10-14 18:01:24 +03:00
hatal175 d3c3fd09de d_a_obj_gadget OK (#2735) 2025-10-13 20:11:30 -07:00
YunataSavior 678fd4d8f5 obj_mirror_table OK (#2732) 2025-10-10 04:56:09 -07:00
roeming 774692fc3b Make d_a_obj_thashi equivalent (#2731)
* Make d_a_obj_thashi equivalent

* Link d_a_obj_thashi

* Adding suggestions

* formatting

* fix return
2025-10-09 18:42:24 -07:00
Carco_21 8b48bb658f d_a_e_st matching (#2730)
* initial work

* initial work

* almost matching

* action func done

* matching

* PR cleanup
2025-10-09 16:01:31 +03:00
TakaRikka 3077f6a971 knBullet / lv6Lblock done, lv6ChangeGate equivalent (#2729)
* knBullet / lv6Lblock done, lv6ChangeGate equivalent

* d_a_e_mm matching

* debug fix

* obj_kage matching
2025-10-08 18:35:58 +03:00
TakaRikka fc6c0fd88c lv4bridge / lv4prwall done (#2728)
* lv4bridge / lv4prwall

* fix jp/pal
2025-10-07 20:42:10 +03:00
hatal175 8a99c051d1 d_a_e_yh OK (#2727) 2025-10-06 20:23:08 -07:00
TakaRikka 23a6cf91cd start shield final config (#2726)
* checkpoint

* shield final half building
2025-10-06 12:48:39 +03:00
Carco_21 b3d30467bf d_a_npc_chat matching (#2725)
* initial work

* tiny change

* over half done

* got to playMotion

* got to wait function

* matching
2025-10-05 18:32:14 -07:00
YunataSavior c3cd595107 e_mk_bo OK (#2724) 2025-10-04 12:34:09 -07:00
roeming 0c058d2a2c link d_a_obj_hasu2 (#2722)
* link d_a_obj_hasu2

* fix suggestions

* move dtor to .h, move inline func to .h
2025-10-04 14:39:48 +03:00
YunataSavior db219f067f NPC str cleanup and misc for 100% linkability (#2723)
* NPC str cleanup and misc for 100% linkability

* d_msg_object equiv
2025-10-03 01:10:14 -07:00
TakaRikka 009f08f2f3 e_mk_bo almost (#2721)
* d_a_e_mk_bo almost

* cleanup
2025-10-02 20:37:03 +03:00
YunataSavior 6bef300342 minor dol fixes for linkability (#2720) 2025-10-01 20:14:06 -07:00
Shane Goodrick b6aebfa81e d_a_obj_inobone OK (#2716)
* d_a_obj_inobone OK

* Fix d_a_obj_inobone issues
2025-10-01 20:12:31 -07:00
YunataSavior 9f119e7b01 npc_moir HIO and debug cleanup (#2719) 2025-10-01 15:35:44 -07:00
YunataSavior 9a784744f2 npc_yamiD HIO and dbg cleanup (#2718) 2025-10-01 15:33:31 -07:00
YunataSavior 6dee0f28a8 d_a_obj_nagaisu OK (#2717) 2025-10-01 15:32:20 -07:00
YunataSavior c7703d1069 d_a_obj_pumpkin OK (#2715)
* Initial obj_pumpkin work

* pumpkin execute done

* d_a_obj_pumpkin OK

* Remove NONMATCHING in obj_pumpkin

* obj_pumpkin PR comments
2025-09-30 10:49:33 -06:00
TakaRikka 0520ce1757 obj_mato / obj_nagaisu (#2714) 2025-09-30 12:18:21 +03:00
TakaRikka 40e61bf913 rottrap / rotbridge done (#2713) 2025-09-28 18:40:58 -06:00
Howard Luck 143f19636b d_a_obj_swLight OK (#2712)
* checkpoint

* d_a_obj_swLight OK

* fixup symbols and splits

* put static assert back

* fixes for taka
2025-09-28 17:35:50 -07:00
Trueffel 9a97d89256 d_a_e_ge OK and linked (#2707)
* match one func and remove old comments

* d_a_e_ge matching and linked

* format files

* some docs

* try pal and jpn too

* remove comments

* merge upstream
2025-09-28 16:13:39 -07:00
YunataSavior c3e67d6820 d_a_e_fb almost matching (#2709)
* d_a_e_fb almost matching

* remove dol2asm in e_fb

* e_fb PR fixes
2025-09-28 14:02:53 -07:00
LagoLunatic 9eea9289b1 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
LagoLunatic c9a710a939 d_cc_s OK (#2710) 2025-09-28 11:42:21 -06:00
TakaRikka e90d02ca5e rafrel mostly done (#2702)
* rafrel mostly done

* npc_rafrel equivalent via fakematch (#3)

* pr fixes

---------

Co-authored-by: YunataSavior <58997725+YunataSavior@users.noreply.github.com>
2025-09-28 09:59:08 +03:00
Howard Luck 21bff2ba25 d_a_obj_ss_drink equivalent (#2708)
* d_a_obj_ss_drink equivalent

* SomeFunc -> ProcessFunc

* fixes for taka

* rm FLT_MIN

* G_CM3D_F_INF
2025-09-27 22:03:27 -07:00
LagoLunatic 5dc86158bc Fix most vtable issues (#2706) 2025-09-27 15:35:11 -07:00
LagoLunatic 54d8839d91 Remove unnecessary externs (#2705) 2025-09-27 15:30:54 -07:00
roeming 3f37bad921 Add ability to extract joint enums from bmd/bdl files (#2704)
* arc extraction will auto-create resource files

* Update enum extraction to extract joint enums

* Update enum extraction to use pathlib

* Move enum extraction to converters folder

* Added check to extract bmd file if src file is modded
2025-09-27 15:30:13 -07:00
LagoLunatic 6242aa6e84 Misc matches and fixes (#2703)
* Match mDoExt_morf_c::getPlayMode

* Misc cleanup

* Fix actor cull spheres

* Match daPy_py_c::getLastSceneSwordAtUpTime, JUTGamePad::testTrigger

* Fix improper demangling of dBgS_SphChk::SetCallback

* Fix d_camera rangef weak func order

* Match more alink_wolf funcs
2025-09-26 18:50:46 -07:00
YunataSavior 30fafe135d d_a_npc_moir almost matching (#2701) 2025-09-26 12:53:57 +03:00
YunataSavior 083cea4770 npc_seira, npc_seira2, b_gnd, ni, npc_ne OK (#2697)
* npc_seira 44% done

* npc_seira 73% done

* npc_seira matching

* npc_seira2 OK

* b_gnd OK

* d_a_ni OK

* npc_ne OK

* daAlink_c::setSyncHorse OK
* Thanks robojumper!

* Update daNpc_Seira_c::getType
2025-09-25 17:47:58 -07:00
Howard Luck 80626def07 d_a_obj_spinLift OK (#2696)
* d_a_obj_spinLift equivalent

* fixes
2025-09-25 17:43:56 -07:00
LagoLunatic dbf6abeb90 Use composition instead of inheritance for most f_op classes (#2700) 2025-09-25 12:57:15 -07:00
Max Roncace 27507a6030 Add symbols for RZDE01_02 (Wii US v2) (#2698) 2025-09-25 12:55:00 -07:00
Max Roncace ca55fe6cc9 Link some newly-matched TUs for PAL and JP (#2699) 2025-09-25 10:27:15 -06:00
TakaRikka 9a2df2162b d_debug_camera mostly done (#2695)
* d_debug_camera mostly done

* update some alink demo stuff

* some misc debug stuff
2025-09-25 18:20:46 +03:00
hev7 4635fcb666 d_a_npc_lud matching (#2694)
* d_a_npc_lud matching

* Fixes
2025-09-25 18:20:14 +03:00
Carco_21 749de8e36d d_a_npc_gwolf matching (#2693)
* almost matching

* matching

* PR cleanup
2025-09-24 19:51:23 +03:00
Howard Luck f932405784 d_a_obj_smgdoor OK (#2692)
* d_a_obj_smgdoor OK

* symbols

* dEvtCnd_CANDOOR_e

* remove else
2025-09-24 19:51:01 +03:00
Trueffel 46b1f0ee71 d_a_e_hz (Tile Worm) OK and linked (#2691)
* all funcs matched

* TU linked and some docs

* apply enums
2025-09-24 19:50:36 +03:00
hatal175 169c7ae4a2 JHOSTIO almost comletely linked (#2689) 2025-09-23 20:27:24 -06:00
Carco_21 68b4af5eab d_a_npc_pachi_besu matching (#2690)
* initial work

* matching. still need to finish enums

* cleanup
2025-09-23 21:20:25 +03:00
Carco_21 aecc7c8420 d_a_npc_ins equivalent (#2685)
* initial work

* over half done

* almostish done

* equivalent

* PR cleanup
2025-09-23 06:13:36 -07:00
TakaRikka 125f2325a5 cleanup event stuff (#2688)
* cleanup event stuff

* fix debug
2025-09-23 14:20:38 +03:00
Howard Luck 47abdf82fa d_a_obj_crvlh_up OK (#2687)
* d_a_obj_crvlh OK

* rm padding

* rm test.cpp
2025-09-22 19:16:21 -07:00
Carco_21 7bc5a82a39 matching (#2686) 2025-09-22 22:53:03 +03:00
Howard Luck c51868e48b d_a_obj_crvlh_down OK (#2683)
* d_a_obj_crvlh_down OK

* symbols

* Minor fixes

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-09-22 14:45:02 +03:00
YunataSavior 59a5da9180 d_a_npc_coach & obj_crope OK (#2684)
* d_a_npc_coach OK

Closes #758

* Revert "d_a_npc_coach OK"

This reverts commit fef808621fc6900fced660611038f29abafd4d63.

* d_a_npc_coach OK

Closes #758

* d_a_obj_crope OK

Closes #903
2025-09-22 14:44:43 +03:00
YunataSavior c756345026 d_a_e_zh OK (#2682)
Closes #584
2025-09-22 03:30:25 +03:00
Howard Luck d78a8571d1 d_a_obj_ndoor OK (#2681)
* d_a_obj_ndoor matching

* fixes for taka
2025-09-22 03:29:25 +03:00
hatal175 e82806047b d_a_obj_kznkarm OK (#2678)
* d_a_obj_kznkarm OK

* d_a_title GZ2P01 Matching

* More GZ2P01 Matches

* d_s_name matching for PAL

* d_msg_scrn_light Matching for PAL

* d_menu_fishing Matches on PAL

* d_file_sel_info Matches on PAL

* d_a_npc_cd Matching on PAL

* d_error_msg Matches on PAL

* d_cam_param matches as is on PAL

* Fix PAL JSystem and Z2AudioLib splits/symbols

* Aligning the rest of TUs to compile on all GC versions
2025-09-21 13:26:34 -06:00
YunataSavior e17e537ea0 d_a_obj_bemos OK (#2680)
Dummy functions to the rescue!

Closes #907
2025-09-21 11:01:49 -06:00
Howard Luck 9a19ec0c13 d_a_obj_bemos equivalent (#2679)
* checkpoint

* e_wb changes

* checkpoint

* small fix

* d_a_obj_bemos equivalent

* add comment, fix other version symbols

* fixes for hatal
2025-09-21 19:00:19 +03:00
Max Roncace c97dbcea0e Add splits for RZDE01_02 (Wii US v2) (#2675) 2025-09-20 15:01:09 -07:00
YunataSavior affd5d7f95 d_a_obj_kanban2 & more OK (#2674)
* d_a_obj_kanban2 OK via gameInfo fakematch

Closes #1001

* Mark d_a_obj_kanban2 as matching for JP

* Mark npc_jagar as Matching

* d_a_tag_allmato OK via gameInfo fake match

* d_a_obj_wchain OK

* d_a_obj_so OK

---------

Co-authored-by: Max Roncace <me@caseif.net>
2025-09-20 22:09:06 +03:00
Max Roncace 72236276a6 Mark d_a_e_gm as matching again (#2677) 2025-09-20 21:32:51 +03:00
Max Roncace da9b062f58 Link newly matched TUs from #2673 for JP (#2676) 2025-09-20 17:43:49 +03:00
Carco_21 5f70650ba2 d_a_e_gm matching (#2669)
* initial work

* Almost matching

* missed formatting changes

* matching

* changed to equivalent

* PR cleanup, now matching
2025-09-20 03:44:42 +03:00
Carco_21 7089e1893d d_a_npc_grz matching (#2664)
* initial work

* Over half done

* equivalent

* not sure what the issue is?

* matching

* PR cleanup
2025-09-19 21:48:19 +03:00
Carco_21 2c39c2105f Various regalloc fixes and linking (#2673)
* some d_a_b TUs matching

* reworked d_a_b_ob enums

* d_a_b_oh seems to be linking fine

* d_a_b_oh actually not good (i think), but npc_zrc matching

* d_a_b_oh is indeed matching!

* d_a_cam_param linked

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-09-19 21:38:54 +03:00
YunataSavior 9306edbec6 d_a_obj_lv6bemos2 OK (#2672)
* d_a_obj_lv6bemos2 OK

* Forgot to remove NONMATCHING comment

* Link d_a_obj_lv6bemos2 for JP

---------

Co-authored-by: Max Roncace <me@caseif.net>
2025-09-19 21:32:38 +03:00
Max Roncace 11ebeb3fe0 Link all oustanding US-matched TUs for JP (#2671) 2025-09-19 21:32:05 +03:00
roeming 818dec837f Add python file to create enums from .arc files (#2670) 2025-09-18 17:55:18 -07:00
hatal175 14e54f78c7 d_a_e_wb actually matches (#2668)
* d_a_e_wb actually matches

* wb - matches for JP as well
2025-09-18 17:11:57 -07:00
hatal175 1aeb2a0c54 d_a_e_wb equivalent (#2667)
* Some work d_a_e_wb

* Match more in e_wb

* d_a_e_wb equivalent
2025-09-17 18:09:59 -06:00
hev7 d912d85322 Link already matching TUs for PAL (#2666) 2025-09-17 17:06:57 -07:00
Max Roncace fe5e8aff98 More miscellaneous TU improvements (#2665) 2025-09-17 15:01:59 +03:00
Carco_21 2106c56f60 d_a_npc_aru matching (#2660)
* foundational work

* lots of work

* matching

* cleanup

* fixed error with status enum

* PR cleanup
2025-09-16 14:54:08 -07:00
TakaRikka e931b1fb79 swpush5 / bhashi done (#2663)
* swpush5 done

* bhashi done

* gptaru done
2025-09-16 17:31:37 +03:00
Max Roncace a8136496c7 Miscellaneous TU fixes (#2662) 2025-09-15 02:53:53 -07:00
YunataSavior 9fd28c507f d_a_obj_kago OK (#2661)
* d_a_obj_kago OK

* Mark d_a_obj_kago as matching for JP

---------

Co-authored-by: Max Roncace <me@caseif.net>
2025-09-15 02:49:35 -07:00
Carco_21 e3353f2c56 d_a_npc_zelro matching and some npct's linked (#2649)
* npc_zero matching and some other npcts cleaned and linked

* debug fix

* okay actual debug fix... i hope

* this isnt funny anymore

* please

* this should fix things

* added JP matching to zelR and zelRo

* added attention flag enum
2025-09-15 02:44:07 -07:00
Carco_21 9b4b9003c4 d_a_npc_raca matching (#2648)
* initial work

* most functions matching

* matching

* PR cleanup
2025-09-15 02:40:19 -07:00
LagoLunatic ae6f4242b3 Finish renaming subtype to argument (#2659) 2025-09-14 13:17:54 -07:00
YunataSavior bd49d7b918 d_a_midna equivalent (#2658) 2025-09-14 13:02:05 -07:00
YunataSavior 275135fe54 d_a_e_fm and d_a_e_hzelda OK (#2657)
Closes #598, Closes #541
2025-09-14 10:58:12 +03:00
Trueffel 5e71d98324 d_a_obj_stairBlock OK (#2656) 2025-09-14 10:56:51 +03:00
TakaRikka e0c9d16332 npc_kkri done (#2655) 2025-09-14 10:55:16 +03:00
YunataSavior f0d0818cef d_a_e_dt and d_a_e_fk OK (#2654) 2025-09-13 23:02:56 +03:00
Max Roncace dbbd102db5 Improve several almost-matching TUs (#2653) 2025-09-13 23:02:28 +03:00
YunataSavior 4c9ce97f3e d_a_e_gb and d_a_obj_bosswarp OK (#2652)
* d_a_e_gb and d_a_obj_bosswarp OK

* fix e_gb and obj_bosswarp symbols

* mark e_gb and obj_bosswarp as OK for JPN

* Remove nonmatching comment

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-09-13 14:11:05 +03:00
TakaRikka f91257cc62 npc_kakashi done (#2651) 2025-09-13 00:29:20 +03:00
TakaRikka 8a3a6d2997 npc_tkj done (#2647) 2025-09-12 15:03:17 +03:00
Max Roncace 8420c94854 Minor JSystem/Z2Audio fixes (#2650) 2025-09-11 23:39:23 -07:00
Max Roncace a6c3c20b23 Add PCH for JSystem (#2645) 2025-09-11 13:20:45 -07:00
Max Roncace 4b729b0f65 Minor d_a_alink improvements (#2646) 2025-09-10 21:10:04 -07:00
hatal175 84eed3ea68 Some work on d_a_e_wb (#2639)
* Some work d_a_e_wb

* Match more in e_wb
2025-09-09 21:45:07 -07:00
Carco_21 bfeb1c048b d_a_e_zm matching (#2638)
* initial work

* a little more work

* matching

* pr cleanup

* changed 'subtype' to 'argument'

* fixed debug error
2025-09-10 01:53:13 +03:00
Max Roncace 1e50c25671 Link more JSystem/Z2Audio TUs for JP (#2644) 2025-09-10 01:52:19 +03:00
Carco_21 8cbe4a2b5c d_a_obj_ornament_cloth matching (#2643)
* initial work

* More work. Also just realized I pushed TU work to my main fork lol

* about halfway through

* matching
2025-09-10 01:36:38 +03:00
Max Roncace aaaa0ba464 Fix filename capitalization for RZDE01_00 checksums (#2640) 2025-09-09 15:11:31 -07:00
Carco_21 e9c8ce0665 d_a_obj_kshutter matching (#2635)
* fixed branch issue

* matching

* fixed debug error

* pr cleanup
2025-09-09 19:51:44 +03:00
TakaRikka e7477b5048 Lv4railwall / lv4sand / lv4slidewall done. fix wii build (#2637)
* lv4railwall / lv4sand / lv4slidewall done and wii build fix

* fix Mtx** parameters

* add some notes about wii compiler version

* Remove dol2asm include

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-09-09 17:30:32 +03:00
Max Roncace abd44397c6 Fix up JP splits and link a lot more TUs (#2636) 2025-09-09 17:15:45 +03:00
Max Roncace 54f5a36264 d_camera almost matching (equivalent) (#2633) 2025-09-08 14:41:07 +03:00
YunataSavior 3d5108e4df d_a_npc_taro Matching (#2634)
* d_a_npc_maro Matching

* mark npc_taro as equiv for JPN
2025-09-08 12:03:53 +03:00
TakaRikka 52aa5f677f scannon / scannon_crs / scannon_ten done (#2632)
* scannon done

* scannon_crs done

* scannon_ten done

* pr

* attention debug stuff

* attn flags

* fix build
2025-09-08 12:01:20 +03:00
Carco_21 cbe5aaca8f d_a_obj_kag matching + some weak order fixes (#2631)
* obj_kag matching. Also fixed weak func order in e_ww and e_sm

* adding matching for JP
2025-09-06 11:59:41 +03:00
Carco_21 c612bfbca8 d_a_e_ww equivalent (#2629)
* equivalent

* cleanup
2025-09-05 14:07:02 +03:00
Carco_21 f8a6d0df95 d_a_e_sm equivalent (#2627)
* solid work

* equivalent

* tiny work

* fixed error

* include fix

* fixed debug build
2025-09-05 14:00:56 +03:00
TakaRikka b45a089e15 some J3D/misc cleanup (#2628)
* some j3d cleanup

* begin using uintptr_t

* j3dgraphbase cleanup

* j3dgraphanimator cleanup
2025-09-04 17:56:59 +03:00
Carco_21 ee8b843996 d_a_obj_crvfence matching (#2622)
* equivalent

* kasi_mng_c work

* class work and create function work

* kasi_mng_c is matching

* little more work

* almost matching

* enums defined

* kasi_hana almost matching

* more mich work

* mich almost matching

* kyu almost matching

* potentially fixed issue

* Now maybe good?

* Should be fixed now

* PR Cleanup

* Over 50% done

* matching

* pr cleanup
2025-09-03 22:23:46 +03:00
Carco_21 0adb35db8d d_a_npc_tks almost matching (#2616)
* initial work

* one more demo func left

* almost matching

* almost matching

* pr cleanup
2025-09-03 22:23:04 +03:00
Max Roncace 410af867fe Link a lot of TUs for JP version (#2625) 2025-09-03 10:45:29 +03:00
hatal175 4583ec80a4 Add missing include to e_ww (#2626) 2025-09-03 00:39:44 -07:00
Max Roncace adb62e947b d_camera improvements (part 1) (#2623)
* Rename several dCamera_c fields

* Refactor mWork to generic buffer instead of union

* d_camera match improvements

* Implement several dCamera_c functions

* Remove d_camera.h from PCH

The symbol names in d_camera indicate that this header wasn't
included in the PCH (as they're compiled directly in d_camera.cpp).
2025-09-03 10:32:02 +03:00
Stbn-antier a11c22af67 Work on e_ww (#2618) 2025-09-03 10:27:58 +03:00
LagoLunatic ea82ed4931 Update objdiff (#2624) 2025-09-02 15:19:08 -07:00
Max Roncace 8c94dc8608 Add hacks to fix PCH .data causing fake mismatches with decompctx (#2606) 2025-08-30 20:57:35 -07:00
Howard Luck abf5f59f0c d_a_obj_beamos / d_a_e_wb WIP (#2620)
* WIP

* daE_WB_Draw

* checkpoint

* more matches

* checkpoint

* fixes

* fix debug build

* fix daObjBm_c alignment

* fixes for luz

* fixes for hatal

* manual spacing changes

* run clang-format

* move header back
2025-08-31 01:11:52 +03:00
TakaRikka 2036d9c34f obj_geyer and obj_ktOnFire done (#2619)
* obj_geyer and obj_ktOnFire done

* pr
2025-08-31 01:10:43 +03:00
TakaRikka 5d46f1fc22 d_a_e_ai done (#2617)
* d_a_e_ai done

* pr
2025-08-30 10:31:22 +03:00
Max Roncace c1615cdfff d_a_npc_ykw almost matching (#2613) 2025-08-30 10:30:51 +03:00
Carco_21 179189c758 d_a_npc_kasi_hana, mich, and kyu work (#2610)
* equivalent

* kasi_mng_c work

* class work and create function work

* kasi_mng_c is matching

* little more work

* almost matching

* enums defined

* kasi_hana almost matching

* more mich work

* mich almost matching

* kyu almost matching

* potentially fixed issue

* Now maybe good?

* Should be fixed now

* PR Cleanup
2025-08-29 22:40:14 +03:00
hatal175 6313a96d49 d_a_obj_kbox matching (#2615)
* Align dKy_darkworld_check with debug return type

* d_a_obj_kbox matching

* Revert "Align dKy_darkworld_check with debug return type"

This reverts commit f0b9e5f8fb251bb1b3a6acd13c0550bec2c9a310.
2025-08-29 04:33:35 -07:00
TakaRikka e8ea87e5c2 d_a_e_fk equivalent (#2614)
* d_a_e_fk equivalent

* pr
2025-08-29 01:25:36 +03:00
TakaRikka 5ce5bf20cc npc_kn mostly done (#2609)
* npc_kn mostly done

* fix shieldD

* pr fixes

* weak func fixes
2025-08-28 13:49:24 +03:00
LagoLunatic 956e84b0e7 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 e09f037fa3 Fix ShieldD REL hash checks (#2611) 2025-08-27 20:52:40 +03:00
LagoLunatic 0579f4acef Fix d_a_ykgr retail regalloc and mostly match on debug (#2608)
* d_a_ykgr OK

* Fix sqrtf for shield

* Fix pch caps
2025-08-27 01:40:48 -07:00
LagoLunatic a945ef4fb8 Fix all REL module names for ShieldD (#2607) 2025-08-25 18:46:46 -07:00
LagoLunatic ee6c527735 Add PAL, JPN, and Shield versions to CI, update dtk-template (#2605)
* Add ShieldD to GitHub CI build

* Update dtk-template, add support for CI caching

* Fix PAL and JPN not building on Linux due to case sensitive file paths

* Add PAL and JPN to GitHub CI build

* Fix bad copy paste
2025-08-25 17:45:28 -07:00
Max Roncace 22573bf7a6 Fix incorrect PCH being used in some framework objects (#2604) 2025-08-25 15:34:26 -07:00
Max Roncace b309e0cf57 Miscellaneous improvements (#2603) 2025-08-25 15:33:44 -07:00
hatal175 19c8b6995e d_a_obj_mie OK (#2602) 2025-08-25 01:34:08 -07:00
Max Roncace 46a11f2cd7 Several more TUs matching (#2601) 2025-08-24 20:56:20 +03:00
YunataSavior 0abe859c28 npc_maro Matching (#2600) 2025-08-24 11:48:55 +03:00
Max Roncace 513816ce5c Add a precompiled header for RELs (#2597) 2025-08-24 09:52:08 +03:00
Carco_21 8a30030dc7 equivalent (#2599) 2025-08-22 23:47:36 -07:00
TakaRikka 0a8679f92e d_a_mg_rod mostly done (#2598)
* d_a_mg_rod mostly done

* pr
2025-08-23 08:58:29 +03:00
Carco_21 aec2c0987d d_a_npc_grmc equivalent (#2596)
* initial work

* cleanup

* added anm enums

* added joint enum

* updated configure.py

* Indentation

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-08-22 11:49:23 +03:00
Carco_21 15d0094170 d_a_npc_fguard equivalent (#2595)
* almost matching

* Still have inline issue

* equivalent

* updated configure.py

* fixed broken match
2025-08-22 11:29:44 +03:00
Carco_21 731d8be59e d_a_npc_grc equivalent (#2594)
* initial work

* d_a_npc_grc equivalent

* Fixed configure.py change

* pr cleanup
2025-08-22 10:52:59 +03:00
hatal175 ef75333735 d_a_obj_msima OK (#2593) 2025-08-21 04:07:41 -07:00
Carco_21 7a87b3132f d_a_e_bi & d_a_obj_fw equivalent (#2592)
* initial work

* d_a_obj_fw equivalent

* d_a_e_bi equivalent

* Update d_a_obj_fw.cpp

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-08-19 18:48:40 +03:00
Max Roncace aaa9cb22ef d_a_e_yr equivalent (#2591) 2025-08-19 09:19:01 +03:00
hatal175 a23984e74d d_a_obj_lv4chandelier equivalent (#2590) 2025-08-17 19:06:17 -07:00
Carco_21 b0d08c5188 d_a_obj_swpush equivalent (#2589)
* initial work

* Create method done

* tiny work

* more work

* swpush equivalent
2025-08-17 19:00:03 -07:00
Carco_21 39ed9ff5d9 d_a_npc_tkj2 equivalent (#2588)
* initial work

* Small work

* tkj2 equivalent

* cleanup

* PR cleanup
2025-08-17 23:09:19 +03:00
Carco_21 712025f67a d_a_e_dd equivalent (#2587)
* initial work

* took out unneeded nonmatching comment

* d_a_e_dd equivalent

* pr cleanup
2025-08-15 22:37:19 +03:00
Carco_21 0e8d06c29f d_a_npc_doorboy equivalent (#2581)
* initial work

* doorboy equivalent

* Update d_a_npc_doorboy.h

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-08-15 13:01:44 +03:00
Max Roncace 41c72dc6d9 d_a_e_hp almost matching (#2585) 2025-08-15 12:50:49 +03:00
TakaRikka a6802bf7a2 e_db equivalent (#2586)
* e_db equivalent

* pr fix
2025-08-15 09:26:09 +03:00
hatal175 8b93a8761f d_a_obj_kita OK (#2582)
* d_a_obj_kita OK

* Remote ctor and dtor
2025-08-13 12:53:43 -07:00
TakaRikka c724824c5c d_a_obj_key / d_a_obj_keyhole / d_a_obj_smallkey (#2584)
* obj_key equivalent

* obj_keyhole done

* obj_smallkey done

* use macro
2025-08-13 22:47:18 +03:00
Carco_21 3de1f91acb d_a_obj_ito work (#2583)
* All functions worked on

* padding cleanup
2025-08-13 11:57:56 +03:00
Carco_21 4ade12fd64 d_a_npc_coach work (#2579)
* data and class member work

* inline work

* got to SetCoachBlazing

* work on some calc functions

* all functions worked on

* pr cleanup

* more pr cleanup

* coach header cleanup
2025-08-12 20:54:06 +03:00
hatal175 58a6d8d793 d_a_obj_gomikabe OK (#2580)
* d_a_obj_gomikabe OK

* Remove unneeded include
2025-08-11 17:18:42 -07:00
Max Roncace ddf4fc0677 Misc framework fixes (#2578) 2025-08-10 23:22:28 -07:00
TakaRikka 8785882261 e_hb equivalent / some pal work (#2577)
* some pal work

* e_hb equivalent

* update config
2025-08-10 10:27:45 -06:00
hatal175 0b99197789 d_a_e_nz equivalent (#2575)
* Ignore report files on search

* d_a_e_nz equivalent

* PR cleanup
2025-08-09 15:33:52 -07:00
Carco_21 cc9325cea2 d_a_npc_moir almost equivalent (#2569)
* initial work

* more work

* got to waittype0

* All functions worked on

* cleanup

* took out unneeded nonmatching comments

* PR Cleanup

* Use actor enum

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-08-09 20:48:35 +03:00
Max Roncace 0759e31e84 d_bg_w_kcol work (#2576) 2025-08-08 20:19:46 -07:00
Carco_21 e0b1fe92b1 ChkBit comments and enum work (#2571)
* Jagar cleanup

* saru work

* e_fm work

* gob enum added

* gob cleanup

* gob anm enums

* dComIfGs_isEventBit comments added

* More bit work and besu enum work

* Maybe fixed the issue?
2025-08-08 21:39:26 +03:00
Carco_21 9fbbec4326 d_a_npc_yamid equivalent (#2574)
* initial work

* more work

* d_a_npc_yamid equivalent

* configure.py updated

* comment indent fix
2025-08-08 21:38:38 +03:00
Carco_21 2dc324cf94 d_a_npc_kolin and d_a_npc_kolinb equivalent (#2573)
* data work

* About 50% done on functions

* Cut func work

* d_a_npc_kolin equivalent!

* kolin enums added

* kolinb equivalent!

* PR cleanup
2025-08-08 17:12:15 +03:00
Max Roncace 156d2b24c3 Misc. J3D improvements (#2570) 2025-08-08 12:56:18 +03:00
Max Roncace 57c9d64308 Misc. framework/d/ improvements (#2572) 2025-08-06 21:46:07 -07:00
hatal175 ee608ceaac d_a_obj_fallobj OK (#2568)
* d_a_obj_fallobj OK

* J3DMatBlock equivalent
2025-08-05 18:10:43 -07:00
Max Roncace d629cc383b d_a_e_bg matching (#2567) 2025-08-05 11:37:09 +03:00
Carco_21 e49ed1213d d_a_npc_ykm work (#2566)
* initial work

* got to cut functions

* Tiny work

* All functions worked on

* took out param dtor

* naming work

* cleanup

* pr cleanup
2025-08-04 22:25:39 +03:00
Carco_21 3caf422cb8 d_a_npc_shad work (#2561)
* class structure work

* some Create() work

* Action functions worked on

* Work on EvCut functions

* All functions worked on

* Fixed nonmatching comments

* enum work

* param_c symbol now showing

* Fixed some symbol generation (thanks Yunata!)

* fixed nonmatching comments i forgot to take out

* delete ;

* npc_shad fixes

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
Co-authored-by: YunataSavior <yunatasavior@gmail.com>
2025-08-02 20:13:30 +03:00
Tom 91e84ecd33 d_a_obj_crvhahen matching (#2564)
* useHeapInit 73%, ctor and dtor 100%, Delete 94%, wallcheck 43%, create 42%

* useHeapInit 100%

* Wall_Check 85%

* Update fields and return types

* crvhahen Wall_Check and Execute 100

* update createheap return type for matching

* crvhahen create 70 draw 57

* Revert change that made useHeapInit non-matching

* delete matching, .rodata 91

* create 94%

* crvhahen draw 85%

* setBaseMtx matching

* CheckCull and checkViewArea 100%

* rename & cleanup fields

* cleanup fields, rodata. hahenset and hahen_hakai partials

* cleanup and remove SECTION_RODATA

* d_a_obj_crvhahen OK

* cleanup and fix various inconsistancies or issues

---------

Co-authored-by: StuckInLimbo <tbosley@limbofps.net>
2025-08-01 20:32:39 +03:00
TakaRikka 8410e4fd40 mvstair done, obj_tks equivalent (#2565)
* mvstair done, obj_tks equivalent

* fix
2025-08-01 20:29:50 +03:00
Max Roncace e0bbad1f3f Miscellaneous match improvements (#2562) 2025-07-31 02:19:46 -07:00
hatal175 418e39356d daObjBATTA Equivalent (#2563) 2025-07-31 02:17:20 -07:00
Stbn-antier c32789eb60 d_a_bd Matching (#2560)
* Matching daPoFire

* Adressed comments

* Matching text

* Some cleanup

* Adressed review comments, added CUT_TYPE_NONE in cut type enum
2025-07-30 20:27:05 +03:00
YunataSavior ec9e4cf268 d_a_e_sb Matching (#2559)
* d_a_e_sb 50% complete

* d_a_e_sb 71% done

* d_a_e_sb matching

* address PR comments
2025-07-30 20:26:19 +03:00
TakaRikka 2b873ea144 kbrg/obrg done (#2558)
* kbrg done

* obrg done

* cleanup
2025-07-30 20:25:42 +03:00
hatal175 a1b63ae940 d_a_obj_thdoor,d_a_obj_zra_rock OK (#2557)
* d_a_obj_thdoor,d_a_obj_zra_rock OK

* Remove ;
2025-07-26 12:34:45 -07:00
TakaRikka 9844494edf e_bs equivalent (#2556) 2025-07-26 10:48:53 +03:00
hatal175 70a1741977 d_a_obj_twGate Matching (#2555)
* d_a_obj_twGate Matching

* d_a_obj_volcbom OK
2025-07-25 17:44:23 -07:00
Carco_21 585670f2b1 d_a_e_sw equivalent (#2554)
* starting work

* Almost all functions worked on

* TU is equivalent

* Enums added

* padding cleanup

* PR cleanup
2025-07-25 16:09:12 +03:00
TakaRikka 53d9f65e0d e_sm2 equivalent (#2553)
* e_sm2 equivalent

* fix
2025-07-24 22:45:36 +03:00
hatal175 aae19575bf Work on d_a_obj_toby (#2552)
* Work on d_a_obj_toby

* d_a_obj_tatigi matching

* Deleted automatic ctor and dtor
2025-07-24 12:19:48 -07:00
Carco_21 aeed67dcf5 d_a_e_bug equivalent (#2540)
* Tiny work

* d_a_e_bug equivalent

* took out unnecessary include

* fixed broken match

* PR cleanup

* OS_REPORT fixed

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-07-24 20:05:32 +03:00
Max Roncace 7d6c8ef3e5 d_a_e_kr equivalent (#2549) 2025-07-24 09:13:55 +03:00
Stbn-antier c5584cc6c0 Matching d_a_obj_poFire (#2551)
* Matching daPoFire

* Adressed comments
2025-07-23 17:03:44 +03:00
Max Roncace 295cc46d34 Fix sound IDs in d_a_kago (#2550) 2025-07-23 10:52:59 +03:00
Carco_21 7d4ec88f56 d_a_e_zh almost equivalent (#2548)
* work on create function

* a bit more work

* almost all functions worked on

* All functions worked on and enums added

* Fixed header brief

* Can't figure out the last three small issues
2025-07-22 23:55:54 +03:00
TakaRikka ea1c649eb1 ebu equivalent (#2547) 2025-07-22 15:28:42 +03:00
Max Roncace d528862dd0 d_a_obj_tobyhouse equivalent (#2546) (#2543)
Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-07-22 15:22:58 +03:00
hatal175 69aaeeeda6 d_a_obj_tobyhouse equivalent (#2546) 2025-07-20 16:57:50 -07:00
hatal175 d9ac8d7e3f d_a_obj_togeTrap OK (#2545)
* d_a_ibj_togeTrap OK

* Fix broken matches
2025-07-20 01:45:51 -07:00
Max Roncace 541501d781 d_a_balloon equivalent (#2542) 2025-07-19 22:20:19 +03:00
Max Roncace c4ec1a5402 d_a_kago almost matching (#2541) 2025-07-19 18:12:27 +03:00
YunataSavior db1cab527a d_a_e_ymb equivalent (#2544) 2025-07-19 09:37:15 +03:00
Carco_21 4df9e0ca12 d_a_e_ymb work (#2538)
* initial work

* functions over halfway decompiled

* ymb almost equivalent

* PR cleanup
2025-07-19 01:38:03 +03:00
hatal175 9f65aa92a7 d_a_obj_tombo OK (#2537) 2025-07-18 14:41:46 -07:00
YunataSavior 6bc4faa5f7 d_a_obj_brg matching (#2539) 2025-07-18 10:53:45 +03:00
Stbn-antier 522f06458d d_a_e_po 99% Matching (#2517)
* anm_init and nodeCallBack, need to review nodeCallBack as weird code

* First pass on class, 86% match

* Cleanup for PR, still work to do

* Solve error after pull

* Clangd format

* Adressing PR comments

* Update l_HIOInit

* Fix debug building, 60% match on debug :')
2025-07-15 23:35:50 +03:00
Carco_21 c0717e1e56 d_a_obj_lv6bemos2 and d_a_obj_lv6bemos almost equivalent (#2527)
* initial work

* All but one function equivalent

* Missed comment that needed to be removed

* initial work

* got to CreateHeap

* d_a_obj_lv6bemos almost equivalent
2025-07-15 23:05:04 +03:00
Max Roncace 5c86d6d26f Minor d_a_alink fixes (#2534) 2025-07-15 23:00:01 +03:00
TakaRikka 70f0ed7ef7 d_a_e_cr / d_a_e_cr_egg done (#2536)
* d_a_e_cr_egg done

* e_cr done
2025-07-15 22:57:21 +03:00
hatal175 aeeaf91054 d_a_ppolamp OK (#2535)
* d_a_ppolamp OK

* Remove include

* d_a_tag_Lv6Gate OK
2025-07-15 01:28:47 -07:00
YunataSavior 07403fe796 Pragma hack to de-inline the daNpcF_c ctors (#2523)
* A means of de-inlining the daNpcT_c ctors

* Refactor daNpcF_c hack into variable, and add for more attempted NPC Fs

* Address Taka's comment and add npc_wrestler to hack
2025-07-14 18:59:19 +03:00
Max Roncace 339c00f4f2 Use explicit zero-comparison in dBgS_Acch::Chk* functions (#2533) 2025-07-13 19:40:04 -07:00
hatal175 cd99fa788c d_a_obj_wooden_statue OK (#2532) 2025-07-13 19:38:49 -07:00
YunataSavior 9c48ec0905 Major npc wrestler cleanup (#2531) 2025-07-13 18:08:32 +03:00
hatal175 d4768a864e Various cleanups and matches (#2530) 2025-07-12 13:57:59 -07:00
TakaRikka 898b4fa3e3 e_ws mostly done (#2529) 2025-07-12 22:40:29 +03:00
Max Roncace 92e14253ca d_a_npc_zelda equivalent (#2528) 2025-07-11 22:00:18 +03:00
hatal175 b83ff69589 Improve various partially matched TUs (#2526) 2025-07-11 01:11:21 -07:00
Carco_21 a11f8f6375 d_a_npc_wrestler work (#2521)
* Starting work

* First few functions worked on

* Data work

* So many inlines!!!

* All sumou action functions worked on

* started demo work

* demo functions worked on

* Almost all functions worked on

* Work on some param function stuff

* all functions worked on

* Cleanup and enums

* Hopefully fixed d_a_alink breaks

* PR cleanup
2025-07-11 02:35:38 +03:00
Carco_21 b67414ef1a d_a_demo00 work (#2525)
* Initial work

* Got to ke_control

* draw function

* tiny execute work

* all functions worked on

* PR cleanup

* Took out static keyword for dDemo_setDemoData
2025-07-11 02:16:30 +03:00
Max Roncace 3de6b37edf d_a_obj_katatsumuri matching (#2524) 2025-07-10 00:36:02 +03:00
YunataSavior f03814b07b Major d_a_npc_kn cleanup (#2522) 2025-07-07 00:20:00 -07:00
YunataSavior 31ad64105a d_a_e_rd and d_a_e_rdy equivalent (#2520)
* d_a_e_rd equivalent

* mark e_rd as equivalent in configure py

* Change pointer names

* d_a_e_rdy: e_rdy_tkusa equivalent

* d_a_e_rdy: demo_camera and daE_RDY_Execute matching

* Forgot to remove NONMATCHING from daE_RDY_Execute

* d_a_e_rdy equivalent
Thanks very much, Hyenate!
2025-07-07 01:04:03 +03:00
YunataSavior 2a8e8ebbfc d_a_obj_magLiftRot matching (#2519)
* beautify_anm_data v2.0

* d_a_obj_magLiftRot matching
2025-07-06 03:14:00 -07:00
hatal175 45e969e77e d_a_obj_bhbridge equivalent (#2518) 2025-07-06 03:11:36 -07:00
YunataSavior 712c880710 d_a_npc_besu equivalent (#2510)
* beautify_anm_data v2.0

* d_a_npc_besu 50% done

* d_a_npc_besu 70% done

* d_a_npc_besu until wait + indent fix

* d_a_npc_besu equivalent!

* Mark d_a_npc_besu as equiv in configure py
2025-07-06 03:07:33 -07:00
hatal175 a41de30a24 d_a_myna equivalent (#2516) 2025-07-03 20:50:31 -07:00
hatal175 ffa8e9bb9a d_a_obj_ice_l matching (#2515) 2025-07-02 19:31:21 -07:00
hatal175 9d8f4dc719 d_meter2_info equivalent (#2514)
* d_meter2_info equivalent

* Match daMP_Reader

* d_a_e_fs equivalent
2025-07-01 18:29:51 -07:00
hatal175 5b86769442 d_a_arrow matching (#2513)
* d_a_arrow matching

* d_a_demo_item Matching

* Change e_ba_class class to hold fopEn_enemy_c
2025-06-30 15:24:21 -07:00
TakaRikka 227cf2353a some more wii tests/improvements (#2512)
* some more wii tests/improvements

* merge Z2AudioCS changes
2025-07-01 01:17:50 +03:00
hatal175 214cfce7f6 d_a_bg_obj equivalent + misc (#2509)
* d_a_bg_obj equivalent + misc

* More Z2LinkMgr Matches
2025-06-29 20:38:04 -07:00
Carco_21 844a554a3b Anm enum work (#2511)
* Added enums for b_gg, b_gos, and b_mgn

* Added enum for d_a_b_tn (might have more work for it)

* b_yo and b_zant enum work

* more enum work

* fixed mgn match break
2025-06-30 01:50:11 +03:00
Carco_21 aff8180fce d_a_e_rd work (#2506)
* Work on create function

* More create work

* Work on useHeapInit

* anm_init work

* got to some of the action functions

* got to damage function

* Got to damage_check

* got through about half of demo_camera

* work on execute function

* Finished functions. Added animation enum (still needs work)

* Finished functions. Added animation enum (still needs work)

* variable name cleanup

* Took out comment that i forgot to remove

* More cleanup

* PR cleanup and enum work

* Even more enum work

* Ever so slight more enum work

* Took out padding that could removed

* forgot to remove ;
2025-06-29 23:04:49 +03:00
Hyenate 751df9d8f8 d_a_obj_mhole Matching (#2503)
* d_a_obj_mhole Matching

* Update daObjMHole_HIO_c field names

* Update d_a_obj_mhole.cpp

Made requested fixes to d_a_obj_mhole.
2025-06-29 00:34:18 +03:00
YunataSavior c88632cffd d_a_obj_gra2 equivalent (#2502)
* d_a_obj_gra2 equivalent

* Address PR comments
2025-06-28 20:52:51 +03:00
YunataSavior c5eeeda337 beautify_anm_data v2.0 (#2508) 2025-06-28 14:55:20 +03:00
Max Roncace 6eb1f72383 d_a_obj_hakai_ftr matching (#2507) 2025-06-28 01:47:00 +03:00
Max Roncace cb2c3744eb d_a_obj_hakai_brl matching (#2504) 2025-06-27 23:13:48 +03:00
TakaRikka 79c56b2548 add wii usa rev0 support (#2505)
* wii usa rev0 dol building ok

* wii dol cleanup

* some wii tests

* most rels building
2025-06-27 13:14:58 +03:00
Max Roncace 028c07d47d d_a_obj_kamakiri matching (#2501) 2025-06-26 23:23:48 +03:00
Max Roncace 5bdf8bb50e m_Do_ext almost matching (#2500) 2025-06-26 18:10:50 +03:00
Łukasz Starzyk 6ae7bb47dc New matches in d_camera_c (#2498)
* dCamera_c::blureCamera matching

* store progress

* camera store matching (regalloc)

* setEventRecoveryTrans matching

* matched currentEvCamera and runEventRecoveryTrans

* Fix
2025-06-24 21:51:18 +03:00
hatal175 384558830a Almost fix all nonmatching in d_a_e_gb (#2499) 2025-06-23 18:44:51 -07:00
TakaRikka ac0c208cad cstaF / obj_rope_bridge done, cleanup obj_dust (#2497)
* d_a_cstaF done

* d_a_obj_rope_bridge done

* obj_dust

* e_ga done
2025-06-24 00:40:16 +03:00
YunataSavior 4278b8ad8d Further beautify anm data param handling (#2496) 2025-06-21 21:22:44 -07:00
YunataSavior 4f2f3b2a2a daE_DN_Execute equivalent (#2495) 2025-06-22 01:00:29 +03:00
TakaRikka 90a6389223 d_a_e_gi equivalent (#2494)
* d_a_e_gi equivalent

* fix
2025-06-21 15:29:03 +03:00
hatal175 e43b660038 Improve some J2DPictureEx matches (#2493)
* Improve some J2DPictureEx matches

+ other minor debug improvements

* Fix JASTrack::channelStart
2025-06-21 03:47:24 -07:00
Carco_21 7025de1c9c d_a_e_mf equivalent and d_a_e_dn work (#2492)
* Tiny start on d_a_obj_gra2

* Initial work

* Solid work done

* More work

* work on some rolling functions and deme camera

* Almost all functions worked on

* All functions worked on

* Fixed some BaseNpc functions I broke

* PR Cleanup

* PR cleanup part 2

* Worked on create function

* Worked up to search_bomb

* Work on various action functions

* Almost all functions worked on

* d_a_e_mf equivalent

* Started copying over to d_a_e_dn

* d_a_e_dn almost equivalent, e_mf cleanup

* somehow accidentally took out something from gra2 in a previous commit

* Fixed data layout issue in d_a_e_dn

* PR cleanup

* Took out fopen_enemy_c inheritance
2025-06-21 00:14:52 +03:00
LagoLunatic ac06966414 Add more J3D_ASSERTs (#2491)
* Fix debug build

* Add more J3D_ASSERTs

* Move J3DShapeMtx to correct header for assert

* Add VSCode task for ninja changes_all
2025-06-19 23:41:43 -07:00
Max Roncace 25d13c76e4 d_bg_w_kcol work (#2490) 2025-06-19 23:40:53 -07:00
TakaRikka 0a899a404e fix GC JPN dol splits / d_a_npc_prayer mostly done (#2488)
* jmessage cleanup pass

* more JMessage cleanup

* d_msg_class cleanup

* fix a bunch of gc jpn dol splits

* d_a_npc_prayer pretty much equivalent
2025-06-18 11:05:44 +03:00
LagoLunatic 23cba4d117 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
Carco_21 5a13ca438a d_a_e_gb work (#2486)
* Starting work

* Over halfway done

* Work on action and damage functions

* Almost equivalent

* PR cleanup
2025-06-16 16:41:00 +03:00
Carco_21 ba4ea76d4d d_a_obj_gra2 work (#2482)
* Tiny start on d_a_obj_gra2

* Initial work

* Solid work done

* More work

* work on some rolling functions and deme camera

* Almost all functions worked on

* All functions worked on

* Fixed some BaseNpc functions I broke

* PR Cleanup

* PR cleanup part 2
2025-06-16 16:40:16 +03:00
YunataSavior bb008ca9cf Improve beautify anm data (#2487) 2025-06-16 11:36:22 +03:00
hatal175 1a189d3d95 Work on d_a_obj_flag3 (#2485)
* Work on d_a_obj_flag3

* Fix JASBasicWaveBank::incWaveTable

* Match JASBNKParser::Ver0::createBasicBank
2025-06-15 15:38:08 -07:00
Max Roncace 9b50fd55c2 d_a_npc_tk equivalent (#2483) 2025-06-13 16:40:18 +03:00
TakaRikka 288a08b798 cleanup/doc JMessage / d_msg_class (#2484)
* jmessage cleanup pass

* more JMessage cleanup

* d_msg_class cleanup
2025-06-13 15:33:33 +03:00
hatal175 4cf11063f6 d_a_obj_flag2 equivalent (#2480)
* d_a_obj_flag2 equivalent

* flag2 cleanup
2025-06-10 19:22:05 -07:00
YunataSavior 932f67e05c d_a_npc_ks equivalent (#2481) 2025-06-10 19:19:55 +03:00
Howard Luck 5ec7e42c2d d_a_npc_kn work (#2274)
* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* fixups

* check

* fixes 2

* fixes 3

* fixes 4

* fixes 5

---------

Co-authored-by: pheenoh <pheenoh@macmini.local>
Co-authored-by: pheenoh <pheenoh@macmini.lan>
2025-06-08 21:01:18 +03:00
Max Roncace 1a7b14537c d_a_obj_kbacket matching (#2479) 2025-06-07 19:42:23 +03:00
Carco_21 3318b5e936 Continued monkey work (monkey business if you will) - Monkey-related TUs (#2469)
* Initial work

* Work on ori2 and others

* Work on npc_ks_home

* Work on npc_ks_demo_022

* Chugging through

* Started on demo_camera

* More demo_camera work

* 51% equivalent

* General cleanup

* Fixed compile error in d_a_e_mk

* Small d_a_e_mk fix

* d_a_e_fs fix

* PR cleanup

* Started work on d_a_obj_sw

* d_a_obj_sw work

* Small fixes

* d_a_obj_so work

* d_a_obj_so almost equivalent and small work on d_a_npc_ks

* Work on npc_ks_guide_00

* Work on guide functions

* 80% matching

* Almost have all functions worked on

* All functions worked on

* Initial d_a_npc_saru work

* Tiny bit more work

* daNpc_Saru almost matching

* fixed array issue

* obj_kago work

* d_a_obj_kago almost matching

* sare_npc brief fix

* PR cleanup
2025-06-07 19:41:01 +03:00
TakaRikka 372d782282 d_a_b_gg equivalent (#2478)
* b_gg equivalent

* clean up b_gg

* cleanup float literal
2025-06-07 17:37:27 +03:00
YunataSavior 09fdb3ece2 d_a_npc_maro equivalent (#2439)
* Initial d_a_npc_maro work

* d_a_npc_maro 17% matching

* d_a_npc_maro 28% done

* d_a_npc_maro 38% done

* d_a_npc_maro 57% done

* daNpc_Maro_c::cutArrowTutorial done....

* d_a_npc_maro: dcomifgp_getattention returns ptr now....

* d_a_npc_maro 98% matching

* d_a_npc_maro equivalent

* address d_a_npc_maro PR comments
2025-06-07 01:20:54 -07:00
Max Roncace 23bee3b523 d_a_e_dk matching (#2476) 2025-06-06 08:16:44 +03:00
hatal175 357de95e41 d_a_obj_flag Matching (#2477)
* d_a_obj_flag Matching

* Formatting
2025-06-05 15:17:38 -07:00
hev7 2671e02784 d_a_npc_moi work (#2471)
* d_a_npc_moi work

* Fix broken match
2025-06-05 12:16:20 +03:00
TakaRikka 992e323ade e_gs / e_is done (#2474)
* e_gs done

* e_is done
2025-06-03 23:36:09 +03:00
Max Roncace 12ee8c9fb7 d_a_npc_henna equivalent (#2473) 2025-06-03 23:31:22 +03:00
hatal175 5272152efa d_a_obj_sakuita Matching (#2472) 2025-06-02 21:13:17 -07:00
hatal175 588b20679d Sakuita rope Matching (#2470)
* Change dComIfGp_getAttention to return a pointer

* d_a_obj_sakuita_rope Matching
2025-06-01 20:36:19 -07:00
hatal175 8e91607e55 Fix reference of temporary variable (#2468) 2025-06-01 20:33:37 -07:00
Niklas Bauer 2b56ec02be d_a_obj_sw Equivalent (#2467)
* d_a_npc_ks equivalent

* d_a_npc_ks fmt
2025-05-31 20:43:07 +03:00
Arnaut Scholten 2835276bfe d_a_obj_laundry_rope Matching (#2464)
* Add create implementation

* Add create_init

* Almost all matching

* Full match

* Matching laundry rope

* Cleanup

* Fix PR comments
2025-05-31 20:42:17 +03:00
TakaRikka 7b550fafb5 d_a_npc cleanup (#2466)
* d_a_npc first cleanup pass

* more d_a_npc cleanup
2025-05-31 15:18:54 +03:00
Carco_21 4c4370b03c d_a_obj_sw work (#2465)
* Initial work

* Work on ori2 and others

* Work on npc_ks_home

* Work on npc_ks_demo_022

* Chugging through

* Started on demo_camera

* More demo_camera work

* 51% equivalent

* General cleanup

* Fixed compile error in d_a_e_mk

* Small d_a_e_mk fix

* d_a_e_fs fix

* PR cleanup

* Started work on d_a_obj_sw

* d_a_obj_sw work

* Small fixes
2025-05-31 02:12:03 -07:00
hatal175 e678f448f6 Fix shieldD build (#2463) 2025-05-31 02:00:46 -07:00
Carco_21 bc94559904 d_a_npc_ks work (#2461)
* Initial work

* Work on ori2 and others

* Work on npc_ks_home

* Work on npc_ks_demo_022

* Chugging through

* Started on demo_camera

* More demo_camera work

* 51% equivalent

* General cleanup

* Fixed compile error in d_a_e_mk

* Small d_a_e_mk fix

* d_a_e_fs fix

* PR cleanup

* Started work on d_a_obj_sw
2025-05-30 13:49:24 +03:00
Hyenate 6fd5560738 d_a_obj_magne_arm Matching (#2462)
* d_a_obj_magne_arm Matching

* Formatting
2025-05-30 13:43:59 +03:00
TakaRikka e8e36445ba cleanup d_meter2_info / little JMessage work (#2460)
* d_meter2_info cleanup

* parseBlock_next matching
2025-05-28 14:04:30 +03:00
Niklas Bauer 9a98863aff d_a_e_rdb Equivalent (#2459)
* d_a_e_rdb equivalent

* d_a_e_rdb fmt
2025-05-27 22:25:17 +03:00
YunataSavior 0f3dc461e7 Continued cleanup of d_ev_camera functions (#2458) 2025-05-27 02:50:32 -07:00
meintte c9ee3d4861 d_a_obj_takaraDai matching (#2457) 2025-05-27 02:47:15 -07:00
Carco_21 c94fe2280a d_a_e_rdb (King Bulblin) work (#2452)
* Started on d_a_e_rdb

* Small work on damage_check

* Work on demo_camera and started on execute function

* All functions worked on

* PR cleanup
2025-05-27 02:45:55 -07:00
TakaRikka 0e35bbddb9 d_menu_dmap mostly done (#2456)
* d_menu_dmap mostly done

* d_npc_lib equivalent

* m_Do_printf matching
2025-05-25 23:29:53 +03:00
Max Roncace de30e871af d_a_e_yd equivalent (func order) (#2455) 2025-05-25 23:23:41 +03:00
TakaRikka cad890035e e_rb equivalent (#2454)
* erb done

* erb cleanup
2025-05-23 13:47:26 +03:00
LagoLunatic 0212d1d18e Update dtk-template (#2453)
* Update dtk-template

* Fix debug build

* Fix d_event_debug includes

* Progress reports: Enable function relocation diffing (data_value)

* Fix some diffs

* Fix a few more diffs

* More fixes
2025-05-22 22:25:06 -07:00
Max Roncace 3c2a99e701 d_a_mg_fish matching (#2450) 2025-05-22 16:22:16 +03:00
Carco_21 15463d89bf Very small d_a_e_mk work and d_a_b_bq fix (#2451)
* Started work on d_a_e_mk

* demo work

* All functions worked on

* PR cleanup

* Added some fopAc_ac_c casting - Almost equivalent

* Implemented no inheritance and fixed demo_camera_start regression

* PR cleanup

* fixed demo_camera_end switch cases & fixed bug in d_a_b_bq

* fixed demo_camera_end switch cases & fixed bug in d_a_b_bq

* Remove unnecessary semicolon

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-20 20:47:48 +03:00
hev7 84c616d6ff d_a_npc_impal work (#2449)
* d_a_npc_impal work

* Address review comments
2025-05-19 23:56:11 +03:00
YunataSavior 9ffb52027a Debug and various d_ev_camera fixes (#2448) 2025-05-19 18:40:57 +03:00
Carco_21 75443954d4 d_a_e_mk almost equivalent (#2446)
* Started work on d_a_e_mk

* demo work

* All functions worked on

* PR cleanup

* Added some fopAc_ac_c casting - Almost equivalent

* Implemented no inheritance and fixed demo_camera_start regression

* PR cleanup
2025-05-18 02:09:36 +03:00
TakaRikka d1a5f8d71c cleanup d_msg_flow (#2447) 2025-05-17 19:56:20 +03:00
Niklas Bauer 165095b3d9 d_a_e_warpappear Equivalent (weak func order) (#2444)
* d_a_e_warpappear equivalent

* d_a_e_warpappear fmt
2025-05-16 23:39:54 -07:00
Carco_21 9aa56d5599 Work on d_a_e_warpappear (#2436)
* demo_camera work

* Work on d_a_e_warpappear

* PR cleanup
2025-05-17 02:22:06 +03:00
Carco_21 a1e8748031 Work on d_a_e_mk - beeg monkey :) (#2441)
* Started work on d_a_e_mk

* demo work

* All functions worked on

* PR cleanup
2025-05-17 02:20:53 +03:00
Lachlan Watson df8d6655a3 d_a_obj_nameplate matching (#2445)
* d_a_obj_nameplate equivalent

* Address review comments d_a_obj_nameplate matching
2025-05-16 17:22:14 +03:00
Niklas Bauer d86fc591f4 d_a_e_df Equivalent (func order) (#2440)
* d_a_e_df first pass

* d_a_e_df second pass

* d_a_e_df equivalent

* d_a_e_df debug final

* d_a_e_df comments

* Fix dEvtCnd_CANDEMO_e usage

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-16 17:03:36 +03:00
YunataSavior fe0c894daa Used dbg rom to fix some mismatched functions in d_a_ep (#2442) 2025-05-16 15:59:12 +03:00
Joaquin Royer c3660c3fe0 obj_brakeeff_class Matching (#2430)
* Laid out obj_brakeeff_class members

* Matched daObj_Brakeeff_Draw

* obj_brakeeff::action almost matching

* brakeeff_Delete matching

* daObj_Brakeeff_Execute matching

* work on obj_brakeeff_1

* Matched action and brakeff1

* obj_brakeeff_create almost matching

* d_a_obj_brakeeff Matching

* d_a_obj_brakeeff additional cleanup

* Revert line deleted

* Fix tab indentation

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-15 11:06:51 +03:00
Stbn-antier 3c79fdd2b9 d_a_npc_fairy_seirei Equivalent (#2438)
* Prepare pulling main

* 100% match, equivalent only

* Remove line change

* Adressed review comments and clang formatting
2025-05-15 10:53:43 +03:00
Hyenate 958916a690 d_a_obj_ganonwall2 Matching (#2437)
* d_a_obj_ganonwall2 Mathcing

* d_a_obj_ganonwall2.cpp formatting

* d_a_obj_ganonwall.cpp formatting
2025-05-15 00:10:55 +03:00
Carco_21 c7e1b04bc4 d_a_np_seid equivalent (minus rodata oddity) (#2435)
* d_a_np_seid equivalent (minus rodata oddity)

* Updated configure.py

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-13 18:03:42 -07:00
Carco_21 e682f6597b d_a_npc_seic almost equivalent (#2432)
* Data work and fopacmsetup

* d_a_npc_seic almost equivalent

* Now equivalent and configure.py updated
2025-05-13 22:45:26 +03:00
TakaRikka 8f97cd9e4a obj_kanban2 equivalent (#2434)
* kanban2 equivalent

* some kanban2 doc

* fix some fake padding issues
2025-05-11 22:10:49 +03:00
Niklas Bauer 792dd6077a d_a_npc_cd Equivalent (#2433)
* d_a_npc_cd fmt

* d_a_npc_cd equivalent?

* d_a_npc_cd cleaner

* d_a_npc_cd pr
2025-05-11 02:16:56 -07:00
Carco_21 773c0ad60f d_a_npc_cd work (#2429)
* Work on create function

* General work

* Pull request cleanup

* Remove unnecessary semicolon

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-09 23:28:43 +03:00
Niklas Bauer efcf241825 d_a_npc_seib Equivalent (weak func order) (#2431)
* d_a_npc_seib fmt

* d_a_npc_seib equivalent
2025-05-09 18:22:33 +03:00
Niklas Bauer a7d280711e d_a_b_tn Equivalent (func order) (#2428)
* d_a_b_tn fmt

* d_a_b_tn first pass

* d_a_b_tn second pass

* d_a_b_tn minor cleanup

* d_a_b_tn equivalent

* d_a_b_tn cleanup

---------

Co-authored-by: YunataSavior <yunatasavior@gmail.com>
2025-05-09 01:52:22 +03:00
Carco_21 a9c97810bb d_a_npc_seib almost equivalent (#2425)
* Work on create function

* d_a_npc_seib mostly finished

* Pull request cleanup

* Extra new line removed

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-09 01:45:10 +03:00
robojumper 6f4fae57da jstudio-object OK (#2427)
* jstudio-object checkpoint

* jstudio-object OK

* Small debug improvements
2025-05-08 18:06:38 +03:00
TakaRikka 5eeb1ef50e obj_yousei equivalent / bullet done (#2426)
* obj_yousei equivalent

* d_a_bullet done
2025-05-08 14:30:05 +03:00
YunataSavior eddbe73928 d_a_b_ds and d_a_e_vt equivalent (#2424) 2025-05-07 20:06:19 +03:00
Trueffel 38c42522d5 decompile a few enemy classes (#2423) 2025-05-06 17:32:23 -07:00
Carco_21 df8f49f422 More d_ev_camera work (#2422)
* Work on fixedFrameEvCamera

* Work on stokerEvCamera

* Small work

* Cleanup and started on transEvCamera

* Work on watchActorEvCamera

* Work on gameOverEvCamera and other cleanup

* Implemented mWork pointer logic where needed

* Small work on useItem0EvCamera

* Work on bSplineEvCamera

* work on twoActor0EvCamera function and cleanup

* Work on transEvCamera

* Cleanup

* Work on possessedEvCamera

* Work on fixedFramesEvCamera & started on digHoleEvCamera

* All functions have been at least somewhat worked on

* Further general work and cleanup
2025-05-06 17:30:19 -07:00
soruh 885981cd0b d_a_cstatue Matching (#2419)
* d_a_cstatue

* fix includes in d_com_inf_game

* remove todos

* create daCstatue_TYPE enum

* name fields and add enums

* fix procCopyRodSwingInit

* apply suggestions
2025-05-05 19:56:03 +03:00
Niklas Bauer 8d167fc32f d_a_e_sg Matching (#2421)
* d_a_e_sg first pass

* d_a_e_sg equivalent

* d_a_e_sg matching

* d_a_e_sg cleanup

* d_a_e_sg comments
2025-05-05 15:44:46 +03:00
meintte 30799716df d_a_obj_lv6SzGate matching (#2420) 2025-05-05 15:33:17 +03:00
TakaRikka 6637765454 e_md / coach2D done (#2418)
* e_md / coach2D done

* Update d_a_e_md.cpp

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2025-05-04 17:52:18 +03:00
TakaRikka 211e5f13c7 canoe done (#2417)
* d_a_canoe done

* fix debug
2025-05-03 10:33:31 +03:00
YunataSavior 5302ec4555 Fix debug build for fixedFrameEvCamera while also getting some overall matching (#2415) 2025-05-02 00:37:15 +03:00
TakaRikka 476c893475 l7demo_dr, l7low_dr, l7op_demo_dr done / hozelda almost (#2414)
* l7demo_dr, l7low_dr, l7op_demo_dr

* hozelda mostly done
2025-05-02 00:36:02 +03:00
Carco_21 497c9c49de d_ev_camera work (#2412)
* Work on fixedFrameEvCamera

* Work on stokerEvCamera

* Small work

* Cleanup and started on transEvCamera

* Work on watchActorEvCamera

* Work on gameOverEvCamera and other cleanup

* Implemented mWork pointer logic where needed

* Small work on useItem0EvCamera

* Work on bSplineEvCamera

* work on twoActor0EvCamera function and cleanup

* Work on transEvCamera

* Cleanup
2025-04-30 15:46:15 -07:00
YunataSavior 430dc32da9 Utility script 'beautify_anm_data.py' to assist getting started with d_a_npc TUs (#2413) 2025-04-27 21:06:44 -07:00
YunataSavior 7e06b18a2a d_a_npc_bou Equivalent (#2411)
* Initial d_a_npc_bou work

* d_a_npc_bou 34% done

* d_a_npc_bou 56% matching

* DONE d_a_npc_bou cutWildGoat

* d_a_npc_bou 76% matching

* d_a_npc_bou equivalent

* Mark d_a_npc_bou as Equivalent in configure(dot)py
2025-04-27 22:46:32 +03:00
TakaRikka 657ea58023 d_a_bg mostly matching. update version symbols / add platform macros (#2410)
* d_a_bg mostly matching

* update version symbols from new dtk

* add version platform macros

* small fix
2025-04-25 20:53:30 +03:00
Carco_21 0be38784ce d_a_b_tn work (#2408)
* Initial Work

* Initial Work Part 2!

* First few functions done

* work on some demo and execute functions

* Work on AttackH Functions

* Work on more execute functions

* d_a_b_tn close to finished

* Pull request cleanup and damageCheck work
2025-04-23 11:40:55 -07:00
hatal175 cfb614e8b2 d_menu_letter equivalent (#2407) 2025-04-23 11:39:12 -07:00
TakaRikka 556bfc958c d_menu_dmap_map equivalent / update dtk-template (#2409)
* d_menu_dmap_map equivalent

* update dtk-template
2025-04-23 10:08:13 +03:00
TakaRikka d3bf501777 e_gob equivalent (#2406)
* work on e_gob

* gob work

* d_a_e_gob equivalent
2025-04-22 09:04:26 +03:00
Viktor Jacklin 1b88eae26d d_a_obj_dmelevator fully matching (#2404)
* d_a_obj_dmelevator partially matching

Logic in functions should all be matching, data is not matching

* d_a_obj_dmelevator matching

* Cleaned up code in d_a_obj_dmelevator.cpp

Should make the code a bit more readable

* Further cleanup of d_a_obj_dmelevator.cpp

This should address the feedback from the pull request review

---------

Co-authored-by: ItsNiklas <nikbau2000@gmail.com>
2025-04-22 09:01:35 +03:00
Niklas Bauer bbabe0cc7d d_a_e_ms Equivalent (#2405)
* d_a_e_ms equivalent

* d_a_e_ms search_dokuro
2025-04-21 17:30:40 +03:00
Niklas Bauer 2e10e625d3 d_a_e_tk_ball Matching (#2402)
* d_a_e_tk_ball matching

* d_a_e_tk_ball cleanup

* d_a_e_tk_ball comments
2025-04-20 18:05:58 -07:00
hatal175 b2d665c911 d_msg_class mostly equivalent (#2403) 2025-04-20 17:46:09 -07:00
meintte 9194774985 d_a_obj_goGate matching (#2401)
* d_a_obj_goGate matching

* use UNK_REL_DATA, fix inline and multVec
2025-04-20 10:40:41 +03:00
YunataSavior 05d97500f8 Debug work for d_a_e_rdy to get 0.10% GCN progress (#2390)
* Some dbg work for d_a_e_rdy to get a tenth of % matching. Still some regalloc issues remain

* Change '#ifndef DEBUG' to '#if VERSION != VERSION_SHIELD_DEBUG' per Taka's request
2025-04-19 21:56:47 +03:00
hev7 f63b2db2f9 d_a_npc_uri almost matching (#2400)
* d_a_npc_uri almost matching

* Fix various issues

* Fix
2025-04-19 14:35:06 +03:00
Niklas Bauer c5f9d8dd9f d_a_e_tk2 Matching (#2399)
* d_a_e_tk2 first pass

* d_a_e_tk2 matching

* d_a_e_tk, d_a_e_tk2 cleanup
2025-04-18 16:57:52 -07:00
hatal175 0ab8dc2519 Daswc (#2398)
* swball cleanup

* daSwc00_c OK

* Revert change in configure - we'll handle rel/dol changes in seperate PR
2025-04-17 16:23:05 -07:00
TakaRikka f08e883783 alink data cleanup (#2397) 2025-04-16 23:03:00 +03:00
Carco_21 fe2b2ee0e8 d_a_e_ms work (#2394)
* First work

* More general work

* Damage Work

* Work on action function

* Last few untouched functions worked on

* Pull request cleanup
2025-04-16 23:01:52 +03:00
hatal175 b5e932c493 A Little j3d work (#2396) 2025-04-15 14:09:31 -07:00
TakaRikka 59ff71c355 e_fm equivalent (#2395) 2025-04-15 11:16:22 +03:00
Niklas Bauer c1845e9e09 d_a_e_tk Matching (#2393)
* d_a_e_tk first pass

* d_a_e_tk second pass

* d_a_e_tk matching

* d_a_e_tk cleanup

* d_a_e_tk comments
2025-04-14 21:05:22 -07:00
LagoLunatic f891887626 d_stage cleanup (#2392) 2025-04-13 20:54:57 -07:00
hatal175 3df5c7bb42 Various alignments to debug + matching TUs (#2391) 2025-04-13 11:55:52 -07:00
Arnaut Scholten 417922b5c3 d_a_obj_laundry Equivalent (#2387)
* Decompile first laundry methods

* Cleanup setNormalClothPos

* Fix rodata and implement more functions

* Full mapping

* Move create to inline method

* Cleanup

* Mark class as equivalent

* Change rodata padding

* Rename joint members

* More renames and cleanup

* Redefine mAttr

* Cleanup

* Update includes
2025-04-12 05:54:53 -07:00
LagoLunatic b52d288cd0 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
hatal175 cc3e0856bf Misc Matches using debug (#2388) 2025-04-11 14:54:08 -07:00
Niklas Bauer 0b50e106cc d_a_obj_crvgate Matching (#2385)
* d_a_obj_crvgate equivalent

* d_a_obj_crvgate matching

* d_a_obj_crvgate comments
2025-04-11 04:56:18 -07:00
hatal175 c7eb18a8bd Work on d_a_npc_taro (#2386) 2025-04-10 16:42:52 -07:00
YunataSavior 3d2942960d d_a_e_ym, d_a_e_oc, and d_a_npc_hanjo equivalent, d_a_npc_ashB work (#2368)
* d_a_e_ym, d_a_e_oc, and d_a_npc_hanjo equivalent, d_a_npc_ashB work

* Updates to PR based on feedback, plus fix debug build
2025-04-10 16:24:46 +03:00
Caroline Madsen c6f76e7240 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 6672817e41 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
Max Roncace 396a464cc7 d_a_bg_obj almost matching (#2382) 2025-04-08 18:20:21 -07:00
Carco_21 8e55b794a0 d_a_npc_zelR almost matching (#2380)
* Initial work

* Generak work

* Almost matching

* Pull request cleanup
2025-04-08 18:18:19 -07:00
Stbn-antier 32173fa27e d_a_obj_sekizoa Equivalent (#2379)
* Rough class structure, start of work

* First easy methods, 10% match

* Various progress, 27% match

* Progress on sekizoa, 43% match

* Progress on Sekizoa, need to pull SekiDoor changes

* First pass on all functions, 80% match

* 96% match, starting cleanup before last stretch

* Cleanup, 99% match

* Code formatting

* 100% match, builds on equivalent

* Adressed review comments
2025-04-08 00:26:01 -07:00
LagoLunatic 6c51708b8c JStudio object-actor OK (#2381)
* Fix debug build

* object-actor OK
2025-04-07 15:36:51 -07:00
hev7 c3fccc2877 d_a_obj_lv6TogeRoll matching (#2377)
* d_a_obj_lv6TogeRoll almost matching

* Various improvements

* Matching

* unk rel data
2025-04-07 22:04:01 +03:00
LagoLunatic c0e111b081 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
TakaRikka 54dd764096 GCN pal / jpn support, some debug work (#2375)
* d_save debug cleanup / d_s_menu debug

* gameinfo / kankyo struct debug fixes

* pal building ok

* jp building ok

* some tests with jp

* some more pal/jp tests
2025-04-06 21:08:25 +03:00
Vlad 4361019959 d_a_npc_shop0 matching (#2374)
* d_a_npc_shop0 matching

* d_a_npc_shop0 matching
2025-04-06 21:06:44 +03:00
Carco_21 7f689a5cb8 d_a_obj_lv8Lift almost matching (#2376)
* Initial Work

* General work

* d_a_obj_lv8Lift almost matching
2025-04-05 15:43:38 -07:00
Carco_21 d640fb8b9d d_a_fr and d_a_obj_lp work (#2372)
* Initial d_a_fr work

* general d_a_fr work

* Pull request cleanup

* d_a_obj_lp almost matching

* Fixed compile error
2025-04-05 15:36:27 -07:00
Niklas Bauer a159f3ba37 d_a_obj_ihasi Matching (#2373)
* d_a_obj_ihasi matching

* d_a_obj_ihasi cleanup

* d_a_obj_ihasi style
2025-04-04 02:09:52 -07:00
Carco_21 716c506aa1 d_a_npc_midp almost matching (#2371)
* d_a_npc_midp almost matching

* Pull request cleanup
2025-04-03 14:28:05 -07:00
TetrisGG 55f2b09dad d_a_obj_maki matching (#2370)
* Matching daObj_Maki_HIO_c::daObj_Maki_HIO_c()

Matched daObj_Maki_HIO_c::daObj_Maki_HIO_c() and started work on daObj_Maki_HIO_c::~daObj_Maki_HIO_c()

* more work on d_a_obj_maki

More structures defined, work on all methods, some equivalent, just missing registers

* d_a_obj_maki Matching

Final work on maki to get it to Match 100%.

* d_a_obj_maki matching

d_a_obj_maki matching | * cleanup for PR
2025-04-02 17:12:00 -07:00
Caroline Madsen e55c504f28 d_camera work (#2369)
* bumpCheck matching

* checkGroundInfo matching

* chaseCamera matching

* lockonCamera attempted

* talktoCamera matching

* subjectCamera, magneCamera matching

* colosseumCamera close, plus various fixes

* towerCamera attempted

* hookshotCamera matching
2025-04-01 19:05:30 -07:00
Sam Chaturvedi 9847b2a278 d_a_obj_stopper matching (#2367)
* d_a_obj_stopper matching

* d_a_obj_stopper - address PR comments
2025-04-02 00:10:54 +03:00
Carco_21 cc7f26c838 Work on create functions of d_a_npc_midp and changed mpMatAnm to array (#2366)
* Work on create functions of d_a_npc_midp and changed mpMatAnm to array

* Pull request cleanup
2025-04-01 13:31:12 -07:00
Carco_21 3df4a4b8d5 d_a_ep work (#2364)
* Started work on d_a_ep

* Work on daEp_Create

* daEp_Execute work and other smaller functions

* Work on execute function and started on move function

* Work on ep_move

* Data matching and pushed some functions to 100%

* Pull request cleanup
2025-04-01 13:29:46 -07:00
hatal175 98f755e98a d_a_npc_worm matching (#2365)
* d_a_npc_worm matching

* Rename a_this
2025-03-31 18:30:42 -07:00
TakaRikka d7a8fb9d83 d_a_b_mgn equivalent (#2363) 2025-03-31 19:43:11 +03:00
Carco_21 59848baf81 d_a_npc_zant work (#2354)
* d_a_npc_zant create work

* d_a_npc_zant almost matching

* All functions matching except sinit. Pull request cleanup
2025-03-31 19:40:56 +03:00
Vlad 03ab58acc1 d_a_obj_dust work, 90% matching (#2362)
* d_a_obj_dust work 90% matching

* d_a_obj_dust work 90% matching
2025-03-30 21:51:01 -07:00
Huitzi 4ccca6b893 d_event_debug equivalent & modifications to dEvLib_callback_c (#2359)
* WIP d_event_debug
* Implemented most functions close to matching
* Removed erroneous comment in d_com_inf_game.h
* Implemented getEventP in dEvDtBase_c
* Retyped dEvLib_callback_c function returns from BOOL to bool
* Implemented getHeader, getEventList, and setDbgData in dEvent_manager_c
* Moved relevant dEvDb_* classes from d_event.h to d_event_debug.h and changed to structs
* Extended JORFile mFilename character array from 8 to 256 characters
* Implemented combo boxes and update slider functionalities in JORMContext
* Named field_0xC of JORProperyEvent as id, based on use of field in d_event_debug.cpp
* Corrected debug event tables and created missing table
* Debug tables explicitly pasted in d_event_debug.cpp to circumvent ShiftJIS not properly encoding tables via #include directive

* Change return types for implemented virtual functions of actors that inherit from dEvLib_callback_c

* Add const modifier to several d_com_inf_game functions called in d_event_debug, and change respective fields in dEvDb_bit & reg_c to be const

* d_event_debug Equivalent
* Changed configure.py entry to equivalent instead of matching
* Preliminary documentation

* Remove debug tables from d_event.cpp
2025-03-30 20:11:50 -07:00
LagoLunatic 559d389e3d Fix dPnt struct (#2361)
* Fix dPnt struct

* Fix Vec warning
2025-03-30 15:45:59 -07:00
LagoLunatic ed42b15988 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
Trueffel b427ac85cf d_a_e_kk equivalent (#2358)
* d_a_e_kk equivalent

* some docs
2025-03-29 21:24:51 +03:00
TakaRikka 83875b9c9e e_th equivalent (#2357) 2025-03-29 17:41:13 +03:00
hatal175 12d44903cd daPeru_c equivalent (#2356) 2025-03-28 23:55:32 -07:00
soruh 747bd373b0 Name d_a_cow Animations (#2355)
* name d_a_cow animations

* name run type according to animation name
2025-03-27 20:12:13 -07:00
soruh 4679b6e17f d_a_cow Equivalent (#2353)
* decompile d_a_cow

* rescope enums to daCow_c class

* apply suggestions by TakaRikka

* fix JUT_ASSERT
2025-03-27 17:56:51 -07:00
Carco_21 57289d0a65 Work on d_a_obj_timer (#2350)
* Work on d_a_obj_timer

* Cleanup for pull request
2025-03-27 15:46:01 -07:00
Carco_21 fcf83b895b d_a_b_mgn (Dark Beast Ganon) (#2348)
* Started work on d_a_b_mgn

* Finished some of the smaller functions

* A lot of work on the set_Effect methods

* Work on CreateHeap

* Work on calcBloodMove

* Work on setHideSmokeEffect and _delete

* damage_check at 50%

* demo_skip 94% matching

* Work on some execute functions and a couple others

* Worked on last few functions and general cleanup

* Cleanup for pull request

* Last few pr review comments addressed
2025-03-27 15:45:21 -07:00
TakaRikka 137fe8b8df d_a_e_th_ball done (#2352) 2025-03-27 11:44:40 +02:00
TakaRikka 934e14f12b fix debug build (#2345) 2025-03-27 00:45:52 -07:00
hatal175 6648566b7a Work on d_a_npc_cdn3 (#2351) 2025-03-26 18:48:43 -07:00
Sam Chaturvedi 764eb0493e d_a_obj_sword matching (#2349)
* d_a_obj_sword matching

* d_a_obj_sword -- Addressed PR comments
2025-03-26 18:38:45 -07:00
Ttobas b6febdc2b6 d_a_obj_shoe 91% (#2347)
* Basic structure done

* daNpcShoe_Param_c done, class cleaned a bit, ::Create matching, destructor matching

* WIP

* About 70% done

* Fix after merging main

* TU almost done, missing correct rodata ordering, constructor, setMotionAnim, __sinit not matching

* Fix: Apply suggestions

---------

Co-authored-by: Ttobas <anon@ym.ous>
2025-03-25 18:05:02 -07:00
Emma e876797c3d d_a_obj_flag 95% (#2341)
* Started work on d_a_obj_stick

* Lots of green

* Fixed mAcch vtable

* Only missing switch/if problem in create

* All green

* Set stick matching

* Cleanup

* Addressed PR comments

* Reset vscode config

* Started d_a_obj_flag

* More work on flag

* More work on flag

* Flag 60%

* Flag progress

* 80% done

* 87% done

* 95%

* Some more work

* Addressed PR comments

* Switched c for 99
2025-03-25 18:04:00 -07:00
Sam Chaturvedi acad3dba2a d_a_obj_ganonwall matching (#2346)
* d_a_obj_ganonwall matching

* applied suggestions

* Rework l_idx into 2d array
2025-03-24 17:01:39 -07:00
Stbn-antier c33ddb3ac1 d_a_obj_sekidoor matching (#2344)
* Started work on d_a_obj_sekidoor, 38% match

* Filled functions, rough 70% match

* 76% method matching

* 84% match, only setPrtcls remaining

* Object 100% matching

* Cleanup, remove padding

* Adressed review comments

* Adressed review comment
2025-03-24 03:47:49 -07:00
Łukasz Starzyk 3f67b00c6e d_a_obj_amiShutter equivalent (#2342)
* init commit

* functions matching progress

* new inline function

added new inline function `OnRoofRegist` to cBgW class

* use of inline function

uses the inline function as in the debug version

* d_a_obj_amiShutter equivalent

* cleanup and field rename

* addressed PR comments
2025-03-23 22:29:10 +02:00
TakaRikka a4cdad86f4 b_gnd equivalent (#2340)
* b_gnd equivalent

* fix dEvt_info_c inlines

* fix some more inlines
2025-03-23 21:55:28 +02:00
LagoLunatic 4dc0cd9d09 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
Carco_21 d0f89e41b1 d_a_mant almost done (#2335)
* d_a_mant Create almost equivalent

* Work on mant_move

* Remade d_a_mant branch

* d_a_mant ~76% matching

* daMant_packet_c::draw() 69% matching

* d_a_mant data matching and joint_control over 50% matching

* daMant_Execute looking better

* d_a_mant 92% equivalent

* Removed commented rodata
2025-03-22 02:16:25 -07:00
Caroline Madsen 5a7b9f62d6 Z2AudioLib work (#2339)
* Z2LinkMgr work, Z2AudioArcLoader matching

* Z2SeMgr matching

* Z2SpeechMgr2 almost done, Z2SoundHandles matching
2025-03-21 23:03:43 -07:00
soruh cf87a207b6 decompile d_a_obj_bmshutter.cpp (#2338)
* Implement `onCondition` inline function of `dEvt_info_c`

* decompile d_a_obj_bmshutter.cpp

* remove uncesary inline and this->

* use dEvt_info_c::checkCommandDemoAccrpt instead of daObjBmSh_c::checkCommandDemoAccrpt

* change style of members

* Revert "Implement `onCondition` inline function of `dEvt_info_c`"

This reverts commit dc7e945aedef44eb7be76a61c2da37e238560c3e.

* use `i_onCondition` instead of `onCondition`

* make l_ statics local

* remove uncessesary parenthesis

* make actor function pointers return ints

* make l_check_area a Vec[4]
2025-03-21 17:34:45 -07:00
Ttobas 6519691a47 d_a_obj_udoor matching (#2337)
* d_a_obj_udoor done

* Fix: Re-type unused fields to u8[]

* Fix: Make padding data implicit in obj_udoor_class

---------

Co-authored-by: Ttobas <anon@ym.ous>
2025-03-20 23:01:58 -07:00
hatal175 861e99c403 d_a_npc_cd2 work (#2336) 2025-03-20 22:59:58 -07:00
Ttobas 02ded44d36 d_a_obj_zdoor matching (#2334)
* Fully matching

* Fix PR comments

* Fix PR comments (rename parameter in callback functions)

---------

Co-authored-by: Ttobas <anon@ym.ous>
2025-03-20 12:32:51 +02:00
Emma 1a5a81976a d_a_obj_metalbox matching (#2333)
* Started work on d_a_obj_stick

* Lots of green

* Fixed mAcch vtable

* Only missing switch/if problem in create

* All green

* Set stick matching

* Cleanup

* Addressed PR comments

* Reset vscode config

* d_a_ob_metalbox mostly complete

* Completed d_a_obj_metalbox

* Addressed PR issues
2025-03-20 12:11:32 +02:00
zerox029 131548b015 d_a_obj_stick matching (#2332)
* Started work on d_a_obj_stick

* Lots of green

* Fixed mAcch vtable

* Only missing switch/if problem in create

* All green

* Set stick matching

* Cleanup

* Addressed PR comments

* Reset vscode config
2025-03-18 18:39:26 -07:00
Łukasz Starzyk 57fe6dcdea d_a_obj_burnbox matching (#2331)
* initial work

* d_a_obj_burnbox, matching

* renamed varia bles and additional cleanup

* assigned correct comments to models' name

* post review changes

* if statement separation in Execute method
2025-03-18 17:18:22 -07:00
TakaRikka d3e9175bfb d_a_e_pz equivalent (#2330)
* d_a_e_pz equivalent

* rename var

* match f_pc closer to debug

* hopefully fix decompctx

* sdk done

* remove unneeded file
2025-03-18 15:45:44 -04:00
Carco_21 58ba86b6a3 d_a_b_gnd ~86% equivalent (#2329)
* Remade fresh fork with clean main branch

* d_a_b_gnd functions are 40% matching

* Some data work

* daB_GND_Execute 26% matching

* daB_GND_Execute 59% matching

* Create and useHeapInit work

* Cleanup work and demo_camera at 50% matching

* h_damage_check 91% matching

* eff_set_h 76% matching

* b_gnd_g_down 82% matching

* general work

* a little bit of improvement on himo_control1

* General work

* Draw at 96%

* Small gake_check work

* Small data cleanup

* NodeCallBack matching and data cleanup
2025-03-17 20:03:37 -07:00
hatal175 556f5ca8d4 passer_mng work (#2328) 2025-03-15 23:44:45 -04:00
TakaRikka 60748d0924 b_dr equivalent, update dtk-template (#2327)
* d_a_tag_allmato almost done

* d_a_swhit0 done

* some SSystem cleanup

* treesh done

* swball done, some other rel cleanup

* b_dr equivalent

* update dtk-template

* rename j3dframectrl mode enum
2025-03-14 04:46:21 -04:00
hatal175 34c5d8272e daObjCBlk_c equivalent (#2326) 2025-03-12 16:03:14 -07:00
Caroline Madsen 15a807bb7b e_rdy mostly done (#2324)
* e_rdy work

* e_rdy work

* e_rdy work

* e_rdy mostly done

* e_rdy fix hit direction
2025-03-12 16:02:03 -07:00
Caroline Madsen 3ad60c1b17 f_op_actor_mng matching (#2325) 2025-03-12 15:57:14 -07:00
hatal175 854e460a36 d_a_e_kg equivalent (#2322) 2025-03-09 16:53:31 -07:00
hatal175 763400c4c0 daObjNAN_c equivalent (#2320)
* daObjNAN_c equivalent

* Remove padding
2025-03-09 16:05:03 -07:00
YunataSavior 800049a811 d_a_e_kg equivalent except for action (#2321)
* Initial work on d_a_e_kg

* d_a_e_kg 57% matching

* d_a_e_kg 83% done with regalloc issue in action function

* d_a_e_kg equivalent except for action
2025-03-10 00:57:19 +02:00
hatal175 569344ccf6 Match daNpc_Jagar_c::chkToMotion (#2319) 2025-03-08 15:25:30 -08:00
YunataSavior a18a828463 Fixes and cleanup for d_a_npc_jagar to hit 99% matching (#2318) 2025-03-08 01:05:46 -08:00
YunataSavior 52b23ad73c d_a_e_zs (a.k.a. Stallord's zombie soldiers) equivalent (#2313)
* Initial work for d_a_e_zs

* d_a_e_zs equivalent

* d_a_e_zs data fixes. Thanks Taka!

* Update d_a_e_zs based on Taka's comments
2025-03-08 01:04:31 -08:00
LagoLunatic fb45587923 c_m3d OK (#2317) 2025-03-07 16:01:38 -08:00
hatal175 0d3b4bf9de A little work on daObjMasterSword_c (#2316) 2025-03-07 16:01:15 -08:00
Carco_21 0f141c2a9c d_a_npc_jagar - ~94% (#2309)
* Began work on d_a_npc_jagar

* Major work on daNpc_Jagar_c::create()

* Jagar create() - 11%

* Continued work on daNpc_Jagar_c

* Jagar create() - 87%

* Continues work on Jagar

* Work on Jagar.checkChangeEvt()

* Working on Jagar.talk()

* Work on Jagar.changeBtp()

* Jagar.checkChangeJoint() & checkRemoveJoint()

* Jagar.chkAction() & setAction()

* Jagar.chkChuMotion()

* Jagar.chkSitMotion() & chkSitMotion2()

* Jagar.chkToMotion()

* Jagar.CreateHeap()

* Jagar.createHeapCallBack() & ctrlJointCallBack()

* Jagar.cuAnger()

* Jagar.cutClimbUp() - 92%

* Jagar.setAttnPos() - 85%

* Jagar.cutConversationWithBou() - 48%

* Jagar work and daNpcT_c::getActorDistance - 83%

* Jagar setParam work and daNpcT_c::getActorDistance - 85%

* Prep Jagar push to main

* little cleanup

* Fixed return type discrepancy

* Fixed *other* return type issues & variable names for Jagar

* Jagar talkWithBou work

* Work on Jagar talk

* Data & function cleanup

* I dont remember what i added this time lol

* Finished some functions

* Reworking Jagar talk()

* Finished some functions

* Attempting to rework cutNeedYourHelp

* Almost(ish) done with Jaggle

* Almost done with Jaggle

* Took out inline assembly in Jagar.chkToMotion()

* Cleanup

* Minor variable initialization change

* Small cleanup

* Hopefully fixed d_a_npc_bou compilation error
2025-03-07 19:41:36 +02:00
hatal175 53ae95cd95 Add -fdeclspec to clangd to avoid warning (#2315) 2025-03-03 18:00:57 -08:00
hatal175 294d104bc6 Minor work on octhashi/sekizoa I had lying around (#2314)
* Minor octhashi changes

* Minor work on sekizoa
2025-03-03 18:00:38 -08:00
TakaRikka 19e18654c9 tag_allmato almost, swhit0 treesh swball done, misc cleanup (#2312)
* d_a_tag_allmato almost done

* d_a_swhit0 done

* some SSystem cleanup

* treesh done

* swball done, some other rel cleanup
2025-03-01 14:48:49 +02:00
YunataSavior 9c3c07575a d_a_e_ym (a.k.a. Twilight bugs) 99% equivalent (daE_YM_c::checkBeforeBg and daE_YM_c::create have regalloc issues) (#2311)
* checkWallCrash and checkWolfBark done for d_a_e_ym

* d_a_e_ym at 36 percent

* 46% completion for d_a_e_ym

* d_a_e_ym at 65% completion

* d_a_e_ym 83% complete

* d_a_e_ym 90% complete

* d_a_e_ym 99% decompiled. All done except for 2 functions with regalloc issues. Cleanup of mSound funcs in d_a_e_ym.

* Update d_a_e_ym based on Taka's feedback
2025-02-28 23:05:49 -08:00
Caroline Madsen 4453d0617e d_a_npc_yelia equivalent (#2310) 2025-02-26 00:41:51 -08:00
Caroline Madsen e3d0b94122 d_a_npc work (#2306) 2025-02-23 14:43:25 -08:00
Caroline Madsen 531a6d6d68 d_a_e_dt, d_a_e_ot equivalent (#2305) 2025-02-20 22:44:54 -08:00
TakaRikka bbc7944e54 d_a_boomerang / d_a_grass mostly done, d_a_spinner done (#2304)
* d_a_boomerang mostly done

* d_a_grass mostly done

* d_a_spinner done
2025-02-19 18:43:26 -05:00
Clark Wakeland 376a5be6e3 ktOnFire setLight() (#2297)
* First commit to repo, basic light function

* various other functions

* Adding .h file

* Added mLight field to daKtOnFire, cleaned up implementation

* Function type fixes
2025-02-19 16:52:04 +02:00
YunataSavior c40e25577b d_a_obj_Y_taihou equivalent (#2303)
* Transfer of Y_taihou work to cleaner and newer branch

* d_a_obj_Y_taihou nearly equivalent except for 2 functions

* Functionally correct d_a_obj_Y_taihou, but some issues remain

* d_a_obj_Y_taihou equivalent now; many thanks hatal!

* Update configure(dot)py and the config files for Y_taihou
2025-02-17 21:00:03 -08:00
YunataSavior 036b67cb7e Alter every file that contains static void setMidnaBindEffect to link f_op_actor_enemy.h; this will improve percentage progress slightly and help out with rodata matching too. Also, some slight cleanup of d_a_e_ym (#2302) 2025-02-13 17:20:55 -08:00
TakaRikka 6e94efaefb d_a_obj_carry mostly done (#2301)
* d_a_obj_carry mostly done

* cleanup some acch inlines
2025-02-13 10:37:46 -07:00
TakaRikka 2453c0e333 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
YunataSavior 6c24ff1929 d_a_e_oc nearly equivalent except for regalloc issue in daE_OC_c::create function (#2298)
* d_a_e_oc initial work

* 2nd set of d_a_e_oc work

* More d_a_e_oc work

* 3rd set of d_a_e_oc work

* 4th set of work for d_a_e_oc including data/rodata/bss cleanup

* Lots of execute work for d_a_e_oc

* More d_a_e_oc work: cleanup, plus impl of executeAttack

* 7th set of d_a_e_oc work

* 90 percent of the way done for d_a_e_oc

* d_a_e_oc done except for regalloc issues
2025-02-05 17:42:29 -08:00
YunataSavior 34b21412c4 d_a_obj_TvCdlst matching (#2292)
* d_a_obj_TvCdlst matching

* d_a_obj_kwheel00, 01, & d_a_obj_klift00 Equivalent (weak func and/or vtable order) (#2291)

* d_a_obj_kwheel00, 01, & d_a_obj_klift00 Equivalent (weak func and/or vtable order)
* Three rels equivalent
* Basic documentation for the three rels
* Define explicit constructor for dMdl_obj_c (needed for proper array creation in d_a_obj_klift00)
* Modify d_a_obj_bky_rock to account for new explicit constructor of dMdl_obj_c
* Specify weak func and/or vtable orders for rels in config.py

* Cleanup includes and dol2asm artifacts

* * Fix debug build
* Restore incorrectly removed l_bmdidx

* Fix US retail equivalency

* d_a_obj_Turara equivalent (#2289)

* Initial d_a_obj_Turara work

* More d_a_obj_Turara work

* d_a_obj_Turara equivalent except for weak func order of dEvLib_callback_c dtor

* Updates to d_a_obj_Turara after feedback from Taka

* b_dre equivalent (#2290)

* Update d_a_obj_Turara to remove unnecessary comment based on hatal\'s request

---------

Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>

* Fix spurious differences when using `ninja diff` (#2294)

* Fix spurious differences when using ninja diff

* Fix some clangd errors/warnings

* d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent (#2293)

* d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent
* Add simpleCalcMaterial implicit inline to J3DModelData (seen in debug)
* Basic documentation for both actors
* WIP debug build implementations (note TODOs)
* Update configure.py and note weak ordering issues for lv3Water2

* Actually add modified J3DModelData.h & explicitly note fake padding

* Add fopAcM_Register... macros (for debug build) (#2295)

* Update d_a_obj_Tvcdlst to use LIGHT_INFLUENCE after Taka gave feedback

---------

Co-authored-by: Huitzi <73550465+marwernerh@users.noreply.github.com>
Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
Co-authored-by: LagoLunatic <LagoLunatic@users.noreply.github.com>
2025-02-03 10:30:40 +02:00
LagoLunatic ca3e900835 Fix false pointer relocations in data breaking shiftability (#2296)
* Fix false pointer relocations in data breaking shiftability

* Update matDL_dis.py from tww

* remove debug prints from matDL build script
* matDL build rule: Allow specifying global/local scope

* Use asset extraction for ShieldD

* Set mode `+x` on executable Python scripts

* set `+x` on matDL_dis
2025-01-31 23:58:59 +02:00
Huitzi 6b0e392c13 Add fopAcM_Register... macros (for debug build) (#2295) 2025-01-28 06:51:59 +02:00
Huitzi 7c5006e446 d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent (#2293)
* d_a_obj_waterGate matching + d_a_obj_lv3Water2 equivalent
* Add simpleCalcMaterial implicit inline to J3DModelData (seen in debug)
* Basic documentation for both actors
* WIP debug build implementations (note TODOs)
* Update configure.py and note weak ordering issues for lv3Water2

* Actually add modified J3DModelData.h & explicitly note fake padding
2025-01-27 11:55:55 -08:00
LagoLunatic bf4053fefa Fix spurious differences when using ninja diff (#2294)
* Fix spurious differences when using ninja diff

* Fix some clangd errors/warnings
2025-01-26 22:01:05 -08:00
YunataSavior 5644936254 d_a_obj_Turara equivalent (#2289)
* Initial d_a_obj_Turara work

* More d_a_obj_Turara work

* d_a_obj_Turara equivalent except for weak func order of dEvLib_callback_c dtor

* Updates to d_a_obj_Turara after feedback from Taka

* b_dre equivalent (#2290)

* Update d_a_obj_Turara to remove unnecessary comment based on hatal\'s request

---------

Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
2025-01-23 12:42:27 -08:00
Huitzi c11cd855d5 d_a_obj_kwheel00, 01, & d_a_obj_klift00 Equivalent (weak func and/or vtable order) (#2291)
* d_a_obj_kwheel00, 01, & d_a_obj_klift00 Equivalent (weak func and/or vtable order)
* Three rels equivalent
* Basic documentation for the three rels
* Define explicit constructor for dMdl_obj_c (needed for proper array creation in d_a_obj_klift00)
* Modify d_a_obj_bky_rock to account for new explicit constructor of dMdl_obj_c
* Specify weak func and/or vtable orders for rels in config.py

* Cleanup includes and dol2asm artifacts

* * Fix debug build
* Restore incorrectly removed l_bmdidx

* Fix US retail equivalency
2025-01-23 21:48:23 +02:00
TakaRikka fa7821c4bb b_dre equivalent (#2290) 2025-01-22 22:48:08 +02:00
TakaRikka e0824a1590 most of JHostIO / m_Do_hostIO done (#2288) 2025-01-19 22:05:53 -07:00
YunataSavior 7137f49bfc d_a_obj_octhashi equivalent except for weak func ordering of cCcD_GStts dtor (#2287)
* Initial d_a_obj_octhashi work

* More d_a_obj_octhashi work

* d_a_obj_octhashi has 100% completion, but rodata doesn't match

* d_a_obj_octhashi equivalent. Would fully match except for cCcD_GStts dtor

* d_a_obj_octhashi update after feedback from Taka and hatal
2025-01-19 13:45:55 +02:00
YunataSavior 4996e91556 daMagLift_c matching (#2275)
* Initial work with daMagLift_c. Almost completely matching except for mode_proc

* mode_proc matching in d_a_obj_magLift.cpp

* First pass of polishing of d_a_obj_magLift

* Further d_a_obj_magLift updates to align with debug build
2025-01-16 18:50:04 -08:00
TakaRikka 9948a6371f 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
LagoLunatic 2189777abf Fix various issues in TUs marked Equivalent (#2286) 2025-01-14 22:47:29 -08:00
TakaRikka 36daa25884 d_a_horse mostly done (#2284)
* checkpoint

* d_a_horse mostly done

* some horse doc
2025-01-09 15:45:46 +02:00
hatal175 0cdacf4bff daItemShield_c OK (#2283) 2025-01-06 01:59:48 -08:00
hatal175 523040331d daObj_Roten_c OK (#2282) 2025-01-03 15:28:59 -08:00
Huitzi 960b08e88c d_a_obj_waterPillar + d_a_obj_syRock Equivalent (weak ordering) (#2281)
* d_a_obj_waterPillar + d_a_obj_syRock Equivalent (weak ordering)
* Added fake struct padding
* Added fake Chk inlines to dBgS_Acch
* Added AT_TYPE_100 to cCcD_ObjAtType

* Addressed fakematch
* Deleted fake Chk inlines from dBgS_Acch
* Removed duplicated, but commented, static check for struct size
* Renamed two d_a_obj_waterPillar fields according to comments

* Removed explicit inline keywords & swapped use of PSMTX for debug-friendly MTX
2025-01-03 14:50:14 -08:00
hatal175 fac61aaf40 d_a_obj_rstair OK (#2280) 2025-01-02 11:43:05 -07:00
hatal175 c67489d3da d_a_obj_riverrock OK (#2279) 2025-01-01 15:51:34 -07:00
hatal175 ad5b89f795 d_a_obj_swturn OK (#2278) 2025-01-01 11:56:04 -07:00
hatal175 477cbf1bf1 d_a_obj_swhang equivalent (#2277) 2024-12-30 19:20:31 -07:00
hatal175 593f1d1587 d_a_obj_smtile OK (#2276) 2024-12-29 16:45:47 -07:00
hatal175 36300580c4 Remove duplicate GXNormal1x16 (#2273) 2024-12-29 15:58:43 -07:00
Trueffel 78d206c1a3 d_stage linked and one function in m_do_ext matched (#2272) 2024-12-29 17:56:25 +02:00
TakaRikka 0e281cb975 various matches / cleanup (#2271)
* cleanup various TUs

* checkpoint

* d_attention doc
2024-12-29 17:53:54 +02:00
hatal175 c429ce21eb d_a_obj_cwall almost matching (#2270)
* d_a_obj_cwall almost matching

* d_a_obj_pdoor OK
2024-12-27 19:16:59 -08:00
TakaRikka ad2badcd29 kankyo mostly done (#2269)
* work on kankyo

* some more kankyo work

* kankyo almost done

* kankyo mostly done

* first cleanup pass

* some more renaming

* rename a bunch of kankyo vars

* fix regression
2024-12-24 16:52:12 +02:00
hatal175 d874f05f44 d_a_obj_wsStick, d_a_obj_onsenTaru OK (#2268)
* d_a_obj_wsStick, d_a_obj_onsenTaru OK

* d_a_obj_pdtile OK

* d_a_obj_stone equivalent

* d_a_npc_lf OK

* Z2SoundMgr OK

* Remove fixed nonmatching comment

* d_a_obj_kantera OK

* Remove unneeded header

* daMyna_c::deleteItem matching

* d_a_obj_crvsteel OK
2024-12-24 02:36:01 -08:00
hatal175 e0ea8495f7 d_a_obj_yel_bag OK (#2267)
* d_a_obj_web0 cleanup

* d_a_obj_yel_bag OK
2024-12-19 12:10:53 -08:00
TakaRikka ff5f31b844 kankyo_rain / obj_life_container mostly done, obj_glowsphere done (#2266)
* obj_life_container mostly done

* obj_glowSphere done

* kankyo_rain mostly done

* some cleanup

* more kankyo_rain cleanup
2024-12-18 20:02:52 +02:00
hatal175 c5ab943cfc d_a_obj_cb almost matching (#2265)
* d_a_obj_cb almost matching

* d_a_obj_bubblePillar OK

* Work on d_a_obj_fchain

* d_a_obj_gb OK

* daTimeFire_c OK

* d_a_obj_toaru_maki OK

* d_a_obj_ten OK
2024-12-16 15:16:19 -08:00
hatal175 ee992eb80c daObj_BouMato_c OK (#2264)
* daObj_BouMato_c OK

* daObjGraRock_c Matched except template function order

* daBkyRock_c OK
2024-12-12 12:58:40 -08:00
hatal175 559fcb3a16 d_a_obj_automata OK (#2263) 2024-12-10 18:02:33 -08:00
TakaRikka 8d73439554 tbox/camera/d_bg_w_kcol work and cleanup (#2262)
* some camera/tbox cleanup

* d_bg_w_kcol work

* make item name enum better
2024-12-10 18:46:19 +02:00
hev7 3fa6b50e6a Work on d_a_obj_lv3Water (#2261)
* Work on d_a_obj_lv3Water

* Fix
2024-12-09 19:17:34 +02:00
hatal175 f15a9c673e daGrdWater_c OK (#2260) 2024-12-09 18:50:37 +02:00
hev7 bcb70e1576 d_a_coach_fire, d_a_obj_kiPot, d_a_obj_lv4prelvtr done (#2259) 2024-12-08 05:50:44 -08:00
TakaRikka ee09fdf915 e_hzelda mostly done (#2258) 2024-12-06 16:47:30 +02:00
hev7 eebbf9a645 d_a_obj_wood_pendulum done (#2257)
* d_a_obj_wood_pendulum done

* Fix setBaseMtx, Vec array
2024-12-05 17:19:03 -08:00
TakaRikka e510f33414 d_vibration / JUTGamePad matched + linked (#2256)
* d_vibration done

* JUTGamePad done

* cleanup JUTGamePad

* d_menu_window cleanup
2024-12-02 21:15:03 +02:00
TakaRikka 7cc32c05fa d_a_obj_pillar done (#2255) 2024-11-30 12:08:38 +02:00
TakaRikka 24b72a5302 some cleanup of f_pc/f_op files (#2254)
* cleanup f_pc files

* cleanup f_op files

* fix a couple f_op_actor_mng functions

* minor JSystem work
2024-11-29 18:24:26 +02:00
TakaRikka d0e243a22a d_a_b_zant matched + linked (#2253)
* work on b_zant

* zant work

* more zant work

* all b_zant functions done

* some doc work

* some more doc work

* d_a_b_zant linked

* fix d_a_b_zant_magic issue
2024-11-22 14:32:01 -07:00
Pheenoh 2159eac680 d_a_npc_lf work (#2252)
Co-authored-by: pheenoh <pheenoh@macmini.lan>
2024-11-17 15:43:09 -05:00
Pheenoh 3ab9e553f8 shop malo basically done (#2251)
Co-authored-by: pheenoh <pheenoh@macmini.lan>
2024-11-13 14:05:08 -08:00
Pheenoh 1745337452 d_a_npc_ashB work (#2250)
Co-authored-by: pheenoh <pheenoh@macmini.lan>
2024-11-13 13:50:44 -08:00
TakaRikka 109445ffc3 zant magic / mobile done (#2249)
* zant_magic done

* zant mobile done
2024-11-13 08:07:55 -05:00
TakaRikka ebd7e3feed d_error_msg mostly done, little Z2LinkMgr work (#2248) 2024-11-12 05:41:55 -05:00
Caroline Madsen f2a7b2a83a J2DMatBlock work (#2247) 2024-11-11 22:31:37 +02:00
TakaRikka 650e1c44a4 work on d_a_movie_player (#2246)
* work on d_a_movie_player

* d_a_demo_item mostly done
2024-11-11 17:53:04 +02:00
Huitzi ffd6b94494 d_a_obj_waterfall OK, with basic documentation (#2245)
* d_a_tag_statue_evt OK

* Modification according to review

* d_a_obj_waterfall OK

* Document d_a_obj_waterfall
* Found examples of actor in-game
* Differentiated between d_a_obj_waterfall & d_a_tag_waterfall
2024-11-11 12:37:31 +02:00
Caroline Madsen f4ee3b5ec2 e_pm, e_fs, obj_sm_door, obj_smw_stone (#2244) 2024-11-10 16:18:40 +02:00
hatal175 7c20cdb8b3 JKRExpHeap matching + other minor (#2243) 2024-11-10 06:38:10 -05:00
TakaRikka aec7c1df12 d_demo mostly matched (#2242) 2024-11-10 05:18:28 -05:00
hatal175 d9201174e3 j2d/j3d work (#2241) 2024-11-10 04:53:09 -05:00
hatal175 bec20e3dd4 Work on various units, mostly d_menu_letter (#2240) 2024-11-09 13:20:06 -05:00
TakaRikka 083991a8d0 all d_a_alink functions attempted (#2239)
* more work on alink

* alink wip

* little more work

* setEyeMove

* 14 left

* auto ground hit

* all d_a_alink functions attempted
2024-11-09 05:09:36 -05:00
Caroline Madsen 80f30409f1 dolphin work (#2238) 2024-11-08 02:01:52 -08:00
Caroline Madsen 98f8e7e741 d_a_midna mostly done (#2237) 2024-11-06 19:20:22 -08:00
TakaRikka 467b7bffca alink crawl / damage done (#2236) 2024-11-04 07:34:18 -05:00
Caroline Madsen 63abf9f6d2 JParticle mostly done (#2235) 2024-11-03 20:39:41 +02:00
TakaRikka 499d4dfe74 alink_grab done (#2234)
* work on alink grab

* some grab work

* grab almost done

* finish alink grab

* alink_wolf mostly done

* fix cLib_minMaxLimit

* alink guard mostly done

* extract some embedded assets

* extract grass data. wip, alignment wrong
2024-11-03 06:47:23 -05:00
Caroline Madsen 21cb60624a J3DMatBlock, J3DMaterialFactory work (#2233) 2024-11-01 13:46:27 -07:00
Caroline Madsen 09423b6fa0 more misc. cleanup (#2232) 2024-10-31 17:36:11 -07:00
Luke Street 30777a85b5 Update dtk-template & fix source paths (#2231) 2024-10-30 16:35:28 -07:00
Luke Street bbc2b87815 Update CI to deploy directly to GitHub Pages (#2230) 2024-10-30 15:42:43 -07:00
TakaRikka 36519ddf15 alink horse mostly done (#2229)
* d_a_horse work

* more work on alink horse

* finish alink horse

* little work on d_a_alink_link
2024-10-31 00:41:08 +02:00
Caroline Madsen 7f2e42ba19 d_a_npc_zrc mostly done (#2228) 2024-10-28 15:52:08 -07:00
TakaRikka b1d7bc9cc4 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
Caroline Madsen f5e80cf9fd d_camera work (#2226) 2024-10-26 21:35:25 -07:00
hatal175 606178dc88 Work on daNpc_Hanjo_c (#2225) 2024-10-25 23:44:26 -07:00
TakaRikka 8a0802554e d_a_alink work / lv4digsand done / e_s1 matched (#2224)
* d_a_alink work / d_a_obj_lv4digsand done

* d_a_e_s1 matched, not linked

* d_a_e_s1 documentation
2024-10-25 06:47:02 +03:00
Caroline Madsen 5650c7fe08 JAudio2 and Z2AudioLib work (#2223)
* JAudio2 and Z2AudioLib work

* check1stDynamicWave matched
2024-10-24 02:25:13 +03:00
Caroline Madsen c44ea2139d c_m3d mostly done (#2222) 2024-10-22 16:09:12 -07:00
TakaRikka 66bc920f4e update dtk (#2221) 2024-10-21 04:46:00 +03:00
hatal175 f8814c757b daSwLBall_c OK (#2220) 2024-10-19 21:47:49 -07:00
hatal175 3dadc80c5e d_a_obj_tp OK + other rels that matched almost as is (#2218)
* d_a_tag_yami OK

* d_a_tag_watchge matched as is

* d_a_tag_wara_howl matched as is

* d_a_tag_waterfall matched as is

* daTagTheBHint_c matched as is

* daZraFreeze_c Matched as is

* Revert nosyminline argument

* d_a_obj_tp OK
2024-10-19 02:01:46 -07:00
Caroline Madsen 69dc7cbbf1 d_a_b_yo and d_a_b_yo_ice mostly OK (#2219) 2024-10-19 11:54:40 +03:00
TakaRikka 0652b2c7b3 obj_Iceleaf almost done / d_a_alink work (#2217)
* obj_iceleaf almost done

* fix up d_a_alink procvars

* more d_a_alink work

* some d_a_alink error cleanup

* some more cleanup
2024-10-19 11:54:22 +03:00
Caroline Madsen abc4c6659a cleanup (#2216) 2024-10-17 14:24:29 -07:00
hatal175 38445f4d51 Work on d_a_title (#2215) 2024-10-17 14:21:08 -07:00
hatal175 2aa441e40b daObjFPillar2_c OK (#2214) 2024-10-16 21:57:17 -07:00
hatal175 ec07abb09b Reintroduce missing changes from pull request #2200 (#2213)
* Reintroduce missing changes from pull request  #2200

* m_Do_audio OK
2024-10-16 12:41:21 -07:00
hatal175 030d6533f0 daObjLadder OK (#2211)
* daObjLadder OK

* daObjFPillar_c OK

* Remove commented out code
2024-10-15 14:09:38 -07:00
TakaRikka ae77e60de8 d_a_alink canoe almost done (#2210)
* d_a_alink canoe almost done

* ironball mostly done

* alink_iceleaf done
2024-10-16 00:03:04 +03:00
Caroline Madsen 9f58034704 J3D work (#2212) 2024-10-15 23:59:31 +03:00
hatal175 9895999b7b daObjKazeNeko_c OK (#2209) 2024-10-14 01:24:30 -07:00
hatal175 e954b7ba50 Readd ice_s changes (#2208) 2024-10-13 23:29:22 -07:00
Luke Street 0db466edfa Add clangd support for VS Code (#2207)
* Add clangd support for VS Code

* Revert accidental change
2024-10-12 21:43:10 -07:00
Luke Street 7ec2d80414 Fix CI checkout speed (#2206) 2024-10-12 21:06:00 -07:00
TakaRikka 8514737d46 d_a_alink work / bump dtk version (#2205) 2024-10-12 15:11:17 -07:00
TakaRikka 12eb254d76 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
Caroline Madsen 2fd702c0ac d_menu_fmap and d_menu_fmap2D OK (#2202) 2024-10-07 15:34:13 -07:00
hatal175 1f3948e40e d_map_path_dmap OK (#2201)
* d_map_path_dmap work

* d_map_path_dmap OK

* Probable inheritance for dalv4CandleDemoTag_c

* daObjFuta_c OK

* daObjHHASHI_c OK
2024-10-07 15:32:29 -07:00
hatal175 24b6124609 daTagQs_c OK (#2200)
* daTagQs_c OK

* clean up d_a_tag_shop_camera

* daTagTWGate_c OK

* daTagWljump_c: Update names and includes

* Make fopAcM_cullingCheck compilable

* Remove dolasm include

* dMenu_Collect2D_c::screenSet matches

* Minor work on d_menu files

* dMenu_Option_c OK
2024-10-02 19:24:27 -07:00
hatal175 09dfa0a2bc Work on daNpcBlueNS_c (#2199) 2024-09-25 15:28:26 -07:00
hatal175 f2ac35d738 J3DModelLoaderCalcSize + J2DScreen work (#2198)
* All literals functions in J2DScreen were matched

* Import J3DModelLoaderCalcSize work

* d_a_obj_rfHole OK

* Minor fixes for daVrbox2
2024-09-14 00:48:38 -07:00
TakaRikka ee0c0f12ac obj_onsenTaru done / cleanup swspinner TUs (#2197)
* clean up swspinner TUs

* d_a_obj_onsenTaru done

* remove asm
2024-09-09 20:41:28 +03:00
Herman Semenov 8386cefa3d Reverse is done dMsgObject_c::getSelectBombPriceLocal() (#2196) 2024-08-31 00:17:18 +03:00
hatal175 b7380e77d1 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 d3420ffe8d 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 18f4489dd6 d_particle almost finished (#2193)
* d_particle almost finished

* Remove dolasm.h include from JKRDvdRipper
2024-08-16 22:19:53 -07:00
hatal175 edd2d30a33 Work on d_msg_scrn_talk (#2192)
* Work on d_msg_scrn_talk

* Generate d_pane_class_ex virtual inlines
2024-08-14 13:50:36 -07:00
hatal175 0af6d632ce Work on d_meter2_info (#2191) 2024-08-12 14:43:37 -07:00
TakaRikka 2bcec113fb firewood/tornado/tag_camera done, obj_drop almost (#2190)
* firewood done, obj_drop mostly done

* obj_tornado done, cleanup obj_tornado2

* tag_camera done

* remove asm

* tag_msg done
2024-08-12 21:34:01 +03:00
hatal175 2fa4bf9f51 dMsgScrnHowl_c OK (#2189) 2024-08-11 23:27:55 -07:00
hatal175 7894ea5140 Work on d_msg_scrn_item (#2188) 2024-08-09 20:23:17 -07:00
TakaRikka e7e5453771 zramark work, sWallShutter / firewood2 done (#2187)
* obj_zramark done except weaks

* setup fixes

* obj_sWallShutter done

* firewood2 done

* remove asm
2024-08-07 09:32:04 -06:00
hatal175 106d72032c Work on d_msg_object (#2186) 2024-08-07 03:18:30 -07:00
TakaRikka 6bf2f3cc55 some cc doc and obj_brg work (#2184)
* some cc doc

* document dCcD material types

* work on d_a_obj_brg
2024-07-22 12:33:37 -06:00
jdflyer 70e278ee84 Tools: update packageISO and move yaz0 function to config (#2183) 2024-07-22 12:33:16 -06:00
jdflyer ab7d0b88c3 Tools: add libbti and assets_config (#2182)
* Start d_menu_fmap2d

* checkpoint

* checkpoint

* Add libbti and bti packaging, start libjaudio

* Add asset config, move libast, formatting
2024-07-18 09:04:43 -06:00
TakaRikka 5e283fd567 obj_movebox mostly done (#2181) 2024-07-17 13:51:24 -06:00
hatal175 038cdb8b5f d_jnt_col OK (#2180) 2024-07-15 20:13:26 -07:00
Daniel Hajjar 09beea4a09 Update cLib_calcTimer (#2179) 2024-07-15 02:48:30 -07:00
hatal175 19e3defe5b A little work on d_stage (#2178) 2024-07-14 05:29:24 -07:00
TakaRikka ca1ece683b Lv5key / Iceblock done (#2177)
* obj_lv5key

* obj_iceblock done

* remove asm
2024-07-13 09:24:50 +03:00
hatal175 89e14f9f97 d_spline_path ok (#2176) 2024-07-12 17:31:33 -07:00
TakaRikka 6b8fda60f3 Lv5floorboard, Lv5icewall, obj_lv5swice, obj_lv5ychndlr done (#2175)
* lv5floorboard done

* obj_lv5icewall done

* remove asm

* obj_lv5swice done

* obj_lv5ychndlr done
2024-07-10 17:30:02 +03:00
hatal175 08c14024b9 daTagCsw_c OK + some twgate funcs (#2174) 2024-07-09 18:45:19 -07:00
TakaRikka 6eca7a83b9 obj_lv5YIblltray done (#2173)
* d_a_obj_lv5yiblltray done

* remove asm
2024-07-07 21:31:29 +03:00
TakaRikka 8599b135d6 d_a_alink_hang done (#2172) 2024-07-06 08:33:37 -06:00
Caroline Madsen 57a1d21be8 d_a_npc_zrz mostly done (#2168)
Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2024-06-30 15:28:55 +03:00
hatal175 61c48f6e72 Work on daTag_KMsg_c (#2171) 2024-06-29 04:27:21 -07:00
TakaRikka d923917b39 work on d_camera / d_ev_camera (#2170) 2024-06-25 08:34:59 -06:00
TakaRikka 3c82015f69 d_bg_w done (#2169)
* ClassifyPlane matched

* d_bg_w full match

* remove asm
2024-06-15 11:09:55 -06:00
jdflyer 569d183b2c Work on d_menu_fmap2D (#2167)
* Start d_menu_fmap2d

* checkpoint

* checkpoint
2024-06-10 00:38:30 -07:00
Pheenoh 3a2e38dc5c Setup d_a_b + misc actors (#2166)
* setup d_a_b actors

* misc actor checkpoint

* misc actor finish

* add d_a_b class comments

* add misc actor class comments wip

* add misc actor class comments
2024-06-10 00:34:52 -07:00
Pheenoh 946b2e81d9 Setup d_a_npc actors (#2165) 2024-06-05 09:54:15 -06:00
hatal175 1c1e65bc4b Work on J3DMatBlock (#2164) 2024-06-04 14:25:37 -06:00
Caroline Madsen 59175a46fd d_a_obj_dan OK (#2163) 2024-06-02 16:24:43 -06:00
TakaRikka fcf137a902 d_a_nbomb mostly done (#2162)
* first pass of nbomb

* some nbomb doc

* remove asm
2024-05-29 07:44:15 -06:00
Pheenoh 2e7510db5f Setup d_a_obj Actors (#2161)
* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* finish

* add class comments

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* finish

* add class comments

* rm duplicate comments

* fix build
2024-05-29 00:49:10 -07:00
Caroline Madsen 7c7bc7fbd0 d_a_obj_ari OK (#2160) 2024-05-26 13:52:57 -06:00
hatal175 577f9c6c21 a little work on d_a_obj_crope (#2159) 2024-05-26 13:52:42 -06:00
TakaRikka 411a832fbb d_a_e_vt mostly done (#2158) 2024-05-24 20:47:15 -06:00
Pheenoh 38ac3e9227 Setup d_a_e actors (#2157)
* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* checkpoint

* finish

* add class comments
2024-05-23 23:31:16 -07:00
Pheenoh 522c051b1a Misc changes (#2156)
* daB_YO_Draw & onIceBreak

* misc changes

* remove asm / progress
2024-05-18 18:23:02 -07:00
TakaRikka fa325034fd d_a_b_ob matched (#2155)
* all b_ob functions matching, not linked

* oops forgot a couple funcs

* fix some small errors

* some morpheel doc

* remove asm
2024-05-18 19:13:21 -06:00
doop 35484fb2c7 d_a_tag_yami work (#2154) 2024-05-14 14:43:47 -06:00
TakaRikka 486e578065 d_msg_scrn_3select done (#2153)
* msg_scrn_3select done

* remove asm

* d_msg_scrn_jimaku done
2024-05-11 09:53:18 +03:00
Trueffel c064a30356 Documentation pass on d_menu_ring.cpp (#2152)
* first d_menu_ring documentation pass

* some more docs
2024-05-09 18:00:43 -07:00
doop 1cc0621462 d_a_tag_sppath OK (#2151) 2024-05-08 15:14:04 -07:00
TakaRikka 6713925172 d_a_obj_item done (#2150)
* d_a_obj_item 99% done

* item cleanup

* remove asm

* add actor attention dist type enum

* change dist_entry names slightly
2024-05-08 07:21:07 +03:00
TakaRikka e1147cf047 Kytag3 done (#2149)
* kytag3 done

* remove asm

* fix d_envse
2024-05-06 20:56:03 +03:00
Caroline Madsen 7a528eb5b6 d_a_e_ba mostly done (#2147) 2024-05-05 19:34:52 +03:00
TakaRikka c36da6a366 kytag8 done, kytag12/13 almost (#2146)
* kytag08 done

* kytag13 almost, cleanup other kytags

* dakytag12 mostly done

* remove asm

* kytag10 done

* kytag01 done

* kytag0 done

* kytag04 done
2024-05-05 19:34:37 +03:00
hatal175 5d87d0cfa2 d_a_obj_bmWindow OK (#2148) 2024-05-05 19:13:52 +03:00
hatal175 9f55d3f37a d_a_obj_balloon OK, d_a_balloon_2D mostly done. (#2145)
* d_a_obj_balloon OK

* Work on d_a_balloon_2D
2024-05-04 01:14:34 -07:00
hatal175 3db70741cc d_a_obj_avalanche OK (#2144)
* d_a_obj_avalanche OK

* daObjAvalanche_c: Change struct to class
2024-05-01 15:55:58 +03:00
Caroline Madsen 3b4d74185d d_a_e_yc OK (#2143) 2024-05-01 09:16:22 +03:00
hatal175 f2ab51e1d1 d_a_door_shutter OK (#2142)
* a_d_door_shutter OK

* d_a_door_spiral OK
2024-04-30 17:08:21 -07:00
Caroline Madsen 7339a87bd9 fix some nonmatching functions (#2141) 2024-04-28 19:33:32 -07:00
Caroline Madsen 669c7d920b d_a_npc_zra mostly done, misc npc work (#2140) 2024-04-26 19:20:26 -07:00
Jeff Padgham c163dc9ed3 d_a_arrow work (#2139)
* WIP commit, about halfway done

* More progress, fixed up some issues

* Most functions match, minor issues in draw/create, dtor needs particle work

* Forgot to remove NONMATCHING define

---------

Co-authored-by: GinNoOokami <noreply>
2024-04-26 19:12:56 -07:00
hatal175 9e80bf0d84 Work on daMBdoorL1 (#2138) 2024-04-21 13:38:19 -07:00
TakaRikka b24b477fc4 d_a_tag_firewall done (#2137)
* mostly fix TVec3 ctors

* d_a_tag_firewall done

* remove asm
2024-04-21 15:27:47 +03:00
Trueffel 151c5099ab d_a_obj_chest OK (#2136)
* obj_chest all functions matchin

* obj_chest OK & some renaming

* update progress & remove asm
2024-04-21 15:27:36 +03:00
Caroline Madsen d253deb2b9 d_a_do done but nonmatching, d_a_obj_food OK (#2135) 2024-04-17 17:47:22 +03:00
Pheenoh ddb1f42c69 Misc cleanup (#2134)
* Merge remote-tracking branch 'upstream/main'

* rm search terms alias (ended up not using it)

* typo fix
2024-04-15 20:23:53 -06:00
TakaRikka a0a5d6b00a d_a_tag_event / d_a_tag_chkpoint done (#2133)
* cleanup evtarea

* d_a_tag_chkpoint done

* d_a_tag_event done

* remove asm
2024-04-15 18:39:47 -06:00
hatal175 ae4ef8e69d daKnob20_c OK (#2132) 2024-04-15 17:26:26 -07:00
hatal175 fafbfcb833 daBdoorL5 OK (#2129)
* daBdoorL5 OK

* Remove dol2asm from d_a_door_dbdoor00
2024-04-14 15:01:11 -07:00
Jeff Padgham 5ffd54f286 d_a_npc_tr (#2131)
* Fixed some issues, mostly done besides some data problems in action

* Decomp OK

* Cleanup pass

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
2024-04-14 14:01:42 +03:00
Caroline Madsen 5ec6df0d24 d_a_npc_ne fixes (#2130) 2024-04-14 14:01:24 +03:00
hatal175 4218910e41 Fix some issues in d_a_e_fz (#2128) 2024-04-12 07:27:01 -06:00
Pheenoh a61e3491f7 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
hatal175 b36f0f9366 daBdoorL1_c OK (#2126) 2024-04-11 23:00:55 -07:00
hatal175 52c58c8350 daBdoor_c OK (#2124) 2024-04-10 13:35:29 -07:00
hatal175 3172c9d640 daE_OctBg_c OK (#2121)
* daE_OctBg_c OK

* Rename data

* Remove comments
2024-04-10 13:34:53 -07:00
Caroline Madsen 197282b084 d_a_sq and d_a_npc_sq OK (#2123) 2024-04-09 19:47:50 +03:00
Caroline Madsen 4d614bdf5b JPABaseShape OK (#2125) 2024-04-09 08:15:03 +03:00
Caroline Madsen ed8606868f m_Do_graphic mostly OK (#2122) 2024-04-08 07:45:53 +03:00
Caroline Madsen 73ead19443 work on d_a_npc_the and d_a_npc (#2120) 2024-04-04 16:05:50 -07:00
hatal175 54d864e390 obj_wflag_class OK (#2119) 2024-04-01 16:10:26 -06:00
Trueffel a8dd0a1961 d_a_obj_pleaf OK (#2118) 2024-04-01 20:15:39 +02:00
hatal175 5fce7e3989 daObjWCover_c OK (#2117) 2024-04-01 12:06:45 +03:00
hatal175 baf696d9b8 daObjTrnd2_c OK, daObjTrnd_c done except one function (#2111)
* work on d_a_tornado_obj

* daObjTrnd2_c OK
2024-04-01 12:06:32 +03:00
Jeff Padgham db80914e40 d_a_obj_yobikusa OK (#2116)
* Decomp OK

* Initial cleanup pass

* Light documenting and formatting pass

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-31 12:33:18 +03:00
Trueffel 4cbf3e121b Some documentation on d_menu_fishing (#2115)
* d_menu_fishing documentation pass

* some changes on d_menu_ring and d_menu_skill
2024-03-31 10:09:48 +03:00
hatal175 a42689be47 d_menu_ring OK (#2114) 2024-03-30 22:18:52 +01:00
Trueffel 9f46b4bea2 Match all funcs in d_menu_ring (#2113)
* d_menu_ring OK but something is not matchin

* at least matching without NONMATCHING again

* add note

* some docs about items

* fix i_nameID and i_expID

* revert my setBlackWhite change

* remove unused asm

* update progress

* m_Do_graphic functions match but I'm not able to remove data
2024-03-30 22:45:15 +03:00
Caroline Madsen 99facf7c94 d_a_e_bee mostly done (#2112) 2024-03-30 20:04:34 +03:00
TakaRikka 483253ae43 b_bq done (except weak funcs) (#2110) 2024-03-28 08:49:59 +02:00
hatal175 a9d182d6cf d_a_obj_fan OK (#2109)
* Change daTag_EvtArea_c::chkPointInArea to inline

* d_a_obj_fan OK
2024-03-26 17:57:51 -07:00
Caroline Madsen 7da5cdee56 d_a_e_nest OK (#2108)
* d_a_e_nest OK

* complete merge
2024-03-25 20:41:20 +02:00
Huitzi 023c06c573 d_a_tag_statue_evt OK (#2107)
* d_a_tag_statue_evt OK

* Modification according to review
2024-03-24 19:21:22 +02:00
hatal175 3e2b193c0f daFmtMng_c OK (#2106) 2024-03-24 12:31:59 +01:00
Jeff Padgham 0bbf2516bb d_a_obj_saidan OK (#2105)
* Initial cleanup pass

* Functions OK, TU KO (unknown mismatch in TU with moveProc)

* Documentation pass

* Cleanup and remove asms

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-22 14:58:12 +02:00
TakaRikka c662719bfc work / documentation on d_a_b_ds (#2104)
* document / cleanup a good chunk of d_a_b_ds

* fix d_a_b_ds nonmatching file
2024-03-22 14:56:28 +02:00
Caroline Madsen 5845e695ce fix setLightTevColorType_MAJI usage (#2103) 2024-03-20 14:41:42 -07:00
Trueffel 4ea2b399be Work on multiple files (#2102)
* d_menu_skill OK

* remove asm and update progress

* work on multiple files

* remove asm

* update progress
2024-03-20 00:10:26 -07:00
hatal175 eb086d59c1 d_a_b_ds - minor fixes (#2101) 2024-03-19 13:49:17 -07:00
hatal175 14b18b4493 Match most of d_file_select (#2100) 2024-03-19 13:45:53 -07:00
TakaRikka 25d51079a3 remove "duplicated" inlines (#2099)
* fix f_op_actor_mng inlines

* fix f_pc inlines

* fix d_a_alink weak func signatures

* fix d_com_inf_game inlines

* fix some more inlines

* fix rest of player inlines

* m_Do / JSystem inlines fixed

* fix upstream changes
2024-03-19 13:31:53 +02:00
Caroline Madsen 38e0f8927a d_a_b_ds mostly done (#2098) 2024-03-17 15:53:08 -07:00
jdflyer df77eae2b3 Fix make game (#2097) 2024-03-15 00:35:29 -07:00
Trueffel 75dcb31980 d_menu_skill OK (#2096)
* d_menu_skill OK

* remove asm and update progress
2024-03-15 07:38:43 +02:00
TakaRikka e4d6e610f6 d_a_mirror done, d_a_ni 99% done (#2095)
* d_a_mirror done

* d_a_ni 99.9% done

* remove asm

* some d_a_ni doc

* progress
2024-03-14 08:28:01 +02:00
Trueffel 42418393d5 Fix d_menu_fishing & d_menu_insect vtable (#2094) 2024-03-13 19:51:10 -07:00
Jeff Padgham 567a12ac9a d_a_obj_lv3Candle OK (#2093)
* All methods matching

* Some cleanup, stuck on TU match

* d_a_obj_heavySw OK (#2091)

* match functions

* Match TU

* Cleanup

* remove asm and update progress

* d_a_obj_sekizo OK (#2092)

* Test commit.

* Match initBaseMtx and setBaseMtx

* Match Create, Draw. Execute almost matched.

* Match Execute and simpler functions.

* Misc changes for pause.

* Match CreateHeap and Delete. Start cleanup.

* Match create(). Update inherited fopAc_ac_c members.

* Most of sekizo matched, but .data has extra zeros (param_c underutilized?).

* Minor cleanup.

* Remove unused asm and update progress.

* Fix progress.

* Casting and cullMtx feedback.

* Decomp OK, minor cleanup

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
Co-authored-by: Trueffel <106771418+Trueffeloot@users.noreply.github.com>
Co-authored-by: ErraticOocca <161252953+ErraticOocca@users.noreply.github.com>
2024-03-13 17:23:47 +02:00
ErraticOocca 86af5df121 d_a_obj_sekizo OK (#2092)
* Test commit.

* Match initBaseMtx and setBaseMtx

* Match Create, Draw. Execute almost matched.

* Match Execute and simpler functions.

* Misc changes for pause.

* Match CreateHeap and Delete. Start cleanup.

* Match create(). Update inherited fopAc_ac_c members.

* Most of sekizo matched, but .data has extra zeros (param_c underutilized?).

* Minor cleanup.

* Remove unused asm and update progress.

* Fix progress.

* Casting and cullMtx feedback.
2024-03-10 16:12:33 -07:00
Trueffel dd0fd674f9 d_a_obj_heavySw OK (#2091)
* match functions

* Match TU

* Cleanup

* remove asm and update progress
2024-03-10 13:50:28 +02:00
Jeff Padgham 67250f6b5d d_a_obj_rock small cleanup and doc pass (#2089)
* A bit more cleanup and another small doc pass

* d_a_obj_digsnow OK (#2090)

* Decomp OK

* Cleanup and format pass, removing unused asm

* Updating progress

* Additional cleanup and PR feedback

---------

Co-authored-by: GinNoOokami <noreply>

* Updating names based on feedback

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-09 22:12:03 -08:00
Jeff Padgham 1672cfacce d_a_obj_digsnow OK (#2090)
* Decomp OK

* Cleanup and format pass, removing unused asm

* Updating progress

* Additional cleanup and PR feedback

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-09 17:21:58 -08:00
Jeff Padgham 6698b38726 d_a_obj_rock OK (#2088)
* ~99% matching, few regalloc and ordering issues

* Decomp OK

* Format pass and remove asms

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-09 08:55:53 +02:00
Caroline Madsen 2f935526dc d_a_obj_kabuto OK (#2087) 2024-03-09 08:55:39 +02:00
hatal175 f9a14b7c38 d_a_obj_swBall* work (#2086)
* d_a_obj_swBall* work

* ASSERT -> JUT_ASSERT
2024-03-09 08:46:03 +02:00
TakaRikka ba4847e9cc 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
TakaRikka 22e941fd8c d_a_tbox2 done, f_op_actor_mng cleanup, cleanup fopAc_ac_c member names (#2084) 2024-03-04 18:33:13 -07:00
Jeff Padgham 7ba8c332c7 d_a_obj_catdoor OK (#2083)
* Decomp OK

* Cleanup pass, removing unused asm

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-03 17:21:16 +02:00
Jeff Padgham 9b87f613c8 d_a_obj_bkdoor OK (#2082)
* bkdoor decomp OK

* Cleanup and document pass

* Updating progress after merge conflict

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-02 08:25:27 +02:00
Jeff Padgham 218f15ab6d d_a_tag_kago_fall OK (#2081)
* WIP, about half done

* Decomp OK

* Some more cleanup and first documentation pass

* Cleaning up unused asm

* Fixing static msg object access and a bit more cleanup

* Updating progress

---------

Co-authored-by: GinNoOokami <noreply>
2024-03-01 14:41:50 -08:00
Caroline Madsen f1c0e88446 d_a_obj_cho OK (#2080) 2024-02-28 01:41:16 -08:00
Jeff Padgham 555e4bc19e d_a_tag_Lv8Gate OK (#2079)
* Initial pass of d_a_tag_Lv8Gate, lots to do still

* Another decomp pass, most are close but several nonmatching still

* All functions match, needs final cleanup pass

* Decomp OK

* Format pass and some minor cleanup

* Another minor cleanup pass

* Forgot to format, updating progress doc

* Removing asm files

* Removing empty ctor (not needed for match)

* Implementing PR suggestions

* Tiny bit more cleanup based on PR feedback

---------

Co-authored-by: GinNoOokami <noreply>
2024-02-28 01:41:01 -08:00
Jeff Padgham 0e41460e3e d_a_obj_table OK (#2076)
* Initial pass, 1 nonmatching

* Some cleanup, got the last mostly matching

* d_a_obj_table decomp OK

* Format pass

* Minor cleanup pass

* Removing unused asm files

* Updating a magic number with an appropriate method

* fix compiler zip endpoint (#2077)

* remove dkp dependency (#2078)

* Some changes and cleanup to address PR feedback

* Cleaning up static Create method with Taka's help

---------

Co-authored-by: GinNoOokami <noreply>
Co-authored-by: TakaRikka <38417346+TakaRikka@users.noreply.github.com>
2024-02-25 21:54:23 -08:00
TakaRikka d72e2c95e5 remove dkp dependency (#2078) 2024-02-25 06:46:55 -07:00
TakaRikka 9cf4926464 fix compiler zip endpoint (#2077) 2024-02-25 04:03:58 +01:00
hatal175 c471449d0e d_menu_map_common OK (#2075) 2024-02-18 09:55:58 +02:00
TakaRikka fa3be5d11d d_map OK (#2074) 2024-02-17 20:47:45 +01:00
hatal175 8164c34142 Work on d_menu_dmap (#2073)
* Move some J2DPicture inlines to header

* Work on d_menu_dmap

* JASBasicInst OK

* JASCalc cleanup
2024-02-16 18:22:01 -08:00
TakaRikka 672990a0b0 e_arrow OK (#2072)
* e_arrow done

* remove asm
2024-02-16 09:51:12 +02:00
TakaRikka 101223804a Obj_Oiltubo done (#2071) 2024-02-15 00:11:05 +01:00
TakaRikka e1c5bdb539 d_a_e_yd_leaf and d_a_e_ph done (#2070)
* d_a_e_yd_leaf done

* d_a_e_ph OK

* remove asm

* some e_ph doc

* match dBgS_Acch, fix f_op_actor_mng weak funcs

* dBgS_Acch done

* cleanup dBgS Chk TUs

* d_a_obj done
2024-02-13 11:21:57 -07:00
Caroline Madsen d183f6593a JAS work (#2069) 2024-02-11 07:29:35 +02:00
hatal175 df653e1d34 J2D work (#2068) 2024-02-10 05:45:24 +02:00
hatal175 9f38190f00 Work On JAudio (#2067)
* Match two JASTrack functions

* dsptask, JAISoundStarter OK. Other small matches

* Work on JAIStream

* Work on JAIStreamMgr

* Work on JAISeqMgr

* Formatting
2024-02-08 15:30:28 -08:00
Trueffel 95176edb82 d_a_obj_wind_stone OK (#2066)
* set up TU

* d_a_obj_wind_stone OK
2024-02-08 14:35:24 +02:00
Caroline Madsen a825c39d93 work on JASTrack (#2065) 2024-02-07 02:41:47 +02:00
hatal175 c19d9b02be J3D work (#2064) 2024-02-06 07:04:35 +02:00
hatal175 e98d9c845c Fix some JSUConvertOffsetToPtr issues (#2063)
* Fix some JSUConvertOffsetToPtr issues

* Match some J3DAnmLoader functions
2024-02-05 07:21:05 +02:00
jdflyer f260221f43 d_a_obj_lbox OK (#2062)
* d_a_obj_lbox

* Remove Asm and Progress
2024-02-05 05:30:48 +02:00
Caroline Madsen 658cb52118 work on d_a_door_boss (#2061) 2024-02-04 14:38:58 -08:00
hatal175 0bde0ac354 d_a_obj_ystone OK (#2060) 2024-02-03 16:54:01 -08:00
hatal175 c4cd497fd6 Work on Z2EnvSeMgr (#2059) 2024-02-03 02:28:50 -08:00
Caroline Madsen 228b5e17d8 d_a_obj_bosswarp and d_a_obj_ystone mostly done (#2058) 2024-02-03 06:12:31 +02:00
Caroline Madsen 9774b42db8 d_a_obj_mirror_screw OK, work on d_a_obj_mirror_chain and d_a_obj_mirror_table (#2057) 2024-01-31 20:49:22 +02:00
TakaRikka 4a081109bd d_a_no_chg_room / d_a_e_st_line done (#2056)
* no_chg_room done

* d_a_e_st_line done

* remove asm

* d_a_e_bi_leaf done

* d_a_e_hb_leaf done
2024-01-31 20:05:04 +02:00
Caroline Madsen 255cc868e4 work on Z2SoundMgr and Z2SeMgr (#2055) 2024-01-30 16:08:37 -08:00
hatal175 1c891adeb8 work on functionvalue (#2054) 2024-01-30 16:02:22 -08:00
Caroline Madsen 16259ec265 Z2SeqMgr mostly done (#2053) 2024-01-29 15:50:13 -08:00
TakaRikka 36a29bc4fe various fixes / matches (#2052)
* some fixes in d/s, d_item, d_shop

* fix for dKankyo_DayProc weak generation

* d_cc_uty fix

* some d_name / d_com_inf_game / f_op_actor_mng matches

* fix some player inline virtuals

* remove asm
2024-01-29 17:39:51 +02:00
TakaRikka 7f0ba98c9f cleanup msg scrn (#2051)
* msg_scrn_light done

* update include paths

* some cleanup

* fix build
2024-01-27 11:43:19 +02:00
Caroline Madsen 3470c4eb34 Z2Creature mostly done (#2049) 2024-01-26 18:11:28 -08:00
hatal175 9d331d712e d_msg_scrn_light,d_msg_scrn_kanban ok (#2050)
* d_msg_scrn_light ok

* d_msg_scrn_kanban OK
2024-01-26 17:57:16 -08:00
hatal175 1ea10fcc63 More jstudio work (#2048) 2024-01-25 14:50:55 -08:00
Caroline Madsen 4640b758c9 d_a_obj_cdoor OK, d_a_obj_wchain mostly done, work on d_a_alink_wolf (#2047) 2024-01-25 19:24:38 +02:00
TakaRikka ba44ade90c 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 b2310b84b6 A little work on jstudio (#2045) 2024-01-23 15:05:15 -08:00
Caroline Madsen 69328d71ed d_a_obj_bsGate, d_a_obj_window OK (#2041)
* d_a_obj_bsGate, d_a_obj_window OK

* MInor fixes
2024-01-23 14:42:38 +02:00
hatal175 ea041b9d95 d_shop_camera, d_shop_item_ctrl OK (#2044) 2024-01-22 12:24:24 -08:00
TakaRikka 697cd08979 some various J2D/J3D work (#2043)
* most of J2DPicture done

* fix GXSetTexCoordGen

* some j3d work
2024-01-22 17:23:54 +02:00
hatal175 5a735a4956 Fix _stack_addr to match OSInit and __OSThreadInit (#2042) 2024-01-21 16:51:34 -08:00
hatal175 0228b4e03b Work on d_msg_scrn_howl + misc (#2040) 2024-01-21 01:15:22 -08:00
Caroline Madsen 9f372c40d5 d_a_obj_ki OK (#2039) 2024-01-20 19:41:05 +02:00
TakaRikka 49a4319fb8 OSLink done (#2038) 2024-01-20 12:53:06 +02:00
Caroline Madsen 5ad3727d17 work on d_a_npc_ne (#2037) 2024-01-19 16:57:56 -08:00
TakaRikka 981cfe7283 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
hatal175 f97fc769df d_s_play OK, work on d_a_ykgr (#2035) 2024-01-17 15:19:10 -08:00
TakaRikka 772a04851c d_timer / d_bright_check done (#2034)
* d_bright_check mostly fixed

* d_timer done

* remove asm
2024-01-17 13:04:43 +02:00
hatal175 b27b6b287c d_s_room OK (#2033) 2024-01-16 04:20:47 -08:00
hatal175 ead852383f Work on Z2AudioLib (#2032) 2024-01-13 05:41:29 -08:00
TakaRikka 6260020b3e all d_ovlp_fade done (#2031)
* ovlp_fade / ovlp_fade2 done

* ovlp_fade3 done

* remove asm
2024-01-13 11:46:47 +02:00
TakaRikka 4bd825e76c most of TRK done / some misc work (#2030)
* work on d_file_sel_warning

* various cleanup

* attempt to fix d_gameover

* event cleanup

* trk work

* most of TRK done

* remove asm
2024-01-12 18:43:52 -08:00
hatal175 f342bd7171 Import JASCmdStack, std-vector work, Z2StatusMgr OK (#2029)
* Import JASCmdStack

* Work on std-vector

* Z2StatusMgr OK
2024-01-11 01:16:40 +02:00
TakaRikka 99f0efe975 d_meter2_draw done (#2028)
* d_meter2_draw done

* some meter_draw doc

* remove asm

* d_file_sel_info fixed
2024-01-09 16:10:40 +02:00
hatal175 28bef08667 Work on Audio, JAUSeqDataBlockMgr OK (#2027) 2024-01-08 15:19:07 -08:00
Trueffel 40dae638a7 Work on Collection Menu (d_menu_collect) (#2026)
* work on d_menu_collect

* match few funcs

* work on screenSet

* More work on d_menu_collect

* remove asm

* format document

* document fields

* rename variable

* Fix compiler error
2024-01-08 15:16:02 -08:00
hatal175 a8a159ae2c Various Matches, J2DTextBoxEx and J2DTevs OK (#2025)
* Work on src/d/bg

* misc work

* J2dTextBoxEx OK

* J2DTevs OK

* Better return values for bool
2024-01-08 12:10:05 +02:00
Caroline Madsen dea6243c35 Fix type signatures of cLib_*Bit functions (#2024) 2024-01-05 22:48:32 -08:00
TakaRikka 2e15998e7a d_meter_string done (#2023)
* d_meter_string done

* remove asm

* some other d_meter fixes
2024-01-03 16:12:17 +02:00
jdflyer f5bf24c77e fix yaz0.py (#2022) 2024-01-02 21:59:58 -08:00
hatal175 d5d59471ea Match most of d_msg_string_base (#2021) 2024-01-02 19:37:15 -08:00
jdflyer be10df4760 libstage.py (#2019)
* libstage.py

* Cleanup and VRB Extract
2024-01-02 20:59:37 +02:00
TakaRikka 51ba05b54a d_meter_hakusha done (#2020)
* meter_hakusha done

* remove asm
2024-01-02 20:59:20 +02:00
TakaRikka dde6a466b1 kgate / d_meter_button / d_meter_haihai done, obj_ice_l wip (#2018)
* kgate OK, ice_l wip

* d_meter_button done

* remove asm

* d_meter_haihai done

* remove asm
2024-01-02 01:09:41 +02:00
Caroline Madsen fe92c18c83 work on J3DGD (#2017) 2023-12-31 18:49:08 +02:00
hatal175 68e857b4da Match most of d_attention (#2016)
* Make decompctx work with MSL includes

* Match most of d_attention
2023-12-29 21:59:33 +02:00
hatal175 402666242b work on d_msg_class and JUTResFont (#2015)
* JUTResFont - Set symbols on

* Work on d_msg_class
2023-12-28 22:45:53 +02:00
Jacob Patzer 3b7c793ac9 d_a_obj_bk_leaf OK (#2007)
* d_a_obj_bk_leaf OK

* Fix daObjCarry_c::make_prm

---------

Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2023-12-28 17:38:36 +02:00
Caroline Madsen 9780adcc4e work on J3DMaterialFactory and J3DMaterialFactory_v21 (#2012) 2023-12-28 02:17:39 +01:00
Caroline Madsen 83969f6dc1 clean up some objects (#2014) 2023-12-28 01:54:45 +01:00
NicolaTesula ea80e8440c d_a_obj_graWall OK (#2013) 2023-12-25 22:10:39 +02:00
TakaRikka a7edd19f16 MSL_C fully matched / some SSystem cleanup/ obj_rgate OK (#2011)
* cleanup SSystem files

* MSL_C fully matched

* fix build

* remove asm

* reorganize MSL_C/Runtime libs into more accurate setup

* little more cleanup

* cleanup some MSL headers

* obj_rgate OK

* remove asm

* some rgate documentation
2023-12-25 17:31:05 +02:00
Caroline Madsen b9ffe811fd d_a_obj_chandelier OK (#2010) 2023-12-22 02:59:53 -08:00
hatal175 3fb456635b d_meter_HIO OK + misc (#2009) 2023-12-22 02:56:56 -08:00
Caroline Madsen 064f444c0f d_a_obj_zra_freeze, d_a_obj_zrTurara mostly OK, d_a_obj_zrTuraraRock OK (#2008) 2023-12-21 11:35:34 +02:00
Jacob Patzer be1764e060 More work on d_a_myna (#2005) 2023-12-18 01:24:36 +02:00
hatal175 cce0130025 Work on d_a_mg_fshop (#2006) 2023-12-18 01:24:15 +02:00
TakaRikka 6e58e660d5 work on link bow, kandelaar, and whistle (#2004) 2023-12-15 16:04:05 +02:00
Caroline Madsen 8293fb7c22 d_a_obj_zra_rock OK (#2003) 2023-12-14 15:19:19 -08:00
Caroline Madsen e7a6eb10b5 work on J3DShapeMtx (#2002)
* work on J3DShapeMtx

* update Progress.md
2023-12-13 06:42:38 +02:00
Jcw87 6eb299f0c3 J2DPrint::parse (#2001) 2023-12-13 06:39:07 +02:00
Trueffel c50f44964d prepare some rels for work (#2000) 2023-12-06 16:01:42 -08:00
hatal175 0de0339250 Some GX work (#1998)
* Some GX work

* GXFrameBuf work

* Import GXAttr functions and enums

* Import most of GXTev

* Import most of GXPixel

* Import GXFifo

* Import some of GXInit

* Import and work on GXTransform

* Import GXPerf

* A little work on GXTexture
2023-12-06 15:57:35 -08:00
Caroline Madsen 28fb711606 d_a_obj_grave_stone OK (#1999) 2023-12-03 14:01:37 +02:00
Keith Lazuka eda795addf Fix build for new contributors (#1994)
* Add pyyaml to Python dependencies

* Add Jetbrains IDE dir to gitignore

* Check magic number on the ISO file
2023-12-01 10:22:38 -07:00
Caroline Madsen c85689c5da d_a_obj_barDesk OK (#1997) 2023-11-30 23:31:59 +01:00
TakaRikka a6d621e0c3 daAlink bottle / sumou done (#1996)
* link_bottle done

* link_sumou done

* remove asm
2023-11-29 19:27:08 +02:00
hatal175 334a1111d5 Import OSFont (#1995) 2023-11-29 04:54:55 -08:00
TakaRikka 9ff0f5029f most of d_a_alink_wolf done / some misc (#1993)
* wip on alink_wolf

* setup procvar unions

* most of d_a_alink_wolf done + some misc
2023-11-27 13:14:06 +02:00
hatal175 6b0df1f30d Work on OSExec, OSReboot OK (#1992) 2023-11-27 01:00:11 -08:00
Trueffel 7a6acf904c d_a_obj_kkanban (Kakariko Sign) OK (#1991)
* d_a_obj_kkanban OK

* format files
2023-11-25 15:58:55 +02:00
hev7 c2fbd42c21 d_a_tag_Lv6Gate almost matching (#1990) 2023-11-23 12:00:57 +02:00
Caroline Madsen 5cc47d7212 d_a_obj_bed OK (#1989) 2023-11-19 06:23:27 +02:00
hatal175 c31a6f988c Some work on m_do_ext (#1988)
* Some work on m_do_ext

* Work on m_do_ext
2023-11-17 23:02:12 -08:00
TakaRikka 519e780f66 almost all of daAlink_demo done (#1987)
* almost all of alink_demo done

* remove asm

* decideDoStatus OK
2023-11-18 06:02:04 +02:00
Caroline Madsen 187eaa2c55 d_a_obj_snow_soup OK (#1986) 2023-11-15 17:01:26 +01:00
hev7 37c0344daa d_a_tag_Lv7Gate OK (#1985)
* d_a_tag_Lv7Gate OK

* Fix switch cases
2023-11-15 16:29:30 +02:00
Caroline Madsen 18cb3aa72f d_a_obj_lv1Candle01, d_a_obj_lv2Candle OK (#1978)
Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
2023-11-12 07:12:21 +02:00
hatal175 0b95ee0c23 Various matches (#1984) 2023-11-11 05:18:11 +02:00
Jacob Patzer bbb38ed305 d_a_obj_ss_item OK (#1983) 2023-11-10 15:21:06 -08:00
Caroline Madsen 46d2283278 work on J3DModelLoader (#1982) 2023-11-08 19:56:00 -08:00
TakaRikka 557d0822e5 work on daAlink horse, hvyboots, cut (#1981)
* work on alink_cut, alink_horse, alink_hvyboots

* remove asm
2023-11-08 15:52:54 +02:00
hatal175 5a2a39f778 Comment out ok check issue updates until fixed (#1980) 2023-11-08 03:59:17 -08:00
hatal175 c6b47d83e1 Work on J2DWindowEx (#1979) 2023-11-08 03:58:56 -08:00
Jacob Patzer 493c5d75e1 d_a_tag_evt OK (#1977) 2023-11-06 08:10:29 +02:00
Caroline Madsen ea52bf09a4 d_a_obj_lvl1Candle00 OK (#1976)
* d_a_obj_lv1Candle00 OK

* Update Progress.md
2023-11-04 17:35:16 +02:00
Caroline Madsen 2b766ef3ba Fix d_msg_flow linkage (#1975) 2023-11-04 01:16:36 +02:00
Jacob Patzer b344f3b796 Work on d_a_myna (#1974) 2023-11-03 05:05:51 +02:00
Trueffel fadcd7bcdf d_a_dbdoor00 OK (#1973)
* initial work on d_a_door_dbdoor00

* dbdoor mostly OK

* finish all functions and header

* remove externs

* remove unused asm
2023-11-02 19:42:44 +02:00
Trueffel e1b1ac6a0c d_a_obj_bbox mostly OK (#1972)
* d_a_obj_bbox mostly OK

* remove unused asm

* better description
2023-11-02 19:36:33 +02:00
Caroline Madsen 30d9eaa052 work on d_a_tbox (#1971)
* d_a_tag_evtarea mostly done, work on d_a_npc

* work on d_a_npc_ash

* work on Z2SoundHandles

* Z2SoundObject, JAUSoundAnimator OK

* Update Progress.md

* work on d_a_tbox
2023-11-02 19:35:31 +02:00
Trueffel cfa5f44bb7 decompile a few daItemKantera_c funcs (#1970)
* attempt on daItemKantera_c

* format cpp
2023-10-28 02:46:18 +03:00
randomsalience b13ff9e3d0 Z2SoundObject, JAUSoundAnimator OK, work on Z2SoundHandles (#1968)
* d_a_tag_evtarea mostly done, work on d_a_npc

* work on d_a_npc_ash

* work on Z2SoundHandles

* Z2SoundObject, JAUSoundAnimator OK

* Update Progress.md

---------

Co-authored-by: randomsalience <randomsalience@gmail.com>
2023-10-26 15:41:03 +03:00
TakaRikka e2d51bf956 d_envse mostly OK. more work on kankyo_rain (#1969)
* d_envse OK, work on kankyo_rain

* remove asm
2023-10-25 23:16:56 +03:00
Jacob Patzer 95d103b237 d_a_tag_push OK (#1967) 2023-10-24 17:10:48 -07:00
Jacob Patzer d61ae29942 Fix cLib_calcTimer (#1963)
* Fix cLib_calcTimer

* Clean up some additional RELs
2023-10-21 15:57:42 -07:00
Jacob Patzer 0ae34ede58 d_a_tag_pachi OK (#1966) 2023-10-21 00:45:35 -07:00
Jcw87 33a285f179 JASHeapCtrl (#1965) 2023-10-20 19:36:29 +03:00
Jacob Patzer c5a25e295c d_a_tag_ss_drink OK (#1964)
* Use fopAcM_GetParamBit inline function in d_a_tag_myna_light

* d_a_tag_ss_drink OK
2023-10-20 02:46:03 +03:00
Jacob Patzer af2d5f8285 Begin work on d_a_myna (#1962) 2023-10-20 01:34:46 +03:00
hatal175 3625dae703 JASSoundParams imported. Work on JASTaskThread (#1961) 2023-10-15 03:27:52 -07:00
Trueffel 69e9173e0f Match a few funcs, optimize some things (#1960)
* match a few nonmatchings

* remove unused asm

* remove stale docs

* add LICENSE.md to project overview in readme
2023-10-13 05:56:17 +03:00
TakaRikka 6229bba991 d_a_andsw2 OK, d_a_player / d_a_alink cleanup, d_a_alink_hook mostly done (#1957)
* d_a_andsw2 OK

* d_a_player cleanup, d_a_alink cleanup and work on d_a_alink_hook

* remove asm

* d_kankyo_wether almost done

* some work on d_kankyo_rain
2023-10-11 01:12:08 -07:00
Trueffel c5b54dd7ec d_a_door_push OK (#1959)
* work on d_a_push_door

* d_a_door_push OK

* remove unused asm
2023-10-10 23:43:24 +03:00
Jcw87 3fa422caac m_Do_ext (#1958) 2023-10-10 23:40:37 +03:00
Jcw87 a64921a519 m_Do_mtx (#1956) 2023-10-06 03:19:54 -07:00
Jacob Patzer 232af7945b d_a_tag_myna_light OK (#1954)
* d_a_tag_myna_light OK

* Clean up d_a_tag_myna_light
2023-10-03 00:24:09 -07:00
TakaRikka 016a5e683b d_kankyo work / d_particle_copoly OK (#1953)
* d_kankyo work / d_particle_copoly OK

* remove asm
2023-09-30 20:53:18 -07:00
jdflyer c1a622058e Begin Fixing files for -sym on (#1952) 2023-09-30 14:49:49 -07:00
hatal175 02e093fc76 JMessage work (#1951) 2023-09-30 14:24:19 -07:00
Trueffel 9fb99d923c Work on d_menu_letter (#1949)
* d_menu_letter first pass

* match more funcs and optimize skill tu

* decompile first rodata sections

* done for now

* remove unused asm

* format d_menu_letter
2023-09-30 20:40:59 +03:00
Jcw87 1b5fb60a98 J3DTevs (#1950) 2023-09-30 14:10:06 +03:00
hatal175 f5f0e57116 JUTResFont OK (#1948) 2023-09-28 12:46:24 -07:00
hatal175 4a424534a5 JUTCacheFont OK (#1947) 2023-09-28 12:32:57 -07:00
TakaRikka 84e4135053 k_wmark / k_wpillar OK, fop actor enums / debug building (#1946)
* d_k_wmark / d_k_wpillar OK

* make debug buildable / add assert functionality

* add more fop actor enums

* remove asm
2023-09-28 12:01:42 -07:00
hatal175 9b4c375741 JGadget binary OK (#1944) 2023-09-26 21:45:37 -07:00
hatal175 8873f7d359 Pull request template no longer needed (#1945) 2023-09-26 21:22:24 +02:00
Jcw87 251f9e2d5e JKRDecomp, JKRFileFinder (#1943)
* JKRDecomp

* JKRFileFinder

* JKRHeap.h size_t
2023-09-25 11:02:29 +03:00
Jcw87 3e46ad6b30 JKernel (#1942) 2023-09-24 02:05:03 -07:00
Jcw87 f26fc0a26c JKRHeap void state_register (#1941) 2023-09-22 23:28:58 +03:00
Jcw87 8904cee412 JUTResFont (#1940) 2023-09-21 17:05:10 +03:00
Jcw87 6786efe712 JUTProcBar (#1939) 2023-09-21 14:56:39 +03:00
Jcw87 540a9ef64e JUTConsole, JUTException (#1938) 2023-09-20 15:30:44 +03:00
Trueffel febfd40837 make nbomb inherit instead of creating a fopAc_ac_c object (#1937)
* make nbomb inherit instead of creating an object

* add newline at the end of the cpp
2023-09-19 13:43:05 -07:00
Jcw87 f123de29e6 JUTGamePad (#1936) 2023-09-19 20:43:11 +03:00
Jcw87 5b86df6000 JKRArchive debug rom (#1935) 2023-09-19 03:46:45 -07:00
hatal175 e5cb9ce472 JAUSeqCollection, JAUSoundTable OK (#1932) 2023-09-19 03:45:39 -07:00
Trueffel 6726d1cf47 d_menu_insect basically OK, optimizations, match one func in d_menu_ring (#1934)
* next d_menu_insect pass

* work on d_menu_ring & d_menu_insect

* d_menu_insect basically OK

* remove unused asm
2023-09-18 07:39:57 +03:00
hev7 d1db2e48ea d_a_obj_lv3saka00 OK (#1933) 2023-09-17 19:27:40 +03:00
hev7 b6369be75b d_a_obj_swspinner OK, d_a_obj_lv4gear OK (#1931) 2023-09-16 20:22:57 +03:00
Jcw87 453eedacfa JKRArchive (#1930) 2023-09-16 20:18:45 +03:00
TakaRikka 76b94a8916 fix/simplify assert macros (#1929) 2023-09-16 20:17:56 +03:00
Trueffel 3d8048edba first d_menu_ring (item wheel) pass (#1928)
* first pass on d_menu_ring

* d_menu_item_explain mostly OK

* match ptmf's and sinit

* format d_menu_item_explain

* first item wheel pass to pr

* fix seStart calls

* d_menu_item_explain OK
2023-09-16 20:16:57 +03:00
Jcw87 c2193c41eb JKRHeap (#1927)
* JKRHeap

* d_a_link
2023-09-15 16:02:47 -07:00
Jcw87 287ae62349 JAUSectionHeap, Z2SoundInfo, others (#1925)
* Z2SoundInfo

* JAUSectionHeap

* Z2EnvSeMgr

* Z2AudioMgr

* m_Do_audio

* d_a_alink
2023-09-15 15:20:09 +03:00
Jcw87 f834379a8b fix functions not returning values (#1926) 2023-09-15 04:15:46 -07:00
Jcw87 4ab104f390 JASVoiceBank, JASBasicWaveBank, JASBank, JAUSeqCollection (#1924)
* JASVoiceBank OK

* JASBasicWaveBank

* JASBank

* JAUSeqCollection
2023-09-12 18:14:57 +03:00
Pheenoh 696024598c update branch triggers (#1923) 2023-09-11 12:09:15 +03:00
hatal175 874d2ce335 JAUAudioArcInterpreter OK (#1922) 2023-09-10 13:38:19 -06:00
hatal175 c02c183eec Trying to fix author in ok check (#1920) 2023-09-10 11:26:29 -06:00
hatal175 8a146f81b6 Work on J2DPictureEx (#1919) 2023-09-09 23:39:49 +03:00
hatal175 0f4eac4420 d_a_tag_river_back OK (#1921) 2023-09-09 12:38:15 -07:00
hev7 189c40f58c Work on d_a_tag_river_back (#1918) 2023-09-09 13:46:24 +03:00
Jcw87 64faf5012c JAUAudioArcInterpreter, JAUAudioArcLoader (#1917)
* JAUAudioArcInterpreter

* JAUAudioArcLoader OK
2023-09-09 08:26:01 +03:00
TakaRikka 6deaa22a19 d_a_npc / d_a_tag_mhint / d_a_grass work (#1916)
* some npc work / cleanup

* tag_mhint / grass work

* fix path / remove asm
2023-09-07 21:22:55 -07:00
Jcw87 3dd1963a59 JAUInitializer (#1915)
* JAUInitializer

* forgot a couple things
2023-09-07 19:50:36 +03:00
Jcw87 d56a9719ea J3DStruct (#1913) 2023-09-05 12:08:56 -06:00
hatal175 5d723a823f J2DWindow OK (#1914) 2023-09-05 12:08:13 -06:00
Trueffel efa1d31522 d_a_obj_wsword work (#1911) 2023-09-05 13:27:09 +03:00
Jcw87 7f762353ea Fixes for other compilers (#1912)
* remove invalid virtual keywords

* remove duplicate inline

* remove leading 0 in character literals

* add missing public keywords

* fix some struct/class mismatches
2023-09-04 17:17:51 -06:00
hatal175 a8c261a943 JASDSPInterface OK, minor work on JASAiCtrl (#1908) 2023-09-04 16:41:17 +03:00
Jcw87 d98444fe4e J2DWindow (#1910) 2023-09-04 16:41:08 +03:00
Trueffel a6d49a9901 d_menu_option work (#1909)
* d_menu_option work

* done with d_menu_option for now

* remove unused asm

* format document
2023-09-04 16:38:41 +03:00
hatal175 245c839464 Small improvements to JASSeqParser (#1906) 2023-09-02 16:45:06 -07:00
Jcw87 ce78c773b7 JASDriverIF, JASAiCtrl, JASDSPInterface (#1907)
* JASDriverIF

* JASDriverIF sinit

* JASAiCtrl

* JASDSPInterface
2023-09-03 01:34:50 +03:00
Noah McQueen 71b0551040 da_b_Zant_sima OK (#1905)
* d_a_b_zant_sima OK

* d_a_b_zant_sima OK

* d_a_b_zant_sima OK
2023-09-02 16:39:54 +03:00
TakaRikka 6432e1541e setup dolphin VEC/MTX function defines (#1903)
* setup VEC function defines

* setup MTX function defines
2023-09-02 16:38:08 +03:00
Jcw87 2d45b68231 JASTrackPort, JASSeqCtrl.h, JASSeqParser (#1904)
* JASTrackPort OK

* JASSeqCtrl.h

* JASSeqParser

* progress

* Move JSU inlines
2023-09-01 11:55:46 +03:00
TakaRikka 6c4509ceed tag_evtmsg and d_bg_w_sv OK (#1902)
* tag_evtmsg and d_bg_w_sv OK

* remove asm
2023-08-31 14:34:59 +03:00
TakaRikka 023bd31883 obj_mirror_6pole / obj_mirror_sand / obj_myogan OK, obj_hbombkoya wip (#1901)
* obj_mirror_6pole / obj_mirror_sand OK. d_bg_w vtables fixed

* obj_myogan OK, obj_hbombkoya mostly done
2023-08-30 16:33:56 +03:00
hatal175 4c5c3a8964 c_m3d, c_request OK. Work on Z2Audience (#1900) 2023-08-29 17:43:28 -06:00
Jcw87 6a4e50e74b d_file_select::dFile_select3D_c (#1899) 2023-08-27 21:09:20 -06:00
TakaRikka d369e2908c obj_master_sword wip, fmobj mostly done, obj_usaku OK, some BG doc (#1897)
* obj_master_sword work, fix tag_chgrestart

* fmobj mostly done

* some bg documentation

* d_a_obj_usaku OK

* remove asm
2023-08-27 11:39:15 +03:00
Noah McQueen 73cdbf5495 daNpcCd work (#1896)
* daNpcCd work

* Work on daNpcCd, daNpcCd2, and related libraries.

* Work on daNpcCd, daNpcCd2, and related libraries.
2023-08-25 08:25:23 +03:00
TakaRikka 775667ef1e obj_magLiftRot mostly done, obj_suisya / obj_tgake OK (#1895)
* obj_magLiftRot mostly done, obj_suisya / obj_tgake OK

* remove asm
2023-08-24 12:05:11 +03:00
hatal175 eba4ca3b13 Work on d_bg_w (#1894) 2023-08-23 09:40:37 -06:00
Pheenoh 1f75e16efc m_Do_mtx (#1893)
* m_Do_mtx

* fix author

* rm dummy file
2023-08-22 06:20:21 +03:00
Jcw87 5601eae629 J2DTevs (#1892) 2023-08-21 16:38:12 +03:00
Pheenoh 697e3a5260 gha-fix (#1891) 2023-08-21 10:24:55 +03:00
Pheenoh 2d5c38e022 d_a_obj_carry work, setup static shape data (#1890) 2023-08-20 22:10:09 -06:00
hatal175 cf0b47a5ba Various Matches and Improvements (#1889) 2023-08-20 18:11:10 +03:00
Noah McQueen 42c47c82a7 Some tiny Z2Creature matches (#1888) 2023-08-19 16:57:50 +03:00
hatal175 00bbaf6216 Z2WolfHowlMgr, d_bg_s, quat OK (#1887) 2023-08-18 01:01:51 -06:00
TakaRikka 114582643f Kytag00 / Vrbox2 work, some cphase / kankyo doc (#1886)
* kytag00 work

* d_a_vrbox2 close to done

* rename cPhase enum values

* some enums from noclip / kankyo doc

* remove asm

* use macro

* uncomment ok-check.yml
2023-08-16 14:32:40 -06:00
Pheenoh 7fd7d0c1f3 d_a_obj_carry work, SETUP_ACTOR macro, header cleanup (#1885)
* d_a_obj_carry work, SETUP_ACTOR macro

* rm headers, add script

* progress

* macro rename, consistent spacing
2023-08-16 12:07:52 -07:00
hatal175 f441e06d19 Work on JPABaseShape (#1884) 2023-08-14 10:04:01 -06:00
Pheenoh da21df7ee7 d_a_tag_chkpoint WIP, d_a_tag_myna2 OK (#1883)
* d_a_tag_chgrestart

* d_a_tag_bottle_item

* deps fix

* more d_a_tag_chkpoint, d_a_tag_myna2 OK

* Fix Build Scripts (#1879)

* d_a_npc_fish (#1880)

* d_drawlist (#1881)

* comment

* progress

* progress

---------

Co-authored-by: jdflyer <jdflyer10@gmail.com>
Co-authored-by: Noah McQueen <67965519+Yotona@users.noreply.github.com>
Co-authored-by: Jcw87 <Jcw87@users.noreply.github.com>
2023-08-13 23:45:56 -06:00
Jcw87 a997bb00bc d_drawlist (#1881) 2023-08-14 07:08:32 +03:00
Noah McQueen 9ae61771ec d_a_npc_fish (#1880) 2023-08-14 06:59:03 +03:00
jdflyer 7e8fd320bd Fix Build Scripts (#1879) 2023-08-13 17:46:24 -07:00
Pheenoh 91d04c794d d_a_tag_bottle_item OK, d_a_tag_chgrestart work (#1878)
* d_a_tag_chgrestart

* d_a_tag_bottle_item

* deps fix
2023-08-13 05:03:43 -06:00
TakaRikka 08fa2f03fc Kytag09 and Kytag11 OK, work on d_a_bg_obj and d_kankyo (#1877)
* work on kankyo / d_a_bg_obj

* d_a_bg_obj work / kytag09 and kytag11 OK

* remove asm
2023-08-12 18:09:47 -06:00
Pheenoh c8bb857b13 Assignees (#1876)
* checkpoint

* finish adding assignee support

* test

* use test command

* use test command

* skip build check

* add state to common options, move version check

* cleanup ok-check

* undo dylink change
2023-08-11 00:51:32 -06:00
hatal175 380f00f331 JPAEmitter OK, work on d_particle (#1874)
* JPAEmitter OK + header reorganization

* libelf: silence repeated relocation warning

* Work on d_particle
2023-08-11 05:04:50 +03:00
Pheenoh d24b09c2d9 d_file_select work + misc changes (#1873)
* setup TU

* JASResArcLoader OK

* d_a_obj_stoneMark work

* some funcs in d_a_obj_stoneMark

* many changes

* quat, d_a_obj_stone, d_a_alink, fix python script, tidy makefile

* d_file_select functions + pr cleanup

* match many dfile_select_c methods

* m_Do_main OK

* selFileWakuAnm & bookIconAnm

* selCopyFileWakuAnm & copyBookIconAnm

* dataDelEffAnm & dataCopyEffAnm

* selectDataBaseMoveAnmInitSet & selectDataBaseMoveAnm

* dataSelectIn

* _move & dataSelectInit

* match a few more

* comment

* J2DPicture::drawTexCoord

* draw_function

* dScnPly_Create + fix typing on request_of_phase_process_fn

* checkpoint

* checkpoint

* checkpoint

* checkpoint 2 (fixed)

* dFile_select_c::dataSelectAnmSet

* dFile_select_c::selectDataOpenMove

* dFile_select_c::copySelMoveAnmInitSet

* fix brightcheck issues

* rm comments, fix status update

* small mod to pr template
2023-08-10 03:57:49 -06:00
Pheenoh 244892aeb8 Github Projects (#1872)
* github projects

* add project prefixes
2023-08-09 16:27:37 -06:00
hatal175 bb546a286f JPAMath OK (#401) 2023-08-07 09:31:06 -06:00
hatal175 dc985026fa Jsystem work (#399)
* Almost match JASBasicInst

* JASDrumSet OK

* Some JAudio2 struct adjustment

* Match JKRHeap::callAllDisposer

* JAISe OK

* Fix setAutoDelete

* JAISound OK

* Match a few functions in linklist

* Few matches in d_a_e_ym

* JUTTexture OK

* Work on JUTGamePad

* Import JUTResource

* Work on JUTResFont::getFontCode
2023-08-05 21:12:26 -06:00
hatal175 8b34c0210f Merge pull request #400 from Trueffeloot/d_a_spinner-work
work on d_a_spinner
2023-08-06 06:10:56 +03:00
Trueffeloot 166d6fc0e5 work on d_a_spinner 2023-08-05 22:58:21 +02:00
hatal175 044f4753be Merge pull request #398 from Trueffeloot/d_a_boomerang-work
work on d_a_boomerang
2023-08-04 08:42:06 +03:00
Trueffeloot b2d9d70b62 format d_a_boomerang.cpp 2023-08-03 23:20:43 +02:00
Trueffeloot dcec254788 work on d_a_boomerang 2023-08-03 23:13:13 +02:00
hatal175 0300993e11 Merge pull request #397 from Yotona/TRK-work
synced portions of TRK lib with other decomps
2023-08-03 05:21:50 +03:00
Yotona 473736fb6a synced portions of TRK lib with other decomps 2023-08-02 16:40:42 -06:00
hatal175 f3f944c797 Merge pull request #396 from TakaRikka/swprop
d_a_obj_swpropeller OK, work on d_kankyo / kytag08
2023-08-02 18:46:40 +03:00
TakaRikka 392f6101ca remove asm 2023-08-02 01:36:58 -07:00
TakaRikka 623622b9b6 more kankyo work / d_a_kytag08 work 2023-08-02 01:31:23 -07:00
TakaRikka 9773c9dbf1 some more kankyo work 2023-08-02 01:31:23 -07:00
TakaRikka 854fb607b9 d_a_obj_swpropeller OK, work on d_kankyo / misc 2023-08-02 01:31:23 -07:00
hatal175 24161e34d2 More Jsystem stuff (#395)
* JASProbe OK

* JASRegisterParam OK

* Import JASReport

* JASDvdThread OK
2023-08-02 01:30:52 -07:00
hatal175 2275eb710b Work on J2DMaterialFactory (#394)
* Work on J2DMaterialFactory

* J3DUClipper OK

* Work on JAISoundStarter

* JAISoundHandles OK

* JAISoundInfo OK

* Fix JAISound::isStopping

* Work on J2DTextBoxEx

* dspproc OK

* osdsp OK

* osdsp_task OK

* Work on dsptask

* Import some JASCalc code

* JASCallback OK

* JASOscillator OK

* JASLfo OK
2023-08-01 00:17:21 -07:00
hatal175 396449b597 Merge pull request #393 from Yotona/daTagLightBall
daTagLightBall OK
2023-07-28 17:32:30 +03:00
hatal175 a82cc2a4d6 Merge branch 'master' into daTagLightBall 2023-07-28 17:05:44 +03:00
hatal175 014202c8fb Merge pull request #392 from Trueffeloot/d_menu_insect-1
d_menu_insect partly matching
2023-07-28 17:03:43 +03:00
Yotona 68fa601716 daTagLightBall OK 2023-07-27 19:55:39 -06:00
Trueffeloot cf5d185619 format cpp 2023-07-28 02:03:39 +02:00
Trueffeloot 34868eed06 Merge branch 'master' of https://github.com/zeldaret/tp into d_menu_insect-1 2023-07-28 01:56:41 +02:00
Trueffeloot e427687675 d_menu_insect partly matching 2023-07-28 01:55:14 +02:00
Trueffel b898811613 Izumi_gate+vground (#391)
* d_a_izumi_gate & d_a_obj_vground OK

* license agreement

* prevent merging conflict

* optimization based on review
2023-07-25 21:45:38 -07:00
TakaRikka 62ab7c9a0b d_a_obj_snowEffTag / d_a_obj_digplace / d_a_tag_lv2prchk OK (#390)
* d_a_obj_snowEffTag OK

* d_a_obj_digplace OK

* d_a_tag_lv2prchk OK

* remove asm / fix tag_waterfall warnings
2023-07-25 18:25:04 -04:00
Pheenoh 469d9cfe91 add license (#389) 2023-07-25 17:22:44 -04:00
hatal175 7cda554a65 Merge pull request #388 from Yotona/TRK-work
TRK work
2023-07-25 06:17:19 +03:00
Yotona b070730d18 Merged to resolve conflicts 2023-07-24 21:06:31 -06:00
hatal175 9cf73bea8b Merge pull request #385 from marwernerh/TAG_WATERFALL
d_a_tag_waterfall
2023-07-25 04:19:44 +03:00
Yotona 9ad9532536 TRK work 2023-07-24 17:26:23 -06:00
Pheenoh bc59794141 pr template, update README (#387) 2023-07-23 23:55:22 -07:00
marwernerh 4b41dcaa99 Edits according to feedback 2023-07-23 20:52:42 -04:00
hatal175 cb8bf4a489 More JSystem borrowing (#383) 2023-07-23 15:30:24 -07:00
marwernerh c3dd9e785a Merge remote-tracking branch 'upstream/master' into TAG_WATERFALL 2023-07-23 18:15:07 -04:00
Jcw87 6d9f00cb46 extract_game_assets.py: fix 'make assets' (#384) 2023-07-23 14:18:19 -06:00
marwernerh 92cfd8c8b9 Update progress 2023-07-23 15:25:22 -04:00
Huitzi fefcdfcd53 d_a_tag_waterfall matching 2023-07-23 14:51:13 -04:00
hatal175 70104dd476 Merge pull request #382 from Trueffeloot/d_menu_skill
d_menu_skill mostly matching
2023-07-22 17:11:49 +03:00
Trueffeloot 5be7e910cc Merge branch 'master' of https://github.com/zeldaret/tp into d_menu_skill 2023-07-22 16:01:41 +02:00
hatal175 21c01d5efd Merge pull request #381 from hatal175/jsystem2
Importing more JKernel code
2023-07-22 09:00:13 +03:00
Trueffeloot 4682deae99 d_menu_skill basically OK 2023-07-22 03:46:09 +02:00
Tal Hayon db806cda16 Importing more JKernel code 2023-07-21 19:30:25 +03:00
hatal175 5ec69e491a Merge pull request #380 from TakaRikka/lv4obj
d_a_obj_lv4Gate / d_a_obj_lv4PoGate mostly done. d_a_obj_lv4CandleDemoTag work
2023-07-21 14:19:09 +03:00
hatal175 912a14e57d Merge pull request #379 from Jcw87/JAISeq
JAISeq, JAISe, and others
2023-07-21 14:08:32 +03:00
TakaRikka d4162dd46d d_a_obj_lv4PoGate OK 2023-07-21 03:53:58 -07:00
Jcw87 d331fd53e3 unused asm and progress 2023-07-20 21:49:01 -07:00
Jcw87 482e14d270 J2DMatBlock 2023-07-20 21:33:18 -07:00
Jcw87 f17a48b011 d_vib_pattern 2023-07-20 21:25:38 -07:00
Jcw87 ba0e230982 J3DUDL 2023-07-20 21:25:09 -07:00
Jcw87 7e2cf84a88 JAISeq 2023-07-20 21:07:14 -07:00
Jcw87 250110cd10 JAISe 2023-07-20 21:07:12 -07:00
hatal175 2e17762012 Various matches (#378)
* Maybe improve JMAEulerToQuat

* JKRFileLoader OK

* JUTCacheFont work

* Match J3DModel::prepareShapePackets

* JUTDirectFile OK

* JUTDirectPrint OK

* Work on JUTProcBar

* Work on JUTResFont
2023-07-20 19:39:25 -07:00
TakaRikka 21dc43021c d_a_obj_lv4Gate mostly done. d_a_obj_lv4CandleDemoTag work 2023-07-20 02:35:27 -07:00
hatal175 aba19d36a5 Match some nonmatching in d_map_path_dmap (#377)
* Match some nonmatching in d_map_path_dmap

* Match daDsh_c::create
2023-07-19 12:25:45 -07:00
hatal175 c9492825ec Merge pull request #376 from TakaRikka/lv4floor
d_a_obj_lv4floor OK, d_a_b_oh / d_a_dshutter mostly done
2023-07-19 16:11:46 +03:00
Trueffel 0e3ab41038 d_menu_fishing mostly done (#375)
* d_menu_fishing mostly done

* format the cpp
2023-07-19 02:47:20 -07:00
hatal175 aae8d823ef Work on J2DPrint (#374) 2023-07-18 23:25:56 -07:00
TakaRikka 032d970ce0 d_a_dshutter mostly done 2023-07-18 23:16:49 -07:00
TakaRikka 0b60233fae Merge branch 'master' of https://github.com/zeldaret/tp into lv4floor 2023-07-16 23:45:01 -07:00
TakaRikka 3e5903296f d_a_b_oh mostly done 2023-07-16 23:44:23 -07:00
Pheenoh 8a579ec161 Pipeline fix (#373)
* cleanup pipelines

* install deps

* chmod +x wibo

* rename pipeline

* condense steps
2023-07-16 23:42:22 -07:00
hatal175 ae83c59703 Use compiler 1.2.5n instead of frank (#372) 2023-07-16 22:21:18 -06:00
hatal175 0b12611fea dMsgScrnTree_c OK, Some JGeometry work (#370)
* Minor work on c_damagereaction and JGeomtry

* dMsgScrnTree_c OK

* dMsgScrnExplain_c OK
2023-07-16 13:09:21 -06:00
hatal175 fe7fbf37db Merge pull request #371 from Jcw87/J2DMatBlock
J2DMatBlock
2023-07-16 17:35:03 +03:00
Jcw87 42e8d29fde J2DMatBlock 2023-07-15 19:24:13 -07:00
Jcw87 ec4df7f8db J2DOrthoGraph: improved parameter names 2023-07-15 19:02:28 -07:00
Jcw87 66b3dc12ae J2DGrafContext: Use inlines from debug, improved parameter names 2023-07-15 19:02:27 -07:00
hatal175 dd70aed513 Merge pull request #369 from hatal175/J3DSkinDeform
Work on J3DSkinDeform
2023-07-14 13:01:45 +03:00
Tal Hayon 6c945a4e29 Work on J3DSkinDeform 2023-07-14 11:30:07 +03:00
TakaRikka 5ba9e54e2f d_a_obj_lv4floor OK / d_stage wip and cleanup 2023-07-12 17:30:48 -07:00
hatal175 ed40ffb064 Work on JAISeMgr (#368) 2023-07-12 00:59:33 -07:00
hatal175 018fdf29d6 Merge pull request #367 from Trueffeloot/work11
Few files OK
2023-07-10 18:42:34 +03:00
Trueffeloot da9deca3a3 Merge branch 'master' of https://github.com/zeldaret/tp into work11 2023-07-10 12:03:27 +02:00
hatal175 63c782c0d0 J3DPacket, J3DShape OK (#366) 2023-07-09 18:46:15 -07:00
Trueffeloot 65ef839bb5 several files OK 2023-07-10 02:34:35 +02:00
hatal175 78a8fb2601 Merge pull request #365 from hatal175/J3DMaterial
Work on J3DMaterial
2023-07-09 21:38:14 +03:00
Tal Hayon 75c8666bd9 Fix Dol Progress label 2023-07-09 20:42:33 +03:00
Tal Hayon f3759779fb Add Progress buttons to github Readme 2023-07-09 20:41:35 +03:00
Tal Hayon e00ce8bc31 Work on J3DMaterial 2023-07-09 20:21:18 +03:00
Trueffeloot 31683953a6 Merge branch 'master' of https://github.com/zeldaret/tp 2023-07-08 16:53:59 +02:00
hatal175 cf26cd610d Merge pull request #364 from hatal175/m_do_graphics
Work on m_Do_graphic
2023-07-08 06:06:50 +03:00
Tal Hayon b9383052a3 Work on JPAEmitterManager 2023-07-07 21:04:10 +03:00
Tal Hayon a368ff7a6d Work on m_Do_graphic 2023-07-07 18:07:58 +03:00
hatal175 c59ac1f2e9 Merge pull request #363 from TakaRikka/kytag10
d_a_warp_bug OK, d_a_kytag10 almost
2023-07-07 18:03:21 +03:00
TakaRikka 48b3619130 remove asm 2023-07-07 01:17:09 -07:00
TakaRikka 60b613ba4e d_a_warp_bug OK 2023-07-07 01:16:47 -07:00
TakaRikka 2c8bfedbba d_a_kytag10 almost done 2023-07-06 16:30:11 -07:00
hatal175 d1ee455dd6 Merge pull request #362 from TakaRikka/kytag15
d_a_kytag15 / d_a_tag_mwait OK
2023-07-06 10:50:45 +03:00
TakaRikka 93d82399b3 fix build 2023-07-05 23:04:44 -07:00
TakaRikka 7011dc4dcc remove asm 2023-07-05 22:42:10 -07:00
TakaRikka 32f80f3774 d_a_tag_mwait OK 2023-07-05 22:41:49 -07:00
TakaRikka f825fdb16e d_a_kytag15 OK 2023-07-05 02:35:01 -07:00
TakaRikka 1a168255d2 d_a_tag_hjump / d_a_scene_exit2 OK (#361)
* d_a_tag_hjump OK

* d_a_scene_exit2 OK

* remove asm
2023-07-03 21:10:29 -07:00
hatal175 01d9e0a514 d_event_manager OK, d_kankyo rain WIP (#360)
* d_event_manager OK, d_kankyo rain WIP

* Match createTimg
2023-07-03 13:04:51 -06:00
hatal175 92fa379d54 Merge pull request #359 from Jcw87/d_cc_d_nonmatching
d_cc_d_nonmatching
2023-07-03 20:37:56 +03:00
Jcw87 0b5cf25236 d_cc_d_nonmatching 2023-07-03 00:06:03 -07:00
hatal175 d5e0822313 Merge pull request #358 from TakaRikka/mist
d_a_tag_mist, d_a_obj_lv3waterEff, d_a_kytag16, d_a_disappear OK
2023-07-01 13:10:18 +03:00
TakaRikka 8fdc70b602 build fix 2023-07-01 02:02:58 -07:00
TakaRikka e548c092fe d_a_obj_lv4HsTarget OK and mDoHIO_entry_c fix 2023-07-01 01:47:07 -07:00
TakaRikka 67ddd2b2f9 d_a_obj_crystal OK 2023-06-30 21:01:00 -07:00
TakaRikka 9365b01809 remove asm 2023-06-30 16:35:31 -07:00
TakaRikka 554e962be0 d_a_disappear / d_a_kytag16 OK 2023-06-30 16:33:01 -07:00
hatal175 2c06d515d2 Merge pull request #357 from hatal175/d_a_mirror
Work on d_a_mirror
2023-06-30 21:39:49 +03:00
Tal Hayon bf7e686ef7 Work on d_a_mirror 2023-06-30 19:29:50 +03:00
TakaRikka 7b680de442 d_a_obj_lv3waterEff / d_a_kytag16 OK 2023-06-30 00:26:45 -07:00
hatal175 7150d8e25d Merge pull request #356 from hatal175/d_com_cursor
Work on d_select_cursor and d_com_static
2023-06-29 06:32:49 +03:00
TakaRikka dae37fdbbb d_a_tag_mist OK 2023-06-28 15:48:59 -07:00
Tal Hayon 530b0f07c4 Match daCrod_c::posMove 2023-06-28 19:09:01 +03:00
Tal Hayon 13d10bec00 Match daTalk_c::execute 2023-06-28 18:43:19 +03:00
Tal Hayon f7e5cc384f Merge remote-tracking branch 'upstream/master' into undecided 2023-06-28 15:02:13 +03:00
Tal Hayon a3c4cc486e Work on d_com_static 2023-06-28 14:54:53 +03:00
hatal175 47edd67190 Merge pull request #355 from TakaRikka/talk
d_a_talk mostly done
2023-06-28 03:19:22 +03:00
TakaRikka 5be3caa98c fix build 2023-06-27 16:19:53 -07:00
TakaRikka 35126cb257 Merge branch 'master' of https://github.com/zeldaret/tp into talk 2023-06-27 16:15:40 -07:00
TakaRikka 1d6d179077 d_a_talk almost done 2023-06-27 16:14:31 -07:00
Pheenoh 8603f35cdc Progress fix (#354)
* add python deps, print -> LOG

* add type hinting

* add more debug loggin

* more python deps

* aciton fix

* make wibo optional for progress history
2023-06-27 11:16:48 -06:00
hatal175 43ff6501d9 Merge pull request #353 from Pheenoh/progress
Progress history and upload progress command
2023-06-27 09:43:20 +03:00
Pheenoh ee328a29db rm glob (stdlib), change to GitPython 2023-06-26 22:03:31 -06:00
Pheenoh 5364f4dbe5 rm pprint 2023-06-26 21:05:52 -06:00
Pheenoh 4f221323ed rm tmp dir and files 2023-06-26 21:05:24 -06:00
Pheenoh 56ef30f505 Merge branch 'master' into progress 2023-06-26 20:59:02 -06:00
Pheenoh 799608e289 fix github action 2023-06-26 20:58:08 -06:00
Pheenoh 64417c2b02 add progress history, update, extend and integrate upload-progress 2023-06-26 20:57:22 -06:00
hatal175 bb588caf38 Merge pull request #352 from Jcw87/d_menu_collect
d_menu_collect
2023-06-27 05:26:55 +03:00
Jcw87 7af48a0078 d_menu_collect 2023-06-26 18:58:11 -07:00
Tal Hayon 31c37e5dcb Match daSus_c::room_c::add 2023-06-26 17:37:32 +03:00
Tal Hayon 5bd128bd2a d_select_cursor - most functions matching 2023-06-25 17:43:13 +03:00
hatal175 22059e57b7 Work on d_a_tag_wljump (#351) 2023-06-23 08:34:19 -06:00
Trueffel dd9417074b Merge branch 'zeldaret:master' into master 2023-06-20 16:25:57 +02:00
Trueffel 9ba4267e6f TP Progress step for displaying (#350)
* d_a_obj_prop OK

* tp-progress (#1)

* Tp-progress-work-2 (#2)

* seperate (#3)
2023-06-19 18:21:29 -06:00
hatal175 2e6e468928 Work on d_resorce, d_vibration, d_tresure and others (#347)
* Work on d_resorce

* Work on d_a_tag_TWgate

* Work on d_meter_map

* d_tresure OK

* Work on d_vibration

* Work on d_a_npc

* Work on d_a_npc

* Work on d_a_npc
2023-06-19 14:39:09 -06:00
Trueffeloot 7200a565ce Merge branch 'master' of https://github.com/Trueffeloot/tp 2023-06-19 21:47:40 +02:00
Trueffel 67783acac0 seperate (#3) 2023-06-19 21:41:00 +02:00
Trueffel 42cd2b01e6 Tp-progress-work-2 (#2) 2023-06-19 21:22:34 +02:00
Trueffel 38290003b0 tp-progress (#1) 2023-06-18 20:26:12 +02:00
Trueffel a35795c104 Merge branch 'zeldaret:master' into master 2023-06-13 18:22:22 +02:00
Trueffeloot c5e01ec11b Merge remote-tracking branch 'upstream/master' 2023-06-13 18:21:25 +02:00
hatal175 f17cf7f6f1 JASSeqCtrl OK + misc functions (#346)
* JASSeqCtrl OK + misc functions

* Work on JASAudioThread
2023-06-09 01:55:15 -07:00
Trueffeloot bbcd25dd13 Merge branch 'master' of https://github.com/Trueffeloot/tp 2023-06-06 19:52:10 +02:00
Trueffeloot 684c4ca2b6 Merge branch 'master' of https://github.com/zeldaret/tp 2023-06-06 19:52:09 +02:00
hatal175 98582af6d2 work on d_a_npc, d_a_npc_ash, d_a_tag_evtarea (#345)
All credit goes to randomsalience
2023-06-06 11:32:17 -06:00
Trueffel 632cb78ae7 Merge branch 'zeldaret:master' into master 2023-06-04 18:44:43 +02:00
hatal175 565453690e Fix linkage for make game (#344) 2023-06-03 14:09:18 -07:00
hatal175 598aa4aa8c d_shop_system, d_s_name, s_save_HIO (#343)
* d_s_name OK

* d_save_HIO ok

* d_shop_system functions matching except sinit order issue
2023-06-02 13:28:29 -07:00
hatal175 7b7dba2c12 Merge pull request #342 from qwertyquerty/tp.py-bug
Fix tp.py module not found error report bug
2023-05-31 17:46:05 +03:00
madeline ed7e61ddfc fix tp.py error report bug 2023-05-31 05:54:08 -06:00
Noah McQueen df30e3d195 lib/TRK_MINNOW_DOLPHIN work (#341) 2023-05-28 20:54:30 -07:00
Trueffel eccb693762 d_a_obj_digholl & d_a_obj_kjgjs OK (#340)
* d_a_obj_prop OK

* d_a_obj_digholl & d_a_obj_kjgjs OK
2023-05-28 19:10:48 -07:00
hatal175 fcb6ae541f setFadeColor fix, some d_msg_flow functions (#339) 2023-05-28 00:21:28 -07:00
Noah McQueen 2baa07dbf6 d_msg_scrn_arrow OK (#337)
* Mostly matching

* d_msg_scrn_arrow OK

* sync
2023-05-25 00:06:38 -07:00
Trueffeloot 428103b9d9 Merge remote-tracking branch 'upstream/master' 2023-05-24 15:32:00 +02:00
Trueffel 98317b2c17 d_a_obj_prop OK (#336)
* d_a_obj_prop OK

* d_a_obj_prop OK
2023-05-24 00:47:19 -07:00
Trueffeloot 617c84f4cf d_a_obj_prop OK 2023-05-23 21:59:44 +02:00
hatal175 d88870949d Merge pull request #335 from hatal175/various3
Work on d_msg_flow
2023-05-19 16:02:48 +03:00
Tal Hayon c504812d1a Match dMsgFlow_c::event032 2023-05-19 08:06:51 +03:00
hatal175 2ef82b2b66 Merge branch 'master' into various3 2023-05-18 12:10:49 +03:00
Tal Hayon b7bc5b42a5 Work on d_msg_flow 2023-05-18 12:08:41 +03:00
Jcw87 221f40e609 Remove #includes from headers (#334)
* add "global.h" to files that use it

* add MSL_C includes to files that use them

* remove dolphin includes from headers that don't need them

* remove JSupport includes from headers that don't need them

* remove JKernel includes from headers that don't need them

* remove JUtility includes from headers that don't need them

* remove J3D includes from headers that don't need them

* remove J2D includes from headers that don't need them

* remove JAudio2 includes from headers that don't need them

* remove Z2AudioLib includes from headers that don't need them

* remove JMessage includes from headers that don't need them

* remove JParticle includes from headers that don't need them

* remove SComponent includes from headers that don't need them

* remove dol includes from headers that don't need them

* sort includes
2023-05-12 12:10:14 -07:00
hatal175 8c7cda8589 Merge pull request #333 from Yotona/d_a_e_db_leaf
d_a_e_db_leaf OK
2023-05-12 09:53:41 +03:00
Yotona 774d72a959 Merge branch 'd_a_e_db_leaf' of https://github.com/Yotona/tp into d_a_e_db_leaf 2023-05-10 10:32:51 -07:00
Yotona 3a3c2134cc fixed match issues 2023-05-10 10:32:09 -07:00
Noah McQueen f24a661ed2 Merge branch 'master' into d_a_e_db_leaf 2023-05-09 16:13:54 -07:00
Yotona 71c88b5309 Corrected issue with d_a_e_db_leaf.cpp 2023-05-09 16:05:56 -07:00
hatal175 ac269f04ba JASSeqReader, d_bg_s_movebg_actor ok (#332)
match cc_at_check except data
2023-05-09 15:42:18 -07:00
Yotona a83fba1047 d_a_e_db_leaf OK 2023-05-09 15:31:41 -07:00
hatal175 93057e5c87 Add fake match comment to J3DJoint::J3DJoint (#330) 2023-05-09 14:35:40 -07:00
hatal175 68556c2278 Merge pull request #329 from hatal175/J3DJoint
J3DJoint OK
2023-05-09 17:11:49 +03:00
Tal Hayon ff07b43bfa J3DJoint OK 2023-05-09 10:41:27 +03:00
hatal175 44b0fdbb0d Do some work on f_op_actor_mng (#328)
* decompctx - try without shiftjis and write utf8 as output

* Do some work on f_op_actor_mng

* Remove duplicated includes

* Add fopAcM_setEffectMtx

* Match dShopSystem_searchCameraActor

* fopAcM_setEffectMtx now matches with literals

* Remove unnecessary inline in headers
2023-05-08 15:10:22 -07:00
TakaRikka 85827b28ff d_a_vrbox / d_a_kytag02 / d_a_obj_eff OK (#327)
* d_a_vrbox / d_a_kytag02 / d_a_obj_eff OK

* some std header setups

* f_pc / profile cleanup

* setup cull data

* remove asm

* d_a_suspend OK
2023-05-05 16:17:19 -07:00
Trueffel 8d01442f7c d_a_tag_CstaSw & d_a_tag_shop_item OK (#326)
* d_a_tag_CstaSw & d_a_tag_shop_item OK

* d_a_tag_spinner OK
2023-04-29 17:37:30 -07:00
Jcw87 4a29d25e65 improve const correctness (#325) 2023-04-29 17:32:56 -07:00
Jcw87 0c4e853e4b fix functions not returning values (#324) 2023-04-29 17:31:04 -07:00
hatal175 ca4ebc9012 Merge pull request #321 from Jcw87/FLOAT_MIN
fix FLOAT_MIN
2023-04-25 23:13:46 +03:00
hatal175 d14d173c7b Merge pull request #323 from Jcw87/OSMessage_macros
Remove duplicate OSMessage macros
2023-04-25 23:13:23 +03:00
hatal175 c717a94354 Merge pull request #322 from Trueffeloot/work7
d_a_obj_zcloth WIP
2023-04-25 23:12:45 +03:00
Trueffeloot fd6e75ee71 Merge remote-tracking branch 'upstream/master' into work7 2023-04-25 18:33:26 +02:00
Jcw87 3477aaa1cb replace OS_MESSAGE_NON_BLOCKING and OS_MESSAGE_BLOCKING with OS_MESSAGE_NOBLOCK and OS_MESSAGE_BLOCK 2023-04-24 21:10:38 -07:00
Jcw87 af265612c1 J3DAnimation (#320) 2023-04-24 15:31:32 -07:00
Jcw87 b440ae74fb MSL_C (#319)
* MSL_C/string.h

* MSL_C/stdlib.h
2023-04-24 15:28:31 -07:00
Trueffeloot 1c5bacc97b d_a_obj_zcloth WIP 2023-04-23 21:38:41 +02:00
Jcw87 632274e3b1 fix FLOAT_MIN 2023-04-23 06:57:16 -07:00
TakaRikka e1a0f636e5 e_ym / obj_volcball wip. obj_mgate done (#318)
* e_ym / obj_volcball wip. obj_mgate done

* remove asm

---------

Co-authored-by: root <root@DESKTOP-BTVP2BC>
2023-04-21 08:18:49 -06:00
Jcw87 f5fc527d39 add MSL_C/stdio.h (#317) 2023-04-21 02:02:03 -07:00
Jcw87 472340e2d6 add FLT_MAX, FLT_EPSILON, NAN, and HUGE_VALF to MSL_C headers (#316) 2023-04-21 02:01:46 -07:00
hatal175 55f6707c06 Merge pull request #315 from Trueffeloot/work6
d_a_obj_cowdoor OK
2023-04-14 16:27:38 +03:00
Trueffeloot d9183b121a Fixes 2023-04-08 15:17:57 +02:00
Trueffeloot dc815a9278 d_a_obj_tmoon OK 2023-04-08 08:32:50 +02:00
Trueffeloot 4aa1e3447f Merge remote-tracking branch 'origin/work6' 2023-04-08 06:43:17 +02:00
Trueffeloot 5def43b161 d_a_tag_poFire OK 2023-04-08 06:40:03 +02:00
Trueffeloot f49824a4e0 d_a_tag_poFire OK 2023-04-08 06:24:08 +02:00
Trueffeloot 78196a1889 d_a_obj_cowdoor OK 2023-04-07 18:35:52 +02:00
hatal175 5d9e6374e4 Merge pull request #314 from Trueffeloot/work5
d_a_tag_Lantern OK
2023-04-07 09:12:11 +03:00
Trueffeloot 12d70d11e5 comment added 2023-04-06 04:06:16 +02:00
Trueffeloot b84aca0cfd d_a_tag_lantern OK 2023-04-05 07:24:19 +02:00
Trueffeloot 23e3744510 d_a_tag_lantern OK 2023-04-05 07:23:59 +02:00
Trueffel ddc5c7efaa d_a_obj_bombf OK (#313) 2023-04-03 23:05:17 -06:00
TakaRikka 92b88e83e8 d_menu_calibration done / J3DDrawBuffer done / more d_drawlist wip (#312)
* d_drawlist work / finish J3DDrawBuffer

* d_menu_calibration done

* remove asm
2023-03-28 05:11:41 -06:00
TakaRikka 721880831e d_meter2 mostly complete (#310)
* d_meter2 mostly complete

* remove asm
2023-03-18 16:25:47 -06:00
Tom Overton 808032a02b Fix building on case-sensitive systems (#311) 2023-03-18 14:25:01 -07:00
Pheenoh 3cdef97cb8 d_file_select, JASResArcLoader, d_a_obj_stone, d_a_obj_stone_mark (#309)
* setup TU

* JASResArcLoader OK

* d_a_obj_stoneMark work

* some funcs in d_a_obj_stoneMark

* many changes

* quat, d_a_obj_stone, d_a_alink, fix python script, tidy makefile

* d_file_select functions + pr cleanup
2023-03-17 21:05:06 -06:00
TakaRikka a01d65b0b9 d_ky_thunder done / d_scope wip / m_Do_graphic wip (#308)
* d_ky_thunder OK + misc build fixes

* d_scope mostly done

* some m_Do_graphic wip

* remove asm
2023-03-14 15:27:46 -07:00
Pheenoh 500d079c40 d_eye_hl OK, d_spline_path and JASSeqReader work (#307) 2023-03-09 01:26:11 -07:00
Pheenoh f31ab5ae0b Misc Changes (#306) 2023-03-07 18:03:46 -07:00
TakaRikka 6c2e18af70 another d_a_alink pass (#305)
* big pass on many d_a_alink files

* remove asm

* fix d_a_tag_spring

* fix

---------

Co-authored-by: root <root@DESKTOP-BTVP2BC>
2023-03-07 11:44:25 -07:00
Trueffel d7ab9423ad Some work on d_menu_fishing (#304)
* Some work on d_menu_fishing

* pr improved based on comments

* forgot ./tp pull-request
2023-03-06 21:31:32 -07:00
hatal175 41bde4f779 Merge pull request #302 from TakaRikka/jclean
cleanup JSystem files / d_a_alink_hang first pass
2023-03-02 16:33:59 +02:00
TakaRikka e2738ce56a progress fix 2023-03-02 04:15:33 -08:00
root 9402eb7f19 Merge branch 'master' of https://github.com/zeldaret/tp into jclean 2023-03-02 04:14:48 -08:00
TakaRikka 807f60b0f2 setup b_ob_class 2023-03-02 04:13:22 -08:00
Trueffel a1bcd353c4 d_a_tag_rmbit_sw: OK (#303)
* d_a_tag_rmbit_sw fully matching

* d_a_tag_rmbit_sw OK
2023-03-01 19:22:36 -07:00
TakaRikka c241cba47c dump_sort matching 2023-03-01 14:13:22 -08:00
TakaRikka a34abc9da8 remove asm 2023-03-01 03:21:32 -08:00
TakaRikka 0d5b309f98 d_a_alink_hang first pass 2023-03-01 03:20:07 -08:00
TakaRikka eae9455a7d JUtility / JSupport / misc cleanup 2023-02-26 22:18:40 -08:00
TakaRikka 090dcee012 clean JKernel 2023-02-26 17:50:56 -08:00
Pheenoh c54f0816ea d_a_e_yk 23/26 matched (#301)
* setup TU

* daE_YK_HIO_c::daE_YK_HIO_c

* anm_init

* daE_YK_Draw

* pl_check

* damage_check

* action

* daE_YK_Delete

* fly_move

* e_yk_roof

* useHeapInit

* e_yk_wind

* e_yk_chance

* e_yk_return

* e_yk_fly

* e_yk_wolfbite

* e_yk_fight

* e_yk_attack

* e_yk_path_fly

* daE_YK_Execute and daE_YK_Create and float literal prep

* pr cleanup

* rm padding
2023-02-25 21:25:55 -07:00
TakaRikka bf663a0e3d d_a_kytag06 fully done / d_msg_class/object work (#300)
* d_a_kytag06 OK and d_msg_class/object wip

* add some GXDraw functions

* cleanup kytag6

* remove asm
2023-02-25 18:23:13 -08:00
hatal175 4df6e8edea Various matches and improvements (#299)
* Various matches and improvements

* Remove unnecessary comment
2023-02-23 08:41:05 -07:00
Pheenoh fa1f47f7a1 d_a_guard_mng OK, d_a_obj_smoke OK, d_a_tag_smk_emt OK, d_a_hitobj OK (#298)
* d_a_guard_mng OK

* d_a_obj_smoke OK

* d_a_tag_smk_emt OK

* d_a_hitobj attempt

* fixes

* rm comment

* cc_sph_src

* rename and move mGuardDataTbl
2023-02-20 00:53:33 -07:00
Trueffel 8471d1d6cc d_a_tag_attention & d_a_tag_spring OK (#297) 2023-02-19 21:39:09 -07:00
Pheenoh d58a6f5b35 d_a_kytag07 OK, d_a_obj_onsenFire OK, d_a_econt OK (#295) 2023-02-19 12:24:18 -07:00
TakaRikka e0a17187ad JMessage work (#296)
* daalink / z2linkmgr wip

* first cleanup of JASGlobalInstance data

* fix sInstance stuff part 2

* more d_a_alink_swim work

* remove asm

* JMessage work

* remove asm
2023-02-19 10:40:57 -07:00
jdflyer d024075910 Add option to use oead and copy map files (#294) 2023-02-19 10:40:47 -07:00
Pheenoh 3acf288950 d_a_tag_shop_camera OK, d_a_tag_watchge OK, JUTFader OK, JUtility work from Pikmin 2 (#292) 2023-02-18 16:17:35 -07:00
jdflyer 0aaa6fed7a Finish Renaming RELS (#293)
* Finish Renaming RELS

* Revert gitignore

* Revert diff_settings
2023-02-17 21:08:23 -07:00
Trueffel 90da306e5a d_a_tag_ret_room fully matching (#291)
* d_a_tag_ret_room fully matching

* most of d_a_tag_ret_room decompiled
2023-02-17 14:00:39 -07:00
Pheenoh 7fdd453996 d_a_e_ym_tag OK, d_a_tag_theB_hint OK (#289) 2023-02-17 07:26:11 -07:00
TakaRikka 52d84413bb d_a_alink_swim work / fix JASGlobalInstance (#288)
* daalink / z2linkmgr wip

* first cleanup of JASGlobalInstance data

* fix sInstance stuff part 2

* more d_a_alink_swim work

* remove asm
2023-02-16 14:09:22 -07:00
Pheenoh 2e3352a3a3 d_a_tag_stream OK, d_a_swTime OK, d_a_andsw OK (#287) 2023-02-16 07:30:50 -07:00
jdflyer 5ce19327db Fix REL Spelling + Tool Improvements (#285)
* AST conversion library

* Improved Shifted lcf

* copydate and frameworkF.str

* Fix REL Capitalization

* Fix Packaging
2023-02-15 07:02:56 -07:00
Pheenoh 82ff815386 d_a_tag_gra OK, d_a_suspend work (#286) 2023-02-14 23:37:09 -07:00
Pheenoh 88cbbead87 d_a_kytag17 (#284) 2023-02-14 18:51:00 -07:00
Pheenoh bb751ef962 d_a_tag_arena OK (#283)
* d_a_tag_arena

* fix g_profile_Tag_Arena
2023-02-14 18:28:05 -07:00
Pheenoh 8951f20241 d_a_tag_schedule OK (#282)
* daTagSchedule_Create

* daTagSchedule_Delete

* pr cleanup

* correct TU comment
2023-02-14 18:25:27 -07:00
TakaRikka adac3b9764 Merge pull request #281 from Pheenoh/d_a_tag_assistance
d_a_tag_assistance OK
2023-02-14 17:17:45 -08:00
Pheenoh 8dc421ecd4 pr cleanup 2023-02-14 17:03:42 -07:00
Pheenoh d5468665b6 daTagAssist_Delete 2023-02-14 15:50:22 -07:00
Pheenoh 6f9e650175 daTagAssist_Execute 2023-02-14 15:47:34 -07:00
Pheenoh 05c09f99f6 daTagAssist_Create 2023-02-14 15:00:14 -07:00
Trueffel 95b6448656 d_a_tag_howl fully matching (#280) 2023-02-14 14:12:40 -07:00
hatal175 1d0951701e Merge pull request #279 from jdflyer/work2
m_Do cleanup and c_dylink process names
2023-02-14 14:43:01 +02:00
jdflyer 5e83813372 m_Do cleanup and c_dylink process names 2023-02-13 21:51:27 +00:00
jdflyer d5f5d4c3b3 m_Do_lib OK (#278) 2023-02-10 23:02:39 -07:00
Pheenoh b70f57ea41 mDoMemCd_Ctrl_c::checkspace (#277) 2023-02-10 11:54:34 -07:00
TakaRikka 539edcf077 d_a_dmidna OK / f_op + misc cleanup (#276)
* some f_op / d_insect cleanup

* rename some vars according to tww

* d_a_dmidna OK

* remove asm
2023-02-10 10:07:47 -07:00
Trueffel 6db9462224 most of d_a_tag_spinner decompiled (#275)
* most of d_a_tag_spinner decompiled

* most of d_a_tag_spinner decompiled!

* most of daTagSpinner decompiled
2023-02-09 14:42:51 -07:00
hatal175 d449897b87 Misc matches (#274) 2023-02-09 08:52:32 -07:00
TakaRikka df44816bec d_a_tag_lv6CstaSw OK (#272) 2023-02-06 00:05:41 -07:00
Pheenoh 82bf380d1b d_a_boomerang first pass (#271)
* daBoomerang_sight_c::copyNumData

* daBoomerang_sight_c::setSight

* daBoomerang_c::windModelCallBack

* daBoomeang_windModelCallBack

* daBoomerang_Draw

* daBoomerang_c::lockLineCallback

* daBoomerang_lockLineCallback

* daBoomerang_moveLineCallback

* daBoomerang_c::setAimActorBase

* daBoomerang_c::resetLockActor

* daBoomerang_Execute

* daBoomerang_Delete

* daBoomerang_createHeap

* remove asm

* revert progress script
2023-02-05 20:34:09 -07:00
TakaRikka 24b833b205 d_a_crod almost fully OK (#270) 2023-02-05 08:09:29 -07:00
hatal175 1124554ae1 Merge pull request #269 from Pheenoh/d_a_do
d_a_do work
2023-02-05 06:52:14 +02:00
Pheenoh cede55ba30 pr fixes 2023-02-04 17:45:01 -07:00
Pheenoh 9eb63d9f68 fixes from actor class member name changes 2023-02-04 16:17:00 -07:00
Pheenoh 65e28a7323 Merge branch 'master' into d_a_do 2023-02-04 16:09:33 -07:00
Pheenoh 9456881d2e comment out d_a_swim 2023-02-04 16:08:25 -07:00
TakaRikka 0f1c727725 d_a_obj_cboard / finish f_op_actor / rels cleanup (#268)
* d_a_obj_cboard / finish f_op_actor / clean up some rel files

* rename some actor vars / remove asm

* progress
2023-02-03 21:24:26 -07:00
TakaRikka f030d04b14 Merge pull request #267 from hatal175/dvdlow2
Only DVDLowRead left in dvdlow
2023-02-03 18:49:02 -08:00
Tal Hayon 118a3f288f Only DVDLowRead left in dvdlow 2023-02-03 12:01:55 +02:00
Tal Hayon ad10c4efca Unused .s files 2023-02-03 11:55:04 +02:00
TakaRikka 0e7b8726db Merge pull request #266 from hatal175/dvdlow
Dvdlow and others
2023-02-02 00:31:17 -08:00
Tal Hayon 71e7f2ae27 Match SeekTwiceBeforeRead 2023-02-01 19:36:14 +02:00
Tal Hayon 9431eea44c Fix change to dKyw_get_AllWind_vecpow__FP4cXyz return value 2023-02-01 18:09:23 +02:00
Tal Hayon 687e04ffbe Match dvdlow Read and extract repeating code to __setAlarm 2023-02-01 17:35:03 +02:00
Tal Hayon 61d2b9a5c1 Work on dvdlow, OSTime fix and various nonmatching 2023-02-01 16:40:19 +02:00
Tal Hayon d5d32236a0 Print stderr in diff.py when make fails 2023-02-01 16:37:45 +02:00
hatal175 4172847eff Merge pull request #262 from TakaRikka/dmap1
most of d_map_path_dmap decompiled
2023-02-01 16:14:19 +02:00
TakaRikka c515b3298f fix conflict 2023-01-31 20:08:30 -08:00
root 7745b0432e Merge branch 'master' of https://github.com/zeldaret/tp into dmap1 2023-01-31 20:07:47 -08:00
TakaRikka d9a0324b53 Merge pull request #265 from Jcw87/progress_sort
Sort rels by name in Progress.md
2023-01-31 20:05:47 -08:00
Jcw87 3fb45ab5bf Progress.md: update with new ordering 2023-01-31 17:47:54 -08:00
Jcw87 81c2adfad4 tp.py: progress: fix rels progress for windows 2023-01-31 17:45:47 -08:00
Jcw87 d34c3440c3 tp.py: progress: sort rels by name 2023-01-31 17:45:47 -08:00
TakaRikka df55eee7a7 Merge pull request #264 from Trueffeloot/work3
Most of d_a_tag_ajnot decompiled
2023-01-31 03:02:39 -08:00
TakaRikka 936016b30a Merge pull request #263 from Jcw87/setup_fixes
Setup fixes
2023-01-31 03:00:41 -08:00
TakaRikka e66f53a0b0 d_a_tag_guard OK 2023-01-31 02:59:13 -08:00
TakaRikka ce13823586 some d_map_path_fmap work 2023-01-30 22:52:13 -08:00
Trueffeloot 3edcc745f0 Most of d_a_tag_ajnot decompiled 2023-01-30 21:10:28 +01:00
Jcw87 cd4a37fdd4 tp.py: setup: call 'make tools' 2023-01-30 09:19:24 -08:00
Jcw87 61fc276734 requirements.txt: remove standard libraries that pip cannot install 2023-01-30 02:39:28 -08:00
Jcw87 5d49bb7777 tp.py: setup: Add execute flag to compilers on posix systems 2023-01-30 02:39:28 -08:00
Jcw87 6b031acca9 Makefile: 'tools' target should depend on 'dirs' 2023-01-30 02:39:27 -08:00
Jcw87 d09507c60c tp.py: setup: refactor lmgr326b.dll copy, and also do it for 1.2.5e 2023-01-30 02:39:27 -08:00
TakaRikka cbfdf6533c remove asm 2023-01-29 21:03:20 -08:00
TakaRikka bad6551507 most of d_map_path_dmap decompiled 2023-01-29 21:00:46 -08:00
TakaRikka 7723ab15f7 Merge pull request #260 from hatal175/dollibs4
Work on OSThread
2023-01-29 12:53:10 -08:00
Tal Hayon cb867a05c2 Merge remote-tracking branch 'upstream/master' into dollibs4 2023-01-29 16:55:11 +02:00
TakaRikka e0f788b3dd Merge pull request #261 from Jcw87/lcf_at
lcf.py: fix wrong variable being checked for "@"
2023-01-28 21:15:17 -08:00
Jcw87 3d8bfabe5a lcf.py: fix wrong variable being checked for "@" 2023-01-28 20:53:37 -08:00
TakaRikka 5d3a72994d Merge pull request #259 from TakaRikka/work7
d_door_param2 / d_cam_param / d_gameover + misc cleanup
2023-01-28 17:14:38 -08:00
Tal Hayon 7c49fbffb6 Match __OSDispatchInterrupt and AIRegisterDMACallback 2023-01-28 21:20:01 +02:00
Tal Hayon 0436820724 Work on OSThread 2023-01-28 17:51:25 +02:00
TakaRikka 181417f20a fix conflict 2023-01-27 17:50:20 -08:00
root 401639f9fa Merge branch 'master' of https://github.com/zeldaret/tp into work7 2023-01-27 17:49:42 -08:00
TakaRikka 3e408cf7a5 Merge pull request #258 from hatal175/dollibs3
Work on various dolphin libs
2023-01-27 17:48:32 -08:00
TakaRikka cd28993c12 Merge branch 'master' of https://github.com/zeldaret/tp into work7 2023-01-27 15:14:01 -08:00
TakaRikka 799c16a1db remove asm 2023-01-27 15:13:48 -08:00
TakaRikka d0b62fd83f d_door_param2 / d_cam_param / d_gameover + some misc cleanup 2023-01-27 15:12:42 -08:00
Tal Hayon 09f3d66390 Work on various dolphin libs 2023-01-27 18:38:26 +02:00
TakaRikka 55af016653 Merge pull request #257 from Jcw87/dep_allow_missing_headers
fake the -MP compiler option
2023-01-26 23:41:09 -08:00
Jcw87 b63d35d9cf transform-dep.py: fake the -MP compiler option 2023-01-26 21:30:17 -08:00
Jcw87 8ccb2d4776 transform-dep.py: refactor 2023-01-26 21:26:40 -08:00
Pheenoh 737da6afea checkpoint 2023-01-26 10:49:49 -07:00
TakaRikka a8136f1968 Merge pull request #256 from Jcw87/extract_assets_windows
Windows fixes (asset extraction and repackaging)
2023-01-26 02:03:22 -08:00
Jcw87 10ebe01a42 libarc/arc.py: use unix paths for _files.txt 2023-01-26 01:41:20 -08:00
Jcw87 e786c7dd3a libarc/arc.py: Check if directories already exist before creating 2023-01-26 01:41:19 -08:00
Jcw87 9ac1269473 libarc/arc.py: explicitly specify utf-8 encoding when opening text files 2023-01-26 01:41:19 -08:00
Jcw87 3a1282dd71 tp.py: fix exception handler 2023-01-25 23:15:49 -08:00
TakaRikka 7343cc7d3f Merge pull request #255 from DRK-512/master
Automated setup implementation
2023-01-25 15:34:06 -08:00
DRK-512 b016e68d73 Undo Docker 2023-01-25 17:49:49 -05:00
Darek Konopka 3e673a8a45 python-requests added to docker 2023-01-25 01:41:09 -05:00
Darek Konopka 245270d107 Merge branch 'master' into master 2023-01-25 01:20:42 -05:00
DRK-512 1397efac6f requires caught up to main 2023-01-25 01:18:46 -05:00
DRK-512 327965d1b7 Fixed requirements 2023-01-25 01:15:00 -05:00
TakaRikka 6f973eb07a Merge pull request #253 from jdflyer/master
Arc file extraction and re-packaging
2023-01-24 21:51:20 -08:00
jdflyer d4fdfdf1f6 Merge with upstream 2023-01-24 21:41:59 -07:00
jdflyer c40f15c9a7 New yaz0 system 2023-01-24 21:41:20 -07:00
DRK-512 efeb260726 setup moved from makefile to tp 2023-01-24 22:50:19 -05:00
Darek Konopka c6c01426f1 Update README.md
README uses make setup instead of manual setup
2023-01-24 19:00:33 -05:00
Darek Konopka 4a524883e5 Update README.md
Updated README to use make setup
2023-01-24 18:59:50 -05:00
Darek Konopka 4bd3047d3f Update Makefile
make setup implemented
2023-01-24 18:59:02 -05:00
hatal175 d17c122e4d Continue robbing prime github dolphin libs blind (#254)
* Continue work on dolphin libs

* tp.py pull-request should print rels by default
2023-01-24 13:22:40 -07:00
TakaRikka 49a8b2be0d Merge pull request #252 from Jcw87/rels_msys2
makerel.py: Accept arguments from files, allowing rels to build with msys2
2023-01-24 00:34:51 -08:00
TakaRikka b3d3d71fcc Merge pull request #251 from Jcw87/patched_to_modded
rename mwcceppc_patched.exe to mwcceppc_modded.exe for better windows compatibility
2023-01-24 00:33:33 -08:00
TakaRikka 14a682035c Merge pull request #250 from Jcw87/makefile_header_deps_wsl
transform-dep.py: fix for wsl
2023-01-24 00:32:34 -08:00
jdflyer 7cc89e44ba Merge with upstream 2023-01-23 21:35:08 -07:00
jdflyer 9ad13fcd2e Formatting 2023-01-23 21:33:56 -07:00
jdflyer ad3f32bc7c Merge branch 'zeldaret:master' into master 2023-01-23 20:46:24 -07:00
jdflyer 25d3c16ca7 Arc Extraction and Re-Packing 2023-01-23 20:45:57 -07:00
Pheenoh 8f587c67a5 Merge branch 'master' into d_a_do 2023-01-23 08:17:36 -07:00
hatal175 e3379b977f Work on dvd, si, os and exi (#249) 2023-01-23 08:02:24 -07:00
Jcw87 98db45807c makerel.py: Accept arguments from files, allowing rels to build with msys2 2023-01-23 01:53:06 -08:00
Jcw87 9237c661cf rename mwcceppc_patched.exe to mwcceppc_modded.exe for better windows compatibility 2023-01-23 00:34:44 -08:00
Pheenoh f47e53b8a2 do_sit 2023-01-22 21:42:01 -07:00
Pheenoh ed8acec2e8 do_wait_2 2023-01-22 20:33:18 -07:00
Pheenoh d84cf3367b do_wait_1 checkpoint 2023-01-22 17:36:03 -07:00
Pheenoh 65715b8261 water_check 2023-01-22 10:47:45 -07:00
Pheenoh f0109a791d nodeCallBack 2023-01-22 10:43:21 -07:00
Pheenoh 014b36877f daDo_HIO_c 2023-01-22 10:38:04 -07:00
Jcw87 a1b027ed52 transform-dep.py: fix for wsl 2023-01-22 00:02:46 -08:00
TakaRikka ce349ed7a8 Merge pull request #248 from hatal175/readme
Fix README unzip instructions
2023-01-21 22:47:56 -08:00
jdflyer 02195070b6 Merge with upstream 2023-01-21 17:05:12 -07:00
jdflyer 0fb9c6d98f d_menu_map_common progress 2023-01-21 16:47:18 -07:00
Pheenoh 8dcee96cb7 action checkpoint 2023-01-21 13:44:20 -07:00
Tal Hayon 19d13860a7 Fix README unzip instructions 2023-01-21 08:30:06 +02:00
Pheenoh c47f11e2ae do_run_walk 2023-01-20 14:41:36 -07:00
Pheenoh bf6a407b2c do_run 2023-01-20 13:53:08 -07:00
Pheenoh 6f7d58a02c do_run start 2023-01-20 11:42:52 -07:00
Pheenoh 577dee73e1 Merge remote-tracking branch 'upstream/master' into d_a_do 2023-01-20 11:42:12 -07:00
hatal175 7825666971 Add 1.2.5e to several makefiles and matching dolphin lib stuff (#247)
* Fix select_occurence in diff.py

* Use 1.2.5e and metroid prime decomp to match dlphin lib funcs

* Fix FRANK_COMPILER WINE typo

* Double WINE use removal

* Organize dolphin compiler makefile names

* Use inline auto instead of special inline where applicable
I couldn't make CARDOpen work with the flag though
2023-01-20 10:51:21 -07:00
Pheenoh ff44356585 do_walk_run 2023-01-19 16:57:30 -07:00
Pheenoh d38aa7a9b2 fix literal 2023-01-19 09:17:04 -07:00
Pheenoh cafe86de75 daDo_other_bg_check2 2023-01-19 09:13:15 -07:00
Pheenoh 0aca238d26 daDo_other_bg_check 2023-01-19 09:02:48 -07:00
Pheenoh a51c5a29e1 Merge remote-tracking branch 'origin/master' into d_a_do 2023-01-18 23:19:17 -07:00
Pheenoh b1cb7df180 s_w_sub 2023-01-18 23:17:08 -07:00
Pheenoh 3f325bfb49 do_swim 2023-01-18 22:38:30 -07:00
Pheenoh 83eeedf2f5 s_c_sub 2023-01-18 21:44:39 -07:00
Pheenoh 09ee1fd068 message 2023-01-18 21:38:34 -07:00
Pheenoh 929398703d do_message 2023-01-18 19:42:59 -07:00
Pheenoh 18b96dd20e area_check 2023-01-18 09:32:46 -07:00
Pheenoh a28fbeb310 move_dansa_check 2023-01-17 21:47:19 -07:00
Pheenoh 131ac1b06c depth_check 2023-01-17 19:22:37 -07:00
TakaRikka ccac8b31e2 Merge pull request #245 from hatal175/getResReference
Match several functions and improve J2DScreen::createMaterial
2023-01-16 15:06:45 -08:00
Tal Hayon e1419fe719 Match PADControlMotors 2023-01-16 21:10:26 +02:00
Tal Hayon ba79ab4789 Match PADRecalibrate 2023-01-16 20:55:36 +02:00
Tal Hayon 41221f7df9 Match PADReset 2023-01-16 20:47:31 +02:00
Tal Hayon eda70a786e Match J2DScreen::getResReference and improve J2DScreen::createMaterial 2023-01-16 18:23:37 +02:00
Pheenoh ca38ce3465 revert user area changes 2023-01-15 12:28:57 -07:00
Pheenoh 8b52fd247a Merge branch 'master' into d_a_do 2023-01-15 12:23:08 -07:00
hatal175 6e05f7133b chmod 755 decompctx.py (#246) 2023-01-15 12:10:41 -07:00
TakaRikka 5e05ae38f8 d_a_b_oh2 / d_a_obj_web0 / d_a_obj_web1 (#243)
* d_a_obj_web0 / d_a_obj_web1

* remove asm

* d_a_set_bgobj

* d_cc_s work

* remove asm

* build fix

* fix tp.py progress check and rel sha1 check

* clean up some bg files
2023-01-15 12:10:23 -07:00
Pheenoh b25381bfba Merge branch 'master' into d_a_do 2023-01-15 11:52:54 -07:00
TakaRikka c90f9dfde9 Merge pull request #244 from hatal175/setup_fixes
WSL compilation fixes
2023-01-13 22:54:13 -08:00
TakaRikka fcf327a18b Merge pull request #241 from Jcw87/makefile_header_deps
Add header dependencies to Makefiles
2023-01-13 22:53:05 -08:00
Tal Hayon e8b4775fe0 WSL compilation fixes 2023-01-14 08:18:31 +02:00
TakaRikka fb71366a76 Merge pull request #242 from barzamin/3moon/tp-no-print-rels
tp.py: allow use of the --no-print-rels inverse flag
2023-01-08 23:33:31 -08:00
erin petra sofiya moon c7b54ac749 tp.py: allow use of the --no-print-rels inverse flag 2023-01-09 00:47:33 -06:00
Pheenoh dd4db53c5b checkpoint 2023-01-07 05:57:30 -07:00
Jcw87 df2391faa7 diff.py: invoke make with DISABLE_DEPS 2023-01-06 18:50:13 -08:00
Jcw87 2112d5d992 header dependency tracking might be useful for main.dol too 2023-01-06 18:49:42 -08:00
Pheenoh 42a6a6ebca nodeCallBack attempt 2023-01-06 08:44:50 -07:00
Jcw87 dd984e3b8e Generate makefiles from dol2asm 2023-01-06 03:52:59 -08:00
Jcw87 5aa83db436 dol2asm: generate makefiles that use header dependencies for smarter rebuilds 2023-01-06 03:52:56 -08:00
Jcw87 b4bfca89a1 dol2asm: fix incorrect debug function importing into libdol2asm/exporter/makefile.py 2023-01-06 03:52:55 -08:00
Jcw87 3786e47886 dol2asm: move exi library, f070ee948f 2023-01-06 03:52:55 -08:00
Jcw87 3ae051c356 dol2asm: fix libdol2asm.util import issue 2023-01-06 03:42:29 -08:00
Pheenoh f367d21472 anm_init 2023-01-05 20:50:31 -07:00
Pheenoh 11ad89ee81 inlined virtual func problem solution (thanks Julgodis) 2023-01-05 18:31:58 -07:00
Jcw87 95e34e69fd dol2asm: apply makefile changes from bc428f7f65 2023-01-05 01:56:46 -08:00
Jcw87 309148334f dol2asm: generate Unix paths in makefiles regardless of platform 2023-01-05 01:56:46 -08:00
Jcw87 3aa269c33b dol2asm: fix game paths 2023-01-05 01:56:45 -08:00
TakaRikka 2f764d277f Merge pull request #240 from TakaRikka/room
d_s_room / d_a_bg first pass
2023-01-05 00:45:37 -08:00
TakaRikka 7303100d9b small fix 2023-01-05 00:07:47 -08:00
TakaRikka 3fc4961b91 remove asm 2023-01-04 23:51:40 -08:00
TakaRikka 5fa8a73aed d_a_obj_enemy_create OK 2023-01-04 23:51:05 -08:00
Pheenoh f06fe19d46 Merge branch 'master' into d_a_do 2023-01-04 09:22:18 -07:00
Pheenoh 67fc1447da checkpoint 2023-01-04 09:21:20 -07:00
TakaRikka edcc309734 remove asm 2023-01-03 17:44:56 -08:00
TakaRikka 92c2ef1ce3 d_s_room / d_a_bg first pass 2023-01-03 17:43:38 -08:00
Pheenoh 63afb14d8b do_carry_check 2023-01-03 00:18:06 -07:00
Pheenoh f547247a81 food_check 2023-01-03 00:16:08 -07:00
TakaRikka e1114ebcf9 MSL_C cleanup (#238)
* clean up MSL_C files according to prime decomp

* remove asm
2023-01-02 22:28:46 -07:00
TakaRikka f6a9947c6c Merge pull request #239 from jdflyer/master
Add frank.py
2023-01-02 19:13:29 -08:00
jdflyer 4d17e01793 Remove Asm 2023-01-02 19:48:15 -07:00
jdflyer 5b34700cb2 Add frank.py 2023-01-02 19:44:52 -07:00
TakaRikka f070ee948f dolphin lib work (#237)
* getLayerNo_common_common finally matched

* dolphin ai / ar / card work from prime decomp

* work on dolphin dvd / dsp / db

* more dolphin os work

* si work

* remove asm

* build fix
2023-01-02 12:20:10 -07:00
TakaRikka 6cc376bb2b Merge pull request #236 from notyourav/catdoor
d_a_obj_catdoor first pass
2023-01-02 00:59:45 -08:00
theo3 78e8b01174 d_a_obj_catdoor first pass 2023-01-02 00:45:07 -08:00
notyourav d075a08240 Merge pull request #235 from jdflyer/master
JAudio2 Work
2023-01-02 00:34:39 -08:00
jdflyer 76178f6914 More Formatting 2023-01-01 22:15:07 -07:00
jdflyer d0167c1f62 Formatting 2023-01-01 22:13:55 -07:00
jdflyer 1ee0488a2d Merge with upstream 2023-01-01 20:21:31 -07:00
jdflyer ce89223ae1 JAUStreamFileTable 2023-01-01 20:14:45 -07:00
jdflyer aab727b13f JAUBankTable 2023-01-01 18:00:01 -07:00
TakaRikka e5ff41975d Merge pull request #234 from magcius/fop
more J3DDrawBuffer
2022-12-31 19:49:31 -08:00
Jasper St. Pierre 6557ac8cd7 more J3DDrawBuffer 2022-12-31 19:32:56 -08:00
jdflyer 40469d42a0 JASWaveArcLoader 2022-12-31 19:18:40 -07:00
TakaRikka b95aed1512 Merge pull request #233 from magcius/fop
Couple more J3DModel matches, d_kyeff/d_kyeff2 cleanups
2022-12-31 13:14:43 -08:00
Jasper St. Pierre e79742133f build fix 2022-12-31 11:44:43 -08:00
Jasper St. Pierre 028652e97e a bit more J3DMtxBuffer 2022-12-31 11:20:28 -08:00
Jasper St. Pierre e66c902b30 J3DMtxBuffer start 2022-12-31 10:44:40 -08:00
Jasper St. Pierre a63552bc80 build fix, J3DModelData::newSharedDisplayList OK 2022-12-31 10:08:55 -08:00
Jasper St. Pierre d7480d5d8b Couple more J3DModel matches, d_kyeff/d_kyeff2 cleanups 2022-12-31 09:45:40 -08:00
TakaRikka 2e2e08e783 Merge pull request #232 from tom-overton/d_a_tag_mmsg
d_a_tag_mmsg OK
2022-12-31 04:14:36 -08:00
Tom Overton 4394d5d0d7 Respond to taka's review on d_a_tag_mmsg 2022-12-31 04:03:50 -08:00
Tom Overton ba90c927ea d_a_tag_mmsg OK 2022-12-31 03:42:12 -08:00
TakaRikka 2ef41a019c Merge pull request #230 from jdflyer/master
Script To Package built game into ISO
2022-12-30 19:43:26 -08:00
TakaRikka 4115569c8f Merge pull request #231 from magcius/fop
f_op_view OK, f_op_kankyo documentation
2022-12-30 18:30:26 -08:00
Jasper St. Pierre 5122b109f8 build fix 2022-12-30 18:19:21 -08:00
jdflyer 248e523987 Python script formatting 2022-12-30 19:00:42 -07:00
Jasper St. Pierre 501c7dda22 f_op_view OK, f_op_kankyo documentation 2022-12-30 17:17:07 -08:00
TakaRikka 8f1130471a Merge pull request #229 from magcius/fop
J3DJointTree, f_op_scene, profile struct fixes
2022-12-30 17:04:44 -08:00
Jasper St. Pierre e875cd38d3 minor fixup 2022-12-30 16:49:26 -08:00
jdflyer 83c53812ef Merge with upstream 2022-12-30 17:46:04 -07:00
jdflyer f453841a5c ISO packaging script 2022-12-30 17:45:12 -07:00
Jasper St. Pierre 214179af8a build revert 2022-12-30 16:43:48 -08:00
Jasper St. Pierre 00e2711fc9 Match f_op_scene, fix profile structs 2022-12-30 16:43:48 -08:00
Jasper St. Pierre 6fec278add narrow 2022-12-30 16:43:48 -08:00
Jasper St. Pierre 98b84ea0fa f_pc_draw_priority: Type fix 2022-12-30 16:43:48 -08:00
Jasper St. Pierre b45b95c3be msg documentation 2022-12-30 16:43:48 -08:00
Jasper St. Pierre 0ff72d731b J3DJointTree OK 2022-12-30 16:43:48 -08:00
jdflyer 463348bfc7 JAudio2 Work (#228) 2022-12-30 16:19:57 -07:00
Pheenoh 5d4f161d43 f_op_msg_mng 19/20 matched (#227) 2022-12-29 17:30:35 -07:00
jdflyer 39fd70f8e1 Merge with upstream 2022-12-29 16:23:30 -07:00
jdflyer 4c87c49937 formatting fixes 2022-12-29 16:22:54 -07:00
TakaRikka fddeb5f5b5 Merge pull request #226 from Pheenoh/f_op_kankyo
f_op_kankyo 4/5 matched
2022-12-29 14:52:19 -08:00
jdflyer 74daacb277 remove unused asm 2022-12-29 15:45:50 -07:00
jdflyer 62829e7062 Merge with upstream 2022-12-29 15:23:48 -07:00
jdflyer 56764ac3bd Some Z2WolfHowlMgr progress 2022-12-29 15:22:26 -07:00
Pheenoh 5bf08be0fa cleanup casts, add enum, convert fopKy_KANKYO_TYPE to int 2022-12-28 10:01:08 -07:00
Pheenoh e7ed9aca42 msg_class -> kankyo_class 2022-12-27 23:12:52 -07:00
Pheenoh 0b97dfb6e5 f_op_camera full match (#225) 2022-12-27 22:45:07 -07:00
Pheenoh 5a5db59182 remove asm 2022-12-27 22:44:30 -07:00
Pheenoh 791399ac6c fopKy_Create attempt 2022-12-27 22:43:29 -07:00
Pheenoh 9b5bc55f2a fopKy_Delete 2022-12-27 20:15:36 -07:00
Pheenoh a76a695ff1 fopKy_IsDelete 2022-12-27 20:13:08 -07:00
Pheenoh ac6223b949 fopKy_Execute 2022-12-27 19:42:25 -07:00
Pheenoh 68d74528d9 fopKy_Draw 2022-12-27 19:33:26 -07:00
Pheenoh 038d7f6600 Merge remote-tracking branch 'upstream/master' 2022-12-27 16:30:54 -07:00
Pheenoh 7cac806b68 f_op_actor matches (#224)
* fopEn_enemy_c::checkBallModelDraw

* fopEn_enemy_c::initBallModel

* fopEn_enemy_c::setBallModelEffect

* fopEn_enemy_c::drawBallModel

* dStage_roomDt_c::getFileListInfo

* fopAc_Delete

* remove asm

* convert getBall* to static functions
2022-12-27 16:30:25 -07:00
Pheenoh 8244d9a6e1 d_ky_thunder first pass (#223)
* dThunder_c::adjustHeap and dThunder_c::createHeap

* remove asm
2022-12-27 16:16:36 -07:00
Pheenoh 082f5b40af d_select_cursor first pass (#221) 2022-12-26 22:53:24 -07:00
Pheenoh 38ac3b420c d_jnt_col first pass (#222)
* dJntCol_c::dJntCol_c

* dJntCol_c::init

* dJntCol_c::setArrowPosAndAngle

* remove asm
2022-12-26 19:23:22 -07:00
Pheenoh c435915373 Merge remote-tracking branch 'upstream/master' 2022-12-26 11:07:55 -07:00
Pheenoh 8b0ee4d50b d_insect first pass (#219)
* dInsect_c::dInsect_c

* dInsect_c::Insect_GetDemoMain attempt

* dInsect_c::CalcZBuffer attempt

* remove asm

* convert clib inlines to template functions
2022-12-26 10:55:53 -07:00
Pheenoh 8516f01f79 d_vibration first pass (#220)
* dVibration_c::StartShock

* dVibration_c::StartQuake

* dVibration_c::StopQuake

* dVibration_c::Kill()

* dVibration_c::CheckQuake

* dVibration_c::Init

* dVibration_c::Remove

* dVibration_c::setDefault

* dVibration_c::Pause

* remove asm

* switch to u8 return, remove cast
2022-12-26 10:45:03 -07:00
kipcode66 f79e4e04f3 added VSCode devcontainer config files (#213)
* added VSCode devcontainer config files

* removed useless command

* changed oead to syaz0

* addded cmake to the container
2022-12-26 10:39:59 -07:00
jdflyer ae040aa688 Old JAudio changes 2022-12-24 12:47:48 -07:00
TakaRikka e0c23673db Merge pull request #218 from Pheenoh/d_timer
d_timer first pass
2022-12-23 23:05:43 -08:00
Pheenoh 0788e86c33 Merge remote-tracking branch 'upstream/master' into d_timer 2022-12-22 19:07:02 -07:00
Pheenoh e492efda4d Merge remote-tracking branch 'upstream/master' 2022-12-22 18:37:18 -07:00
TakaRikka cdbc2775b7 Merge pull request #217 from Pheenoh/d_a_player
d_a_player matches
2022-12-22 16:15:03 -08:00
Pheenoh 915e45056c remove asm 2022-12-22 16:54:59 -07:00
Pheenoh 02975d1764 rm types 2022-12-22 16:12:32 -07:00
Pheenoh 7754b252fc dDlst_TimerScrnDraw_c::getNumber 2022-12-22 16:02:42 -07:00
Pheenoh 9430a5aa60 dDlst_TimerScrnDraw_c::getNumber 2022-12-22 15:52:44 -07:00
Pheenoh a4911a8c7d dTimer_c::end 2022-12-22 15:27:33 -07:00
Pheenoh d06eb05e67 Merge branch 'd_a_player' into d_timer 2022-12-22 14:36:42 -07:00
Pheenoh a15c20dcd7 dTimer_c::restart 2022-12-22 14:36:27 -07:00
Pheenoh b1f302c0bd fixes from taka/lunarsoap 2022-12-22 13:51:31 -07:00
Pheenoh 9d049c1549 dTime_c::stock_start attempt again 2022-12-22 13:49:29 -07:00
Pheenoh 07c9f3234b dTimer_c::_draw 2022-12-22 13:32:41 -07:00
Pheenoh 07419c7e9f dTimer_isReadyFlag 2022-12-22 13:10:09 -07:00
Pheenoh 90ac790694 dTimer_show and dTimer_hide 2022-12-22 13:07:26 -07:00
Pheenoh dd8a1ca27f dTimer_getRestTimeMs 2022-12-22 13:03:11 -07:00
Pheenoh 861541a4d2 dTimer_isStart 2022-12-22 13:02:32 -07:00
Pheenoh 4d77ac57d2 dTimer_createStart2D 2022-12-22 12:58:10 -07:00
Pheenoh cf04f10a83 dTimer_createGetIn2D 2022-12-22 12:31:19 -07:00
Pheenoh a2c1e7afaf dTimer_createStockTimer 2022-12-22 10:36:47 -07:00
Pheenoh f6318d671c Merge branch 'd_a_player' into d_timer 2022-12-22 08:31:49 -07:00
Pheenoh d3ef35d560 dTimer_Create 2022-12-22 08:10:03 -07:00
Pheenoh 2764ca7bec dTimer_Draw 2022-12-22 08:06:17 -07:00
Pheenoh 8518811226 dTimer_c::isStart 2022-12-22 01:25:35 -07:00
Pheenoh 09cf836d6e dTimer_c::getTimeMs 2022-12-22 00:57:43 -07:00
Pheenoh 995d81d7ea dTimer_c::getLimitTimeMs 2022-12-22 00:46:31 -07:00
Pheenoh 538c1d2214 dTimer_c::deleteRequest 2022-12-22 00:37:31 -07:00
Pheenoh 282b2a33f4 dTimer_c::stop 2022-12-22 00:36:10 -07:00
Pheenoh 42d6d8c0bf dTimer_c::stock_start (no param) attempt 2022-12-22 00:30:04 -07:00
Pheenoh c4ed589f23 dTimer_c::stock_start 2022-12-22 00:03:31 -07:00
Pheenoh 5e997de2c1 dTimer_c::deleteCheck 2022-12-21 23:57:09 -07:00
Pheenoh 220c13723a Merge remote-tracking branch 'upstream/master' 2022-12-21 23:34:06 -07:00
Pheenoh 9e4944c433 minor fixes to d_a_e_yc 2022-12-21 23:29:31 -07:00
Pheenoh a1f695fdc4 Merge remote-tracking branch 'upstream/master' into d_a_player 2022-12-21 23:22:19 -07:00
Pheenoh b87b7d1f45 wolfGrabSubjectNoDraw 2022-12-21 15:55:44 -07:00
TakaRikka 6637a124d1 Merge pull request #216 from Pheenoh/rebase
d_a_npc work + tp.py fixes
2022-12-21 13:03:02 -08:00
Pheenoh 693afdbb71 daPy_sightPacket_c::draw() 2022-12-21 13:46:28 -07:00
Pheenoh c1bddb4a3b fixes for taka 2022-12-21 09:56:34 -07:00
Pheenoh 813c0fa45a add missing repo in Contributing.md 2022-12-20 17:07:52 -07:00
Pheenoh e6ad43f094 Merge branch 'master' into rebase 2022-12-20 16:44:19 -07:00
Pheenoh 766bde7a97 fix bug in remove-asm that doesn't account for .inc files 2022-12-20 16:30:01 -07:00
Pheenoh e841829b2c remove asm 2022-12-20 16:30:01 -07:00
Pheenoh 97969b15d2 clean up for pr 2022-12-20 16:30:01 -07:00
TakaRikka 1775ce443c big d_a_alink pass (#214)
* d_a_alink pass1 wip

* more d_a_alink work

* remove asm

* more daalink work

* 20% dol code decompiled

* fixed some nonmatchings for building

* a few daalink functions and labeling some HIO data
2022-12-20 16:30:00 -07:00
Pheenoh 85ad8b190d d_a_npc work
daBaseNpc_c::setBckAnm and J3DAnmTransform* daBaseNpc_c

daBaseNpc_c::setBtpAnm

daBaseNpc_c::attnSttsOn

daBaseNpc_c::orderEvent

daBaseNpc_c::setEnvTevColor

daBaseNpc_c::setRoomNo

daBaseNpc_c::checkEndAnm attempt

CheckCreateHeap

daNpcF_addIdx

daNpcF_subIdx

daNpcF_incIdx

daNpcF_decIdx

daNpcF_ActorMngr_c::initialize()

daNpcF_ActorMngr_c::entry

cleanup daNpcF_ActorMngr_c::entry

daNpcF_ActorMngr_c::remove

daNpcF_ActorMngr_c::getActorP

daNpcF_MatAnm_c::calc attempt

daNpcF_SPCurve_c::initialize

minor fixes

daNpcF_Path_c::initialize

daNpcF_Path_c::setPathInfo

daNpcF_Path_c::chkPassed

daNpcF_Path_c::reverse

daNpcF_Path_c::setNextIdx

daNpcF_Path_c::getNextIdx

daNpcF_Path_c::getBeforeIdx

daNpcF_Path_c::getBeforePos

daNpcF_Path_c::getNextPos

daNpcT_MatAnm_c::initialize

daNpcT_MatAnm_c::calc

daNpcT_addIdx

daNpcT_subIdx

daNpcT_decIdx

daNpcT_Path_c::hermite

daNpcT_Path_c::initialize

daNpcT_Path_c::setPathInfo attempt

daNpcT_Path_c::setNextPathInfo

daNpcT_Path_c::reverse

daNpcT_Path_c::setNextIdx

daNpcT_Path_c::getDstPos attempt

daNpcT_DmgStagger_c::setParam

Add FLOAT_LABEL where possible

fopEn_enemy / fix e_wb

move jasper's jsystem work over

d_attention / d_demo / d_lib work

remove asm

clean up dolphin files / work on some rels (#212)

* d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop

* dolphin OS work / cleanup

* dolphin GX work / cleanup

* finish changing dolphin files to C

* more files into C

* match rest of MSL_C math functions

* more dolphin files converted to C

* remove asm

* d_bg_w work

* remove asm

* d_a_alink work / kytag14

initial changes to d_a_e_yc

checkpoint until virtual destructor issue is solved

daNpcF_Lookat_c::adjustMoveDisAngle

daBaseNpc_c::setMtx

daBaseNpc_moveBgActor_c::daBaseNpc_moveBgActor_c()

daNpcT_c::ctrlFaceMotion

daNpcT_c::ctrlMsgAnm attempt

daNpcT_c::initTalk

daNpcF_clearMessageTmpBit

daNpcF_getDistTableIdx

daNpcF_offTmpBit

daNpcF_onTmpBit

daNpcF_chkTmpBit

daNpcF_onEvtBit

daNpcF_chkEvtBit

daNpcF_c::getDistTableIdx

daNpcF_chkPointInArea

daNpcF_chkDoBtnEqSpeak

daNpcF_getPlayerInfoFromPlayerList attempt

daNpcF_pntVsLineSegmentLengthSquare2D

daNpcF_c::chkPointInArea

daNpcF_c::chkPointInArea

daNpcF_c::getAttentionPos

daNpcT_chkTmpBit

daNpcT_offTmpBit

daNpcT_onTmpBit

daNpcT_chkEvtBit

daNpcT_offEvtBit

daNpcT_onEvtBit

daNpcT_chkDoBtnIsSpeak

daNpcT_getDistTableIdx

daBaseNpc_acMngr_c::entry

daNpcF_c::initTalk

undo override
2022-12-20 16:28:41 -07:00
TakaRikka 84950e08b4 d_camera / m_Do_ext / d_particle + minor various wip (#210) 2022-12-20 16:27:00 -07:00
Pheenoh 84f3fa278e Merge remote-tracking branch 'upstream/master' 2022-12-20 09:12:13 -07:00
TakaRikka ca71275bbe big d_a_alink pass (#214)
* d_a_alink pass1 wip

* more d_a_alink work

* remove asm

* more daalink work

* 20% dol code decompiled

* fixed some nonmatchings for building

* a few daalink functions and labeling some HIO data
2022-12-19 12:06:32 -07:00
Pheenoh 0c02dd2679 checkpoint until virtual destructor issue is solved 2022-11-13 14:25:41 -07:00
Pheenoh af4e91d61b initial changes to d_a_e_yc 2022-11-13 11:50:19 -07:00
TakaRikka 1114b13da8 clean up dolphin files / work on some rels (#212)
* d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop

* dolphin OS work / cleanup

* dolphin GX work / cleanup

* finish changing dolphin files to C

* more files into C

* match rest of MSL_C math functions

* more dolphin files converted to C

* remove asm

* d_bg_w work

* remove asm

* d_a_alink work / kytag14
2022-11-11 11:09:48 -07:00
TakaRikka f03b959831 Merge pull request #211 from TakaRikka/work1
d_attention / d_a_player / d_demo + misc
2022-10-19 00:38:01 -07:00
TakaRikka c3a6d11729 remove asm 2022-10-18 05:17:08 -07:00
TakaRikka 6d006074a7 d_attention / d_demo / d_lib work 2022-10-18 05:15:45 -07:00
TakaRikka 74c248990c move jasper's jsystem work over 2022-10-04 21:17:53 -07:00
TakaRikka a3578d0c7c fopEn_enemy / fix e_wb 2022-10-04 17:29:53 -07:00
TakaRikka 4913395dbd d_camera / m_Do_ext / d_particle + minor various wip (#210) 2022-10-03 18:26:26 -04:00
TakaRikka 0309490521 Merge pull request #209 from tom-overton/include-fixes
Fix some include capitalization
2022-09-03 03:23:28 -07:00
Tom Overton fb504a1bff Fix some include capitalization 2022-09-03 02:58:36 -07:00
TakaRikka f8979749e3 j2d / map_path work, d_drawlist / d_attention cleanup (#208)
* work on fop actor / actor mng, daalink, d_a_obj_item

* d_a_title mostly decompiled

* daalink / d_event / JMessage / dmsg_out_font work

* msg_scrn_base / msg_scrn_boss

* some work on mDo machine, d_menu_save, d_tresure, and various

* remove asm

* progress

* finish d_menu_save / d_pane_class_alpha / d_pane_class / rename some data

* rename more data

* remove asm / progress

* match all of d_pane_class

* fixes / some dKankyo doc

* bunch of j2d work. d_drawlist / d_attention cleanup

* progress / asm

* cleanup wip

* decompile JStage

* setup some more JStudio structs

* set up d_demo classes

* some d_demo work

* cleanup dolphin os stuff

* some initial dEvent documentation

* some At collision documentation

* match JUTConsole::doDraw

* dbgs work / split up some of d_a_alink into .inc files

* d_a_alink_spinner work
2022-08-30 15:22:17 -06:00
Jcw87 bc30d007e1 TNodeLinkList (#207) 2022-07-11 21:44:01 +02:00
Jcw87 9e3baca808 JUTProcBar (#206) 2022-07-11 21:43:46 +02:00
TakaRikka 929c5cfa5a d_menu_save / pane_class / rename some data (#205)
* work on fop actor / actor mng, daalink, d_a_obj_item

* d_a_title mostly decompiled

* daalink / d_event / JMessage / dmsg_out_font work

* msg_scrn_base / msg_scrn_boss

* some work on mDo machine, d_menu_save, d_tresure, and various

* remove asm

* progress

* finish d_menu_save / d_pane_class_alpha / d_pane_class / rename some data

* rename more data

* remove asm / progress

* match all of d_pane_class

* fixes / some dKankyo doc
2022-07-04 21:21:57 +02:00
TakaRikka b68cfbc0e6 Merge pull request #204 from lepelog/misc
misc and d_event
2022-07-02 15:15:47 -07:00
lepelog b99af1efc3 use procname 2022-07-02 14:30:42 +02:00
lepelog b649193f04 misc and d_event 2022-07-02 03:08:21 +02:00
TakaRikka b973f1c798 Merge pull request #203 from lepelog/rel-check
check rels in gh action
2022-06-30 17:20:48 -07:00
lepelog 2c180dfa90 fix imports 2022-07-01 02:01:37 +02:00
lepelog 79b4f1cd9e check rels in gh action 2022-07-01 01:24:31 +02:00
TakaRikka 7d2e4e81dc Merge pull request #202 from lepelog/inline-stuff
move inlines
2022-06-30 16:20:26 -07:00
lepelog a2e21275cb fix 2022-07-01 01:02:48 +02:00
lepelog e71aa4578d move inlines 2022-07-01 00:12:01 +02:00
TakaRikka 046d178003 work on daalink, fop actor, mDo machine, msg_scrn, + various (#201)
* work on fop actor / actor mng, daalink, d_a_obj_item

* d_a_title mostly decompiled

* daalink / d_event / JMessage / dmsg_out_font work

* msg_scrn_base / msg_scrn_boss

* some work on mDo machine, d_menu_save, d_tresure, and various

* remove asm

* progress
2022-06-29 22:19:09 +02:00
TakaRikka cd5b02450c Merge pull request #200 from lepelog/event_data
Event data
2022-06-27 17:23:08 -07:00
lepelog 0b060164da event lib 2022-06-27 01:37:35 +02:00
lepelog d0e349630e small fixes 2022-06-26 23:44:57 +02:00
lepelog afd940edbc fixes, remove asm 2022-06-26 23:25:59 +02:00
lepelog f215e2d649 more nonmatching 2022-06-26 22:33:09 +02:00
lepelog faea874741 match dEvDt_Next_Stage 2022-06-15 22:37:02 +02:00
lepelog 8945d46f09 progress 2022-06-08 21:50:29 +02:00
Jcw87 fb9dd3cdee JKRDvdRipper, JKRSolidHeap (#199) 2022-06-07 16:03:27 -04:00
TakaRikka 3c962112db Merge pull request #198 from TakaRikka/ext
m_Do / JUTGamePad / various work
2022-06-02 03:21:34 -07:00
TakaRikka 69108b8731 Merge branch 'master' of https://github.com/zeldaret/tp into ext 2022-06-01 05:00:55 -07:00
TakaRikka ab03edeb80 Merge pull request #197 from lepelog/event
event manager
2022-06-01 04:55:21 -07:00
TakaRikka 691c928767 update progress 2022-06-01 04:32:46 -07:00
TakaRikka eac84e07bc revert some format changes 2022-06-01 04:31:11 -07:00
TakaRikka 32cea78625 format 2022-06-01 04:23:39 -07:00
TakaRikka 3f22fa4483 m_Do / d_a_npc work 2022-06-01 03:49:32 -07:00
TakaRikka 36e62e0b80 npcT / JUTGamePad work 2022-05-28 03:49:55 -07:00
lepelog 132f0cbfb7 some cleanup 2022-05-21 21:25:05 +02:00
lepelog ac5a31ff42 event manager 2022-05-21 16:11:46 +02:00
Jcw87 9bcbccbeb5 JKRArchive: fix SDirEntry confusion (#196) 2022-05-21 10:26:15 +02:00
Jcw87 0e299bb7a1 JKRDvdAramRipper (#195) 2022-05-16 19:42:10 -04:00
Jcw87 88be83ca43 tp.py: Add type annotations (#190) 2022-05-07 14:38:20 -04:00
TakaRikka d91b1294bb d_name / d_s_name (#194)
* d_name

* scnname
2022-04-28 16:58:43 -04:00
TakaRikka 07c5152e5a Merge pull request #193 from magcius/j3dsys
more J3D work
2022-04-26 23:28:35 -07:00
TakaRikka 589cc12296 some MSL_C work (#192)
* wip

* bunch of MSL_C files

thanks to pikmin2 decomp for their work

* format / asm

* progress

* fix

* fix remove-asm to work with C files

* init / start
2022-04-24 13:02:50 +02:00
Jasper St. Pierre 907e734ae7 J3DVertex: clean up 2022-04-24 01:57:11 -07:00
Jasper St. Pierre 58b58a4181 J3DVertex: OK
Fully matched now.
2022-04-24 01:57:11 -07:00
Jasper St. Pierre 9bee853ab4 J3DShape / J3DShapeDraw: More OK 2022-04-24 01:57:11 -07:00
Jasper St. Pierre f1f9cc713d J3DShape/J3DShapeMtx: More work 2022-04-24 01:57:11 -07:00
Jasper St. Pierre fb8b3251d6 J3DShape: more OK 2022-04-24 01:57:11 -07:00
Jasper St. Pierre 2358fd042d J3DShape: OK progress 2022-04-24 01:57:06 -07:00
Jasper St. Pierre d954f9348c J3DDrawPacket: more OK 2022-04-23 18:39:27 -07:00
Jasper St. Pierre b2067d6341 J3DTexture: OK 2022-04-23 18:27:44 -07:00
Jasper St. Pierre 69d8d66c00 J3DSys::drawInit 2022-04-23 17:27:10 -07:00
Jasper St. Pierre d97594ac22 J3DSys: j3dDefaultTexCoordInfo table 2022-04-23 15:46:00 -07:00
Jasper St. Pierre 5e47481d7f J3DSys::J3DSys 2022-04-23 15:38:37 -07:00
Jasper St. Pierre 28b51b6010 J3DSys: setTexCacheRegion 2022-04-23 15:27:56 -07:00
Jasper St. Pierre 2d3a2fb815 J3DSys: loadMtxIndx 2022-04-23 15:08:33 -07:00
Jasper St. Pierre fd3c6ed326 J3DTevs: patchTexNo_PtrToIdx 2022-04-23 14:43:04 -07:00
Jasper St. Pierre 809fe3f963 Swap around some default types 2022-04-23 14:37:01 -07:00
Jasper St. Pierre e5df49a7f3 J3DShape: Some funcs 2022-04-23 14:34:11 -07:00
Jasper St. Pierre f1d2226507 GXColor: Remove assignment operator
Not necessary; not sure why I even added it
2022-04-23 14:29:46 -07:00
Jasper St. Pierre 33a736558b Add m2ctx stuff to gitignore 2022-04-23 14:27:14 -07:00
TakaRikka a1099217d6 J2DScreen / some J2DMaterial (#191)
* j2dscreen

* some j2dmaterial work

* remove asm
2022-04-12 16:44:06 -04:00
Jcw87 4270643931 tp.py: Explicitly specify utf-8 encoding when opening text files. (#189) 2022-04-11 00:59:52 +02:00
jdflyer 545da8536d Add Progress.md (#187)
* Match DynamicLink

* finish merge

* Add Progress.md and update readme
2022-04-10 18:29:58 -04:00
TakaRikka dd8899033b d_s_logo (#188)
* d_s_logo

* match fpcM_Management

* asm
2022-04-10 18:29:28 -04:00
TakaRikka 02c7a47f13 move remaining old progress (#186)
* move remaining old progress

* remove asm
2022-03-26 13:17:17 -04:00
Pheenoh 0cfa10aea8 fix readme links 2022-03-22 23:58:57 -04:00
Pheenoh 158a128fb3 Merge remote-tracking branch 'upstream/master' into docs 2022-03-22 23:57:36 -04:00
TakaRikka 3af0f51186 m_Do_MemCard / m_Do_MemCardRWmng (#184)
* memcard wip

* format / asm

* fix includes

Co-authored-by: TakaRikka <taka@DESKTOP-T4B7CTF.localdomain>
2022-03-22 23:42:16 -04:00
Pheenoh 1f5630246e Update README and Contributing (#185) 2022-03-22 23:41:57 -04:00
Pheenoh f5a2c5900c Update README and Contributing 2022-03-22 09:42:08 -04:00
TakaRikka 6205118b06 Merge pull request #183 from Zen64/master
Capitalization fixes & msl library folder names
2022-03-21 01:08:31 -07:00
Zen64 4eb820bb83 Renamed instances of msl_c -> MSL_C because 2022-03-20 00:01:24 -04:00
Zen64 1303dd683e renamed msl_c -> MSL_C 2022-03-19 23:44:14 -04:00
Zen64 6e4adde5d2 asm files that showed up after last commit 2022-03-19 22:32:01 -04:00
Zen64 727b2768e2 Fixed capitalization and msl library names 2022-03-19 22:31:05 -04:00
TakaRikka 6ff6982c20 Merge pull request #182 from TakaRikka/w
shop_system / d_msg_flow wip
2022-03-19 04:22:18 -07:00
TakaRikka 9b81bd3fc3 format / asm 2022-03-15 02:35:30 -07:00
TakaRikka 985d47a5c8 msg_flow wip 2022-03-15 02:25:25 -07:00
TakaRikka fdaeb3437d shop_system stuff 2022-02-24 14:04:56 -08:00
TakaRikka 9ba9d7c06c d_model / d_simple_model / d_stage + cleanup (#181)
* d_model / d_simple_model / cleanup

* d_stage work

* set up saveHIO / remove asm

* d_a_itembase
2022-02-19 14:22:47 +01:00
TakaRikka d85ab6d159 Merge pull request #180 from TakaRikka/dylink
c_dylink
2022-02-10 07:06:04 -08:00
TakaRikka ef903f4ab3 remove asm 2022-02-07 18:09:29 -08:00
TakaRikka 2e1be6224f jdflyer's work
Co-Authored-By: jdflyer <jdflyer10@gmail.com>
2022-02-07 17:47:45 -08:00
TakaRikka 92a4cd174e c_dylink 2022-02-07 15:27:50 -08:00
TakaRikka 3a79e96e8b d_meter2 wip / d_s_play / d_file_sel_info (#179)
* d_meter2 wip

* d_s_play

* d_file_sel_info

* format

* tag_lv5soup / tag_setBall / fix dKyeff

* d_cc_uty
2022-02-06 09:23:54 -05:00
TakaRikka 612f26c132 d_kankyo_wether / d_eye_hl (#178)
* d_eye_hl / d_kankyo_wether wip

* more d_kankyo_wether + format

* remove asm

* some d_kankyo wip

* fix dccs vtable

* some m_Do_graphic / d_meter2_draw work
2022-01-25 21:24:14 +01:00
TakaRikka 6f4d068f1d Merge pull request #177 from jdflyer/master
Shiftability
2022-01-18 22:05:13 -08:00
TakaRikka 169f56ca2c Merge pull request #176 from lepelog/J2DAnmLoader
J2DAnmLoader
2022-01-18 22:04:56 -08:00
jdflyer 252c5daba7 Formatting fixes 2022-01-17 20:19:43 -07:00
jdflyer ecc987f34c Hyrule field speedhack and shiftability fixes 2022-01-17 20:00:12 -07:00
lepelog ce5a8c47ad fix enum 2022-01-17 20:58:30 +01:00
jdflyer 824a9eabc9 Merge remote-tracking branch 'Upstream/master' 2022-01-16 15:20:32 -07:00
jdflyer 641b04d470 Removed Unused asm 2022-01-16 15:18:29 -07:00
jdflyer db9079ede2 Shift Fixes 2022-01-16 15:16:08 -07:00
jdflyer 8a9f18c45f Shift Fixes
I also updated elf2dol
2022-01-16 15:15:24 -07:00
jdflyer e1246d9b0a Shiftable 2022-01-15 17:59:59 -07:00
lepelog 36e7f7639e J2DAnmKind enum 2022-01-12 20:41:39 +01:00
lepelog ef1757a63b giving up for now 2022-01-12 20:26:06 +01:00
lepelog e1903d20cf slight cleanup 2022-01-12 20:26:05 +01:00
lepelog 16ee7c9813 improvement 2022-01-12 20:26:05 +01:00
lepelog 2fe9bb78ae function ordering :( 2022-01-12 20:26:04 +01:00
lepelog a1497b3bf5 tmp 2022-01-12 20:26:04 +01:00
TakaRikka 2d125d40b8 Merge pull request #175 from TakaRikka/menu
d_menu_window / JFramework
2022-01-12 06:33:57 -08:00
jdflyer c72012c5d8 Add basic dol shiftability
Fixed an incorrect function name
2022-01-11 21:12:44 -07:00
jdflyer 50471c025b Merge remote-tracking branch 'Upstream/master' 2022-01-11 20:24:58 -07:00
jdflyer 0adee83f89 prepare makefile for shiftability 2022-01-11 20:20:58 -07:00
jdflyer d0a7d3cd34 fix intentional diff I made for testing 2022-01-11 19:46:30 -07:00
jdflyer 7e97dfab7b Match destructor and msl_c header include fixes 2022-01-11 19:36:28 -07:00
TakaRikka ec0a057c82 fixes 2022-01-10 19:17:42 -08:00
TakaRikka a08f84abd5 JUTGraphFifo 2022-01-10 06:10:00 -08:00
TakaRikka 32fc4e2944 JUTAssert 2022-01-10 04:07:06 -08:00
TakaRikka 107f85a5f8 remove asm 2022-01-09 17:56:12 -08:00
TakaRikka d6f68167c6 Merge branch 'master' of https://github.com/zeldaret/tp into menu 2022-01-09 17:41:12 -08:00
TakaRikka 37146dfed1 JFramework mostly ok 2022-01-09 17:33:14 -08:00
lepelog da3d98b67a J2DAnimation (#173)
* ok

* naming stuff
2022-01-04 18:18:23 +01:00
EpochFlame f4a3c80af3 decompile jstudio-data.cpp (#174)
* decompile jstudio-data.cpp

did this earlier for Pikmin 2

* clarify stb-data

* clarify fvb-data

* formatting

* clang-format properly
2022-01-04 18:09:53 +01:00
lepelog 31c937124b remove clang-format (#172) 2022-01-04 18:03:48 +01:00
TakaRikka 035a24092e format 2022-01-04 05:37:27 -08:00
TakaRikka f8ce912342 d_menu_window 2022-01-04 04:53:20 -08:00
TakaRikka 15808a2011 Merge pull request #171 from TakaRikka/wip1
d_a_player / d_meter_map + misc
2022-01-04 03:46:52 -08:00
jdflyer 346215bd49 Match most of DynamicLink 2022-01-03 21:05:34 -07:00
TakaRikka b8573fe911 Merge pull request #170 from magcius/jpa3
JPAExtraShape
2021-12-31 06:35:39 -08:00
TakaRikka 01b3687092 remove asm 2021-12-28 03:04:54 -08:00
TakaRikka 4b60389c21 d_menu_window_HIO ok 2021-12-28 03:02:45 -08:00
TakaRikka b459859a82 remove asm 2021-12-27 06:31:55 -08:00
TakaRikka 3c26cf452e cleanup 2021-12-27 06:17:37 -08:00
TakaRikka 38037ea1a0 d_meter_map / some d_a_alink 2021-12-27 05:15:35 -08:00
Jasper St. Pierre 343f65d665 one more build fix 2021-12-24 14:56:04 -08:00
Jasper St. Pierre 4d9026121e build fix 2021-12-24 14:50:32 -08:00
Jasper St. Pierre b9a53e8169 JPAChildShape, more work on JPADynamicsBlock 2021-12-24 13:01:37 -08:00
Jasper St. Pierre e4e6a51a5a JPABaseShape color regist funcs 2021-12-23 21:21:30 -08:00
Jasper St. Pierre f7eed3278f a few more JPAResource functions 2021-12-23 21:02:42 -08:00
Jasper St. Pierre 32d021a889 JPAExtraShape 2021-12-23 20:56:02 -08:00
Jasper St. Pierre 045fefcab7 minor cleanups 2021-12-23 17:10:39 -08:00
Jasper St. Pierre 2ec3e1f189 Add an enum for the different procnames (actor types)
and switch over the stage data table to use it.
2021-12-23 16:46:48 -08:00
TakaRikka 2074bd72d9 wip 2021-12-21 06:06:57 -08:00
notyourav acd2622e29 Merge pull request #169 from lepelog/j2dmanage
J2DManage
2021-12-14 00:11:28 -08:00
lepelog e17003ab29 offset comments 2021-12-13 11:31:40 +01:00
lepelog fdd13a5797 j2dmanage 2021-12-12 03:00:35 +01:00
lepelog 202e3c51c0 J2DPane (#168)
* most of J2DPane

* finish j2dpane

* cleanup

* use J2DBlendInfo
2021-12-11 23:39:53 +01:00
TakaRikka 6c681c985c Merge pull request #167 from lepelog/J2DGrafContext
J2DGrafContext and J2DOrthoGraph
2021-12-06 20:41:47 -08:00
lepelog 9b9dfca657 fixes 2021-12-06 22:02:10 +01:00
lepelog 9da2309be7 J2DGrafContext and J2DOrthoGraph 2021-12-06 13:14:13 +01:00
Jasper St. Pierre c15d8fcb3e more simple J2D/J3D funcs (#166)
* more simple J2D/J3D funcs

* JPABaseShape constructor

* fmt

Co-authored-by: lepelog <25211966+lepelog@users.noreply.github.com>
2021-12-06 12:51:53 +01:00
TakaRikka f7916ebde1 Merge pull request #165 from TakaRikka/link
daAlink work
2021-12-05 17:15:10 -08:00
TakaRikka cc29e8e5c9 Merge pull request #164 from lepelog/JUTDbPrint
JUTDbPrint
2021-12-05 17:13:56 -08:00
TakaRikka 751a4112a0 fixes 2021-12-04 16:27:19 -08:00
TakaRikka 942c375fe5 format / asm 2021-12-04 05:57:01 -08:00
TakaRikka b88340aca7 merge 2021-12-04 05:29:00 -08:00
TakaRikka fd9c4cafc4 wip 2021-12-04 05:10:59 -08:00
lepelog d51f7bf0c6 fix and format 2021-12-04 12:27:59 +01:00
lepelog c839b3336e JUTDbPrint 2021-12-03 10:07:20 +01:00
icogn f6f7e7ce38 d_kankyo_data and d_kankyo work (#158)
* Copy over progress

* Comment other d_kankyo_data dat section stuff

* Compiling

* Progress

* Progress

* Close

* Match

* Clean

* Change loop

* Clean

* Clean

* Before attempt clean

* Work on dKy_F_SP121Check, not compiling

* Adjust comparisons

* Adjust headers

* Close

* Matching

* Remove

* Comments

* Fix u8 pointer

* Comment

* Adjust

* Comment stage names

* Rename member

* Decomp dKy_darkworld_spot_check

* Decomp dKy_darkworld_Area_set

* Adjust

* Comments, small adjust

* Add phase1 base txt

* Working through d_s_play phase_1

* Finish function outline

* Comments

* Add darkLv enum

* Rename enum

* Refactor

* Comment

* Documentation

* Move out notes

* Comments

* Adjust

* Rename structs

* Comments

* Minor adjust

* Comment

* Adjust and Comments

* Adjust

* Adjust

* Comment

* Clean

* Add back addresses

* Adjust comment

* Adjust comments

* Comments

* Comment

* Adjust for clang-format-10

* Edit getName

* Fix fog table

* Make l_field_data use placeholder struct

* Make l_envr_default use placeholder struct

* Make l_vr_box_data use placeholder struct

* Make l_pselect_default use placeholder struct
2021-12-02 23:43:22 +01:00
Jonathan Wase bc428f7f65 Clean up and improvements to tools (#163)
* moved elf2dol

* removed postprocess.py

* removed vtables.py

* find_unused_asm.py

* removed section2cpp.py

* removed splitter/*

* fixed symbol names due to iconv file rename

* fixed problem building RELs caused by #160

* improved performance of a few python tools

* added new tool for finding conflict when not OK

* added ./tp setup

* don't install dol2asm dependecies with requirements.txt

* format and check for imports

* remove unused tools/difftools.py

* fixed ignore to include elf2dol

* fix compiler patcher

* ok-check now creates the patched compiler at mwcceppc_patched.exe

* Add new command to copy the build folder to the expected folder

* 'make clean' will now only clean main.dol stuff. (added clean_rels and clean_all)

* './tp pull-request' and './tp check' now doesn't include RELs by default. Use '--rels' to include them in the process.

* './tp remove-unused-asm --check' added, exitcode 0==no files, 1==exists files

Co-authored-by: Julgodis <>
2021-12-02 23:38:37 +01:00
TakaRikka 5f187a0776 Merge pull request #161 from lepelog/c-lib
c_lib OK
2021-12-02 06:38:58 -08:00
notyourav c4ef30bc95 Port JStudio work to new branch (#160)
* build fix

* stb

* functionvalue

* fvb

* jstudio cleanup

* d
2021-11-26 15:50:22 +01:00
lepelog bac74bd010 remove obsolete comment 2021-11-26 10:21:06 +01:00
lepelog 5bf31ecd8d c_lib OK 2021-11-26 00:44:17 +01:00
lepelog 475d94201c rebase 2021-11-13 13:24:38 +01:00
lepelog 58715df2cb cLib_addCalcPos 2021-11-13 13:14:38 +01:00
lepelog 891b4f14b1 addCalc 2021-11-13 13:12:53 +01:00
TakaRikka 70eabb12bd wip 2021-11-10 23:54:31 -08:00
TakaRikka 74ed2da8bc d_bg_s (#159)
* wip

* d_bg_s

* most of d_bg_s

* small cleanup

* clang

* fixes
2021-11-10 19:56:51 +01:00
Jonathan Wase 901b222eb8 JUTException (#154)
* JUTException inherit JKRThread

* OK __ct__12JUTExceptionFP14JUTDirectPrint

* OK create__12JUTExceptionFP14JUTDirectPrint

* OK setFPException__12JUTExceptionFUl

* OK showFloatSub__12JUTExceptionFif

* OK showFloat__12JUTExceptionFP9OSContext

* OK searchPartialModule__12JUTExceptionFUlPUlPUlPUlPUl

* OK search_name_part__FPUcPUci

* OK showStack__12JUTExceptionFP9OSContext

* OK showMainInfo__12JUTExceptionFUsP9OSContextUlUl

* OK showGPR__12JUTExceptionFP9OSContext

* OK __sinit_JUTException_cpp

* OK showMapInfo_subroutine__12JUTExceptionFUlb

* OK showGPRMap__12JUTExceptionFP9OSContext

* OK showSRR0Map__12JUTExceptionFP9OSContext

* OK printDebugInfo__12JUTExceptionFQ212JUTException9EInfoPageUsP9OSContextUlUl

* OK isEnablePad__12JUTExceptionCFv

* OK readPad__12JUTExceptionFPUlPUl

* NONMATCHING printContext__12JUTExceptionFUsP9OSContextUlUl

* OK printContext__12JUTExceptionFUsP9OSContextUlUl

* OK __dt__12JUTExceptionFv

* OK waitTime__12JUTExceptionFl

* OK createFB__12JUTExceptionFv

* OK setPreUserCallback__12JUTExceptionFPFUsP9OSContextUlUl_v

* OK __ct__13JUTExternalFBFP16_GXRenderModeObj8_GXGammaPvUl

* OK createConsole__12JUTExceptionFPvUl

* NONMATCHING queryMapAddress_single__12JUTExceptionFPcUllPUlPUlPcUlbb

* OK queryMapAddress__12JUTExceptionFPcUllPUlPUlPcUlbb

* OK appendMapFile__12JUTExceptionFPCc

* clean up

* OK panic_f__12JUTExceptionFPCciPCce

* OK panic_f_va__12JUTExceptionFPCciPCcP16__va_list_struct

* OK errorHandler__12JUTExceptionFUsP9OSContextUlUl

* format

* format

* fixed requested changes

* merged with master and removed *.s files

Co-authored-by: Julgodis <>
2021-11-09 23:09:38 +01:00
TakaRikka 5020395dfd J2D structs + print / fix GX + MSL string headers (#157)
* J2D structs + print / fix GX + MSL string headers

* remove msl_c/string.h
2021-10-24 23:35:00 +02:00
icogn b88cb8cdc0 Update clang-format-check.sh and make executable (#156)
* Update clang-format-check.sh and make executable

* Make executable

Co-authored-by: Isaac <iico7no2@gmail.com>
2021-10-15 00:01:58 +02:00
TakaRikka a2636e84c3 J3D setup (#155)
* setup j3d classes

* remove asm

* fixes

* fix newDifferedDisplayList
2021-10-11 18:38:53 +02:00
TakaRikka 5084413cb7 Merge pull request #153 from lepelog/speedup-progress
speedup tp.py progress
2021-10-07 17:06:17 -07:00
lepelog bf6c517051 speedup tp.py progress 2021-10-04 21:53:48 +02:00
TakaRikka 5390dfe55f Z2AudioMgr / various JAudio setup (#152)
* audioMgr setup

* bunch of JAudio setup
2021-09-30 10:13:49 -04:00
TakaRikka 4efaff5faf Merge pull request #151 from TakaRikka/pr___
m_Do_printf / JUTConsole
2021-09-27 18:42:36 -07:00
TakaRikka 0a5d76de76 suggestions 2021-09-27 16:51:38 -07:00
TakaRikka eaf0fe5cae format 2021-09-27 15:57:11 -07:00
TakaRikka f041c554cb Merge branch 'master' of https://github.com/zeldaret/tp into pr___ 2021-09-27 15:46:25 -07:00
TakaRikka a08acfa69b m_Do_printf / JUTConsole 2021-09-27 15:27:58 -07:00
notyourav 512cc73cd7 Merge pull request #150 from Julgodis/JUTVideo 2021-09-27 11:36:18 -07:00
Julgodis 77ad390d8e Format and clean up from merge. 2021-09-27 18:49:30 +02:00
Julgodis 444cad0d10 Format and removed unused .s files. 2021-09-27 18:09:55 +02:00
Julgodis d0e22b9f1b OK postRetraceProc__8JUTVideoFUl 2021-09-27 18:09:54 +02:00
Julgodis c2fc1f85a5 OK drawDoneCallback__8JUTVideoFv 2021-09-27 18:09:54 +02:00
Julgodis a38b487493 OK preRetraceProc__8JUTVideoFUl 2021-09-27 18:09:54 +02:00
Julgodis 0e03ff4e3a OK __ct__8JUTVideoFPC16_GXRenderModeObj 2021-09-27 18:09:54 +02:00
TakaRikka a7ccd88167 Merge pull request #149 from Julgodis/JUTDirectPrint
JUTDirectPrint
2021-09-26 10:31:34 -07:00
Julgodis bb9dbd758f Removed #if DEBUG and clean up. 2021-09-26 12:28:18 +02:00
Julgodis bf12ea7a11 Removed JUtility.h and added './tp format' 2021-09-26 12:11:21 +02:00
Julgodis fa19d7a32e pull-request cleanup (main.dol: 15.597194%) 2021-09-26 03:49:41 +02:00
Julgodis 8adef19731 Removed .s files and cleanup. 2021-09-26 03:38:04 +02:00
Julgodis f01da4a3aa OK setCharColor__14JUTDirectPrintFUcUcUc 2021-09-26 03:38:04 +02:00
Julgodis e7c4a7a523 OK setCharColor__14JUTDirectPrintFQ28JUtility6TColor 2021-09-26 03:38:04 +02:00
Julgodis 801f438beb OK drawString_f__14JUTDirectPrintFUsUsPCce 2021-09-26 03:38:04 +02:00
Julgodis 2e31b7160b OK va_list, va_start, va_arg, and va_end 2021-09-26 03:38:03 +02:00
Julgodis d105dd9d80 OK drawString__14JUTDirectPrintFUsUsPc 2021-09-26 03:38:03 +02:00
Julgodis 8d5e81b12f OK printSub__14JUTDirectPrintFUsUsPCcP16__va_list_structb 2021-09-26 03:38:03 +02:00
Julgodis 0ed8a12f7f OK changeFrameBuffer__14JUTDirectPrintFPvUsUs 2021-09-26 03:38:03 +02:00
Julgodis 35631bf4ff NONMATCHING drawChar__14JUTDirectPrintFiii 2021-09-26 03:38:03 +02:00
Julgodis a998dca498 OK erase__14JUTDirectPrintFiiii 2021-09-26 03:38:03 +02:00
Julgodis 661e7cc214 OK start__14JUTDirectPrintFv 2021-09-26 03:38:03 +02:00
Julgodis 7d0aedacf6 OK __ct__14JUTDirectPrintFv 2021-09-26 03:38:03 +02:00
Julgodis bb8d99313b Added TColor.h 2021-09-26 03:38:03 +02:00
TakaRikka b3b3215f32 Merge pull request #148 from Julgodis/RELCheck
Fixed incorrect offset in RELs and JKRHeap redefined error.
2021-09-25 18:07:49 -07:00
Julgodis 6b7484f3cd Fixed incorrect offset in RELs and JKRHeap redefined error. 2021-09-26 02:38:35 +02:00
Jonathan Wase 800047a854 JKRThread & JKRThreadSwitch (#147)
* OK __ct__15JKRThreadSwitchFP7JKRHeap

* OK createManager__15JKRThreadSwitchFP7JKRHeap

* OK enter__15JKRThreadSwitchFP9JKRThreadi

* OK callback__15JKRThreadSwitchFP8OSThreadP8OSThread

* OK draw__15JKRThreadSwitchFP14JKRThreadName_P10JUTConsole

* OK draw__15JKRThreadSwitchFP14JKRThreadName_

* OK __dt__15JKRThreadSwitchFv

* JKRThread.cpp cleanup

* Fixed tp.py and libelf, changed JUT_ASSERT macro and removed unused .s files.

* Changed JKRThread access specifiers

Co-authored-by: Julgodis <>
2021-09-24 11:13:23 -04:00
TakaRikka 7d271be857 m_Do cleanup, d_resource, drawlist stuff (#145)
* d_resource / some d_stage

* setup dDlst_list_c / d_select_icon OK

* JUTXfb / some JUTVideo + various

* some J2D classes / JUTVideo/Fader attempts

* bunch of m_Do cleanup + matches / f_ap_game OK

* mDoLib_clipper::setup OK

* most of d_meter_HIO OK

* pane_class / kantera_icon_meter
2021-09-24 11:11:10 -04:00
Jcw87 ea42afb6f8 JKRExpHeap (#146) 2021-09-11 20:38:50 +02:00
lepelog f25c24699b Jsupport stream and JKRAramArchive (#143)
* JSupport streams

* JKRAramArchive
2021-08-28 16:32:14 +02:00
TakaRikka daf45f768d move J2D / JUTResFont (#144)
* move some JSystem and meter2_info stuff

* more J2D / JUTTexture / JUTPalette

* setup dScnKy_env_light_c
2021-08-28 16:25:03 +02:00
TakaRikka e14b04c54a move more of d_save / d_com_inf_game (#141)
* some d_save matches / fixes

* more d_save cleanup

* fopAc_ac_c changes

* move a bunch of d_save / d_com_inf_game stuff

* format + remove asm

* move bit labels to correct header

* format

* move d_item

* fix check_itemno doc

* move

* fixes

* getLayerNo_common_common almost matching

just regalloc issues

* small fixes

* few more matches

* fix
2021-08-23 22:47:18 +02:00
Erin Moon f6df420a61 prevent a ./tp progress crash when no rels are built (#142)
calculate_progress() would attempt to print a rel completion percentage
even when no rels were found. the total size of the rels would thus be
zero, resulting in a ZeroDivisionError. instead, we simply print
em-dashes in the summary columns if no rels were found.
2021-08-21 20:42:58 +02:00
lepelog 38eca47ad5 __sinit_d_com_inf_game_cpp OK (#140)
* mass mng header

* d_cc_d start

* c_cc_d ok

* tmp commit

* almost, reordering of vtable functions

* progress

* more progress

* cleanup, still non matching

* mark all of d_cc_d as nonmatching to OK

* c_cc_s

* c_cc_s OK

* d_cc_mass_s OK

* cleanup

* gameinfo __sinit, not OK

* a bit of cleanup

* format

* remove asm

Co-authored-by: lepelog <lepelog@users.noreply.github.com>
2021-08-16 20:59:00 -04:00
lepelog 9765844d92 mDoDvdThd OK (#139)
* mDoDvdThd

* cleanup
2021-08-16 20:56:19 -04:00
kipcode66 6867475c36 Fix for item slots (#137)
* fix item slots

* formatting
2021-08-14 13:20:23 +02:00
TakaRikka ba5ad31b54 d_stage / d_lib (#136)
* d_lib move

* move / work on d_stage

* add mDoExt funcs to header

* d_kyeff/kyeff2, d_bg_s_poly_pass_chk

* use array_size in d_stage
2021-06-18 09:33:51 -04:00
Pheenoh 8c2a3ae7ea add make assets target 2021-06-13 19:47:12 -04:00
Pheenoh 1aa177a920 wq!
Merge branch 'make_assets' into dol2asm_fullsplitt
2021-06-13 19:07:22 -04:00
Pheenoh a26a9eda24 add asset extract script 2021-06-13 19:07:06 -04:00
TakaRikka 4448c08ac0 move / fix bunch of stuff (#133)
* fix some class structures / d_event wip

* d_event wip

* move gamepad stuff

* move m_Do_main

* move d_bomb / partial m_Do_reset

* format

* remove asm

* add Z2SoundID enum

* move some Z2 classes

* fix

* move more Z2 stuff

* fix fopAc_ac_c more
2021-06-12 18:22:36 -04:00
lepelog 5be309a186 c_cc_d (#132)
* gnd check

* more c_bg_s

* start adding static asserts for size

* Add more size checks

* c_cc

* c_cc progress

* failed implementing cCcD_*Attr

* progress

* format

* try destructor

* data

* remove unused asm

* remove inlineCross

* remove functions that didn't belong there

* naming fix

* match cCcD_SphAttr::CalcAabBox

* cCcD_Stts::ClrTg

* c_cc_s and mass fixes
2021-06-12 18:20:45 -04:00
lepelog b728ec1ef5 J3duclip, fop_actor_mng and related stuff (#131)
* J3DUClipper sinit

* sincosTable_ etc

* decompile JMATrigonometric sinit

* f_op_actor_mng

* move f_op_actor_mng and parts of mDo_ext

* J3DSys sinit

* f_op_scene_req

* failed matching attempt for decodeSZS__9JKRDecompFPUcPUcUlUl

* mX -> x

* fix mCull and fopAcM_prm_class members

* fix a few function parameters

* move missing NON_MATCHING

* remove some unneeded data

* turns out that data was not unused

* remove unused asm

* readd asm deleted by accident
2021-06-02 08:13:31 -04:00
TakaRikka e915df66c8 move d_a_alink and some related stuff (#130)
* clean up d_a_player

* move some of daalink

* more daalink / daplayer

* setup some daalink members

* rest of daalink members setup

* remove comment

* few more matches

* remove asm

* more matches

* more matches + move e_wb_class

* fix some d_save classes

Co-authored-by: lepelog <lepelog@users.noreply.github.com>
2021-05-23 12:09:59 +02:00
Jasper St. Pierre 462d71cbef Makefile fixes / JUTNameTab (#129)
* Makefile: Fix issues with iconv causing it to break under devkitPro / msys

The version of iconv included in devkitPro does not have a -o option,
so replace it with normal shell redirection. Also, SHIFT-JIS does not
have a mapping for ~, so output the Windows CP932 variant instead,
which does. See:
https://en.wikipedia.org/wiki/Tilde#Unicode_and_Shift_JIS_encoding_of_wave_dash
https://en.wikipedia.org/wiki/Code_page_932_(Microsoft_Windows)#Single-byte_character_differences

* Update diff configuration

-Bbinary doesn't seem to work with my copy of
bjdump (it says it can't decode unknown architecture)

Cheese things by using expected/ instead of having
the user place things manually.

* JUTNameTab

* J3DPacket / J3DDrawBuffer

* format

Co-authored-by: lepelog <lepelog@users.noreply.github.com>
2021-05-10 11:54:07 -04:00
lepelog 9799fadfe8 fix build due to mtx_vec split 2021-05-03 14:36:22 +02:00
TakaRikka a83a461e54 move some of d_com_inf_game (#128)
* move most d_com_inf_game

* remove temp
2021-05-02 20:04:42 -04:00
lepelog 8fd9f2ab5d Copy JKernel (#126)
* start JSystem

* JKRAram and JUTGamePad

* started heap and thread

* more JKernel

* mostly finished JKernel

* delete unused asm

* JKRFileFinder

* delete unused asm and match findNextFile

* format

* fix mtx_vec
2021-05-02 20:03:24 -04:00
lepelog 3b7364d481 Add requirements.txt with all necessary python dependencies and update README (#127)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-05-02 14:49:51 -04:00
lepelog 63cd9416f2 move Z2Calc, c_math and f_op_draw_iter (#125)
* Z2Calc

* port over c_math

* fop_draw_iter

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-05-02 13:46:36 -04:00
TakaRikka 2f4904dae2 move d_a_itembase_static / d_a_item_static / Z2StatusMgr (#123)
* move d_a_itembase_static

* move d_a_item_static

* moved Z2StatusMgr

* clang

* fixes

* clang?

* move d_save

* move d_meter2_info

* some d_meter2_info fixes

* move most d_a_player

* move d_bg_s stuff

* move c_cc_s stuff

* move d_cc stuff

* move d_attention / d_event / d_stage
2021-05-02 13:13:14 -04:00
lepelog a9c78b5b0b Merge remote-tracking branch 'Julgodis/dol2asm_fullsplitt' into new-disasm-codecopy 2021-04-19 18:11:56 +02:00
Julgodis 3e8554bd51 RELs progress 2021-04-10 22:32:02 +02:00
Julgodis 0ad6ebe7b4 moved strings + decompile simple store functions 2021-04-10 07:02:38 +02:00
lepelog 8cfd681585 some f_op 2021-04-09 01:22:16 +02:00
lepelog 10734701d5 more SComponent 2021-04-08 22:18:35 +02:00
Julgodis 2661db6aaa auto decompile more functions 2021-04-08 21:05:48 +02:00
lepelog 745c9eb2cd some parts in c_lib 2021-04-08 18:43:16 +02:00
lepelog 3d26abcc08 remove asm 2021-04-08 18:02:36 +02:00
lepelog f1707d3322 c_xyz OK 2021-04-08 17:46:20 +02:00
lepelog e504a7076a delete unused asm, c_m3d_g 2021-04-08 16:01:29 +02:00
lepelog cacc69cda2 Merge branch 'dol2asm_fullsplitt' into new-disasm-codecopy 2021-04-08 15:15:40 +02:00
Julgodis a23a106399 demangle data-symbols 2021-04-08 01:47:05 +02:00
lepelog 80051063ff c_xyz and c_angle sinit 2021-04-08 00:29:42 +02:00
lepelog ed3df56644 Merge branch 'dol2asm_fullsplitt' into new-disasm-codecopy 2021-04-07 23:50:40 +02:00
Julgodis dca1d2a1c0 detect more floats/doubles, including from relocations 2021-04-07 09:16:47 +02:00
Julgodis ed1ee30dd2 building RELs 2021-04-06 18:00:35 +02:00
lepelog 53c6aa6c8b ported over f_pc 2021-04-01 12:06:29 +02:00
Julgodis f6464a61ce __sinit and progress script update 2021-04-01 02:07:58 +02:00
lepelog 87bc0e711b c_API 2021-04-01 00:15:05 +02:00
Julgodis b999714187 .dead section fix 2021-03-31 23:22:38 +02:00
lepelog 0b09be34fb start c_m3d 2021-03-31 00:50:18 +02:00
lepelog 38c71b1968 counter 2021-03-30 23:55:16 +02:00
lepelog 88e40c58cb c_angle 2021-03-30 23:46:54 +02:00
lepelog f941a5694d start of cXyz OK 2021-03-30 18:05:21 +02:00
lepelog e756e1760e started copying code over to new disasm 2021-03-30 02:45:32 +02:00
Julgodis a868b6ae56 re-generate with bug fixes 2021-03-30 01:58:08 +02:00
Julgodis 88eb7be90c removed double references and fixed float generation 2021-03-30 01:31:36 +02:00
Julgodis 815c1a2039 clang-format 2021-03-29 00:10:25 +02:00
Julgodis c6c405e457 move tp from tools 2021-03-28 23:54:55 +02:00
Julgodis d244b7cb0d dol2asm OK 2021-03-28 22:49:05 +02:00
lepelog 88eb837a9c fpc symbol names (#119)
* fpcCtIt_filter_JudgeInLayer

* dStage_roomControl_c::getZoneNo

* fix fpc symbol names

* format

* mUnk0 -> mLayerID

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-03-28 14:07:21 -04:00
Pheenoh 5d26059b09 fopVw_Draw OK 2021-03-27 23:10:21 -04:00
Pheenoh 67ef027522 fopScn_IsDelete OK 2021-03-27 22:48:10 -04:00
Pheenoh 14974a3350 fopScn_Execute OK 2021-03-27 22:27:46 -04:00
Pheenoh 838117cd56 fopScn_Draw OK 2021-03-27 22:25:18 -04:00
Pheenoh a857555035 fopScnTg_ToQueue, fopScnTg_QueueTo OK 2021-03-27 21:52:36 -04:00
Pheenoh 1c38f0926e fopMsg_Delete OK 2021-03-27 21:09:18 -04:00
Pheenoh 5424d71c52 fopMsg_IsDelete OK 2021-03-27 21:06:54 -04:00
Pheenoh 54d1309221 fopMsg_Execute OK 2021-03-27 20:22:15 -04:00
Pheenoh d58a1ab643 fopMsg_Draw OK 2021-03-27 20:18:32 -04:00
Pheenoh 157786e4be fopMsg_Draw OK 2021-03-27 20:18:22 -04:00
Pheenoh a94009b139 fopMsgM_messageGet OK + rename g_meter2_info global 2021-03-27 19:53:05 -04:00
Pheenoh 7c15fdc3f2 fop_Timer_create OK 2021-03-27 19:34:13 -04:00
Pheenoh 1e029a8cb1 fopMsgM_create OK 2021-03-27 19:25:05 -04:00
Pheenoh 1af35692a2 fopMsgM_SearchByID OK 2021-03-27 19:00:25 -04:00
Pheenoh 73ecd0a147 fopMsgM_SearchByID OK 2021-03-27 18:59:57 -04:00
Pheenoh 65bf86bac6 clang-format 2021-03-27 18:31:42 -04:00
Pheenoh 17a7165042 fopMsgM_destroyExpHeap OK 2021-03-27 18:30:03 -04:00
Pheenoh 1eb1de54f8 fopMsgM_createExpHeap OK 2021-03-27 18:28:44 -04:00
Pheenoh e37966e14e J2DPicture::insert OK 2021-03-27 18:25:26 -04:00
Pheenoh d36fb432f1 J2DPicture::append OK 2021-03-27 18:14:23 -04:00
Pheenoh 2b2f8c1257 J2DPicture::setBlendRatio OK 2021-03-27 18:07:36 -04:00
Pheenoh 2354fa1bf1 J2DPane::setAlpha OK 2021-03-27 15:48:21 -04:00
Pheenoh 3c4bdfaa16 fopMsgM_setMessageID OK 2021-03-27 15:46:11 -04:00
Pheenoh 7ac5101a17 fopMsgM_setMessageID OK 2021-03-27 15:46:04 -04:00
Pheenoh db86a09e7c fopMsgM_Delete OK 2021-03-27 15:44:05 -04:00
Pheenoh 050fff7ec3 fopMsgM_GetAppend OK 2021-03-27 15:41:26 -04:00
Pheenoh 717afc1429 fopKy_Draw attempt 2021-03-21 16:52:43 -04:00
Pheenoh d22c4f797d fopDwTg_CreateQueue OK 2021-03-21 16:22:49 -04:00
Pheenoh 42d1d655b9 fopDwTg_DrawQTo OK 2021-03-21 16:20:07 -04:00
Pheenoh 1c3b77fc3c fopDwTg_ToDrawQ OK 2021-03-21 16:19:11 -04:00
Pheenoh 71a1adbe7a fopDwIt_Next OK 2021-03-21 16:14:24 -04:00
Pheenoh f6b027761c fopDwIt_Begin OK 2021-03-21 16:07:28 -04:00
Pheenoh 9245f01cbb fopScnRq_Request attempt + clang-format 2021-03-20 21:14:41 -04:00
Pheenoh bcced20f39 fopScnRq_Handler OK 2021-03-20 20:34:13 -04:00
Pheenoh 8f0a2057b9 fopScnRq_ReRequest OK 2021-03-20 20:33:25 -04:00
Pheenoh 0911cb0e2c fopScnRq_FadeRequest OK 2021-03-20 20:31:57 -04:00
Pheenoh f5e3ba0868 fopScnRq_Cancel OK 2021-03-20 20:16:42 -04:00
Pheenoh a85040de4f fopScnRq_PostMethod OK 2021-03-20 19:45:56 -04:00
Pheenoh 6d932d5053 fopScnRq_Execute OK 2021-03-20 19:39:04 -04:00
Pheenoh db0f005aa8 fopScnRq_phase_Done OK 2021-03-20 19:17:27 -04:00
Pheenoh b17fbd496f fopScnRq_phase_IsDoneOverlap OK 2021-03-20 19:06:20 -04:00
Pheenoh 88c92bda2a fopScnRq_phase_IsDoingOverlap OK 2021-03-20 19:05:15 -04:00
Pheenoh 77fc5ae836 fopScnRq_phase_Execute OK 2021-03-20 19:04:05 -04:00
Pheenoh 1d779a0b78 fopOvlp_Create attempt, fopScnRq_phase_ClearOverlap OK 2021-03-20 19:01:48 -04:00
lepelog 80ba3d9fd2 Fix symbol names (#118)
* checkpoint

* checkpoint

* rename f_pc

* checkpoint

* small symbol rename and fix some fpc symbols

* remove unneeded entries from ldscript

* simplify ok check, update docker container

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-03-15 02:12:44 -04:00
lepelog 3b69d4cba0 Match a few nonmatchings and delete unused asm (#117)
* match a few nonmatchings, delete unused asm

* fix missing returns in f_op_actor_iter

* remove obsolete comments
2021-03-03 12:17:19 -05:00
lepelog 368135b3da Some fopAcM functions (#116)
* some fopAcM_create functions

* a few more functions
2021-02-26 09:19:46 -05:00
Pheenoh c262bbfc4d clang-format 2021-02-21 21:49:57 -05:00
Pheenoh 69eaf7df76 fopKyM_fastCreate OK 2021-02-21 21:48:00 -05:00
Pheenoh 1d30046670 fopKyM_create OK 2021-02-21 21:45:55 -05:00
Pheenoh 2a97f3e3b2 fopKyM_Create OK 2021-02-21 21:37:10 -05:00
Pheenoh 6d4724c64d fopKyM_Delete OK 2021-02-21 21:26:11 -05:00
Pheenoh 3d9ee632af createAppend OK 2021-02-21 21:24:52 -05:00
Pheenoh c71234f308 clang-format + fixes for jasper 2021-02-21 19:41:58 -05:00
Pheenoh 9fd3148994 fopScnM_ReRequest OK, fopScnM_Management OK, fopScnM_Init OK 2021-02-21 19:34:50 -05:00
Pheenoh eeecf4cf69 fopScnM_ChangeReq OK 2021-02-21 17:50:16 -05:00
Pheenoh f256d97ddf fopScnM_SearchByID OK 2021-02-21 10:43:08 -05:00
Pheenoh 5fbe9419f9 delete variables.h 2021-02-20 23:11:44 -05:00
Pheenoh d102f73e7a Merge branch 'master' of https://github.com/zeldaret/tp 2021-02-20 10:25:31 -05:00
Pheenoh b0499177ef fopScnM_SearchByID attempt 2021-02-20 10:25:13 -05:00
lepelog 5c83d2532c Decompile some SComponent data and some MSL_C.PPCEABI.bare.H headers (#115)
* data for c_angle

* data c_sxyz

* partially migrated c_xyz data

* c_xyz data

* c_xyz data decomp

* c_math data

* c_math data

* c_lib data, some cleanup

* rename some unnamed functions and create header for them

* header for string functions

* format and fix fabsf

* cleanup

* remove more unneded function prototypes

* move fpclassify to math.h
2021-02-19 10:51:02 -05:00
Pheenoh bbf1d1c34c fopOvlpReq_OverlapClr OK 2021-02-17 19:20:55 -05:00
Pheenoh a02a65cb58 fopOvlpReq_SetPeektime OK 2021-02-17 17:04:18 -05:00
Pheenoh f2335e88fa fopOvlpReq_Is_PeektimeLimit OK 2021-02-17 16:54:58 -05:00
Pheenoh d4a7f23bc5 fopOvlpReq_Cancel OK 2021-02-17 13:12:34 -05:00
Pheenoh 327dff36be fopOvlpReq_Request OK 2021-02-17 13:01:00 -05:00
Pheenoh e262f2c224 fopOvlpReq_phase_Create OK 2021-02-17 12:10:21 -05:00
Pheenoh 9ed5e03d25 fopOvlpReq_phase_IsCreated OK 2021-02-17 11:56:37 -05:00
Pheenoh 43ee8581f3 fopOvlpReq_phase_IsComplete OK 2021-02-17 11:43:15 -05:00
Pheenoh 28f5b0c24c fopOvlpReq_phase_WaitOfFadeout OK 2021-02-17 11:40:50 -05:00
Pheenoh 8c2b4bb213 fopOvlpReq_phase_IsWaitOfFadeout OK 2021-02-17 10:45:52 -05:00
Pheenoh 3f7fdd4503 fopOvlpReq_phase_Done OK 2021-02-17 10:29:05 -05:00
Pheenoh 1876efc170 f_op_scene_pause OK 2021-02-16 15:47:00 -05:00
Pheenoh d06ba53d39 fopOvlp_Draw OK, fopOvlp_Execute OK, fopOvlp_IsDelete OK, fopOvlp_Delete OK 2021-02-16 13:21:52 -05:00
Pheenoh 1d3c5cd1cf fopCam_Draw OK, fopCam_IsDelete OK, fopCam_Delete OK 2021-02-15 18:19:39 -05:00
Pheenoh 116b40f7bb clang-format 2021-02-15 16:12:44 -05:00
Pheenoh 12b8d6788f split f_op_scene, f_op_overlap 2021-02-15 16:11:42 -05:00
Pheenoh e94ff7d1ed split f_op_msg 2021-02-15 16:06:20 -05:00
Pheenoh edbf8e600e split f_op_kankyo 2021-02-15 16:04:27 -05:00
Pheenoh 9c2599bac6 clang-format 2021-02-15 15:51:14 -05:00
Pheenoh 58b7465c7e split f_op_scene_iter, f_op_scene_pause, f_op_scene_tag 2021-02-15 15:48:48 -05:00
Pheenoh 8d943946d7 split f_op_overlap_req 2021-02-15 15:26:44 -05:00
Pheenoh 8c8db49733 split f_op_msg_mng 2021-02-15 15:24:02 -05:00
Pheenoh d9071709b5 split f_op_kankyo_mng 2021-02-15 15:21:00 -05:00
Pheenoh 978b55406d split f_op_kankyo_mng 2021-02-15 15:20:48 -05:00
Pheenoh 05bbb4956a split f_op_draw_tag 2021-02-15 15:19:28 -05:00
Pheenoh bbdb166d5a split f_op_draw_iter 2021-02-15 15:18:13 -05:00
Pheenoh 21e3eceb18 split f_op_camera 2021-02-15 15:15:46 -05:00
Pheenoh 6212c308e8 split f_op_view 2021-02-15 15:12:21 -05:00
Pheenoh b3a4f9f7c5 most of f_op_overlap_mng OK 2021-02-15 13:34:16 -05:00
Pheenoh c29034f4bd fopOvlpM_Done OK, fopOvlpM_ToldAboutID OK, fopOvlpM_IsPeek OK, fopOvlpM_IsDone OK 2021-02-14 13:36:25 -05:00
Pheenoh 7f95de6c60 f_op_camera_mng OK 2021-02-14 12:07:38 -05:00
Pheenoh 986ae7413d fapGm_HIO_c::fapGm_HIO_c attempt 2021-02-13 17:17:04 -05:00
Pheenoh a2906e4163 fapGm_Create ok 2021-02-13 16:27:35 -05:00
Pheenoh 86a69bbb4b fapGm_After OK, split f_op_scene_mng, split f_op_camera_mng, split f_op_overlap_mng 2021-02-13 15:42:35 -05:00
Pheenoh 304cae803a clang-format 2021-02-13 15:24:45 -05:00
Pheenoh 63d4e517f7 split f_ap_game, fapGm_Execute ok, more changes to m_Do_main 2021-02-13 15:23:18 -05:00
lepelog e08abacc1d change sdahack to use la instruction (#114)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-02-12 19:50:24 -05:00
lepelog aff4c171fc f_op_actor_mng split & started decomp (#112)
* fop-actor-mng

* rodata

* more actor mng progress

* actor mng progress

* format

* cleanup

* fix Mtx function signatures

* PR suggestion

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-02-12 19:47:46 -05:00
Erin Moon 103e9a3865 diff.py --source improvements (#113)
* diff.py: fix --source file searching

* diff.py: improve error msg when we can't find lhs

* diff.py: speed up source path resolution
2021-02-12 19:42:48 -05:00
Pheenoh e981981b91 swap back to inline asm for Debug_console 2021-02-07 17:22:00 -05:00
Pheenoh 4d1d865921 debugDisplay and Debug_console attemp 2021-02-07 17:20:16 -05:00
Pheenoh c0f8f75b84 clang-format 2021-02-03 15:14:01 -05:00
Pheenoh 9cb88fdb31 main attempt 2021-02-03 15:12:27 -05:00
Pheenoh 8091fa95c5 Merge branch 'master' of https://github.com/zeldaret/tp into clang-format-fix 2021-02-03 12:30:55 -05:00
LC f15faab756 os: const-qualify string arguments (#111)
Avoids the need to cast away const from string literals.
2021-01-31 22:25:03 -05:00
Pheenoh b595f0d0bf fix clang-format check (#110) 2021-01-31 20:55:56 -05:00
Pheenoh ff68771d32 fix clang-format check 2021-01-31 20:49:35 -05:00
jdflyer f1924e91f4 d_kyeff, d_kyeff2, m_Do_printf, and m_Do_graphic (#109)
* Split d_kyeff

* Partially matched d_kyeff

* split d_kyeff2

* Match d_kyeff2

* split m_Do_printf

* m_Do_printf partially matched

* hotfix and clang-format

* split m_Do_graphic

* rename symbols in m_Do_graphic

* Match a few functions in m_Do_graphic

* Fix Merge Errors

* Delete sh.exe.stackdump

* Update OSReportInit
2021-01-31 20:03:38 -05:00
notyourav 24d529f67b fix sjis strings (#108)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-31 19:10:43 -05:00
Pheenoh ff930c7576 split m_Do_machine_exception 2021-01-31 16:29:31 -05:00
Pheenoh 06d3b7647d split m_Do_dvd_thread 2021-01-31 16:25:52 -05:00
Pheenoh f1cb3fa52d split m_Do_mtx 2021-01-31 16:21:49 -05:00
Pheenoh e8d0b4c401 split m_Do_MemCardRWmng 2021-01-31 16:18:46 -05:00
Pheenoh 6d55426443 split m_Do_MemCard 2021-01-31 16:16:06 -05:00
Pheenoh 5793e002a6 split m_Do_machine 2021-01-31 16:13:37 -05:00
Pheenoh 3d7626f838 split m_Do_lib 2021-01-31 16:09:07 -05:00
Pheenoh 02466048b1 split m_Do_ext 2021-01-31 16:04:23 -05:00
Pheenoh 82a0f8f8ab clang-format 2021-01-31 15:45:36 -05:00
Pheenoh fb0493b171 Merge branch 'functions' 2021-01-31 15:39:31 -05:00
Pheenoh ccf862fbb2 Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-31 15:35:58 -05:00
Pheenoh 90578d539a remove functions.h 2021-01-31 15:33:34 -05:00
notyourav 264b9cfcc0 Merge pull request #107 from Julgodis/sdata2_cpp
Tool for extracting literals and strings
2021-01-30 11:46:28 -08:00
Julgodis b8c7b9ce3b fix padding 2021-01-29 23:17:11 +01:00
Julgodis 77adc39ffe removed dependencies and fixed usage text 2021-01-29 23:01:11 +01:00
Julgodis e5fe91a75e remove m_Do_printf test code 2021-01-29 22:54:36 +01:00
Julgodis 7cc16872fc added option for frameworkF.map 2021-01-29 22:52:35 +01:00
Julgodis b27de6e351 formatting 2021-01-29 22:52:35 +01:00
Julgodis 4442f8e1dd cleanup of python script 2021-01-29 22:52:35 +01:00
Julgodis cf4bf3fc53 replace symbols with string literals and python script 2021-01-29 22:52:35 +01:00
notyourav 6aa3fb4ff6 Merge pull request #106 from Julgodis/floats
Floats
2021-01-27 15:24:49 -08:00
notyourav 550e8fbe12 Merge branch 'master' into floats 2021-01-27 15:22:59 -08:00
notyourav dc8fb6006e Merge pull request #105 from Julgodis/strings
Strings
2021-01-27 15:22:44 -08:00
Julgodis 45ee14c43f JKRSolidHeap::dump now matching using floats 2021-01-27 15:43:21 +01:00
Julgodis df8940130d sdata2 split OK 2021-01-27 15:04:04 +01:00
Julgodis 7d61b2d0fb split sdata2 2021-01-27 14:51:53 +01:00
Julgodis 291655c820 formatting 2021-01-27 05:58:12 +01:00
Julgodis 09dd7f8c4e compiling strings? WTF 2021-01-27 05:57:41 +01:00
LC c37cd04585 c_m3d: Make use of forward declarations (#104)
Some inline helper function of the included files in the header make use
of functions defined within it. This can cause a circular dependency
cycle if said helper functions are ever defined within the classes.

To break this potential cycle, we can use forward declarations.

This also has the benefit of reducing preprocessing overhead a little
bit.
2021-01-26 21:29:28 -05:00
lepelog 1e105b87f1 some c_m3d (#97)
* decompiled some bgs_chk funcs

* c_m3d_g

* c_math progress

* remove duplicate SComponent headers

* move some variables and decompile a function

* some inlined from debug

* cM3d_2PlaneLinePosNearPos

* fix fabsf and decompile cM3d_CrawVec

* format

* cleanup

* more cleanup

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:48:47 -05:00
notyourav b8d0da505d binary OK (#99)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:42:28 -05:00
lepelog ce0d0c3521 decompile s_basic, cleanup mangled names in f_pc (#101)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:11:50 -05:00
LC 3ee8a929a9 c_phase: Make cPhs_Next completely matching (#102)
* c_phase: Make cPhs_Do a little more matching

Still doesn't fully match, but now the branch offsets and everything
else line up.

The load of pUserData still doesn't properly match though.

* c_phase: Make cPhs_Next completely match

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:08:35 -05:00
LC c11228ea86 J2DPane: Add names for several unlabeled variables (#103)
Should make working on other classes adjacent to J2DPane a little more
descriptive in the decompilation process.
2021-01-26 17:04:10 -05:00
Pheenoh f893c39194 split m_Do_DVDError 2021-01-25 15:13:46 -05:00
lepelog d301beca77 change split.py to output extern vars/functions into generate CPP (#98)
* change split.py to output extern vars/functions into generate CPP
also change demangling to use short type names

* don't take files for extern funcs/vars anymore

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-25 14:09:55 -05:00
LC ec9b03241d Z2AudioLib: Migrate declarations out of functions.h to respective files (#96)
Removes the strong dependency on a single header file and moves
declarations to their respective header file.

This allows for making dependencies explicit in cpp files and other
headers, and also makes it much easier to track where everything related
to a particular component is.

This change also creates a few header files that previously didn't
exist, making it much nicer for people implementing things, as they
won't need to create the header file, it'll just be there ready to go.

Ideally functions.h wouldn't even be a thing, as this header adds a lot
of preprocessing overhead due to its size, and will continue to grow
significantly larger over the lifespan of the project, which can also
impact the performance of editors that do dependency lookups and
context-aware syntax highlighting.
2021-01-25 12:57:46 -05:00
Erin Moon 9165dfe8cf doxygen workflow: don't enable-latex (#95)
this does a thing we don't actually want to do (generate a pdf), and is also broken, because everything is someone else's problem

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-25 11:34:38 -05:00
notyourav 6e7708652e J2DPane.cpp (#91)
* split J2DPane.cpp

* J2DPane first pass

* consolidate headers and typedef mtx

* remove duplicate J2DScreen.h

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-25 09:57:35 -05:00
Erin Moon c028ab3b52 .clang-format: set standard to c++03 (#93)
technically our version of mwcc only supports c++98 but this is close enough to preserve spaces between nested template closing brackets

Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>
2021-01-25 09:55:08 -05:00
notyourav f2a94f139b Merge pull request #92 from lioncash/polypass2
dBgS: Decomp dBgS_PolyPassChk
2021-01-24 21:32:43 -08:00
notyourav d26898feee Merge branch 'master' into polypass2 2021-01-24 21:30:58 -08:00
notyourav d515e1c282 Merge pull request #90 from jdflyer/m_Do_audio2
m_Do_audio
2021-01-24 21:21:32 -08:00
notyourav a513932373 Merge branch 'master' into m_Do_audio2 2021-01-24 21:18:09 -08:00
notyourav b6063221ee Merge pull request #88 from barzamin/patch-1
fix branch name in doxygen workflow
2021-01-24 21:17:31 -08:00
Lioncash af69b34327 asm: Remove now unused d_bg_s_poly_pass_chk.s
Now that the class has been decompiled, we no longer need to keep the
asm file around.
2021-01-23 01:54:28 -05:00
Lioncash 8738700bc1 dBgS: Add declaration for cBgS_PolyPassChk's destructor 2021-01-22 23:43:10 -05:00
Lioncash 54cccdeb12 dBgS: Add release-elided functions to interface 2021-01-22 21:58:45 -05:00
Lioncash b5c8715cb9 dBgS: Decomp dBgS_PolyPassChk constructor and destructor
Fairly basic empty destructor, and a constructor that uses an initializer
list.
2021-01-22 21:58:45 -05:00
Lioncash 628596ffe6 dBgS: Decomp dBgS_PolyPassChk::ChkNoHorse
The only querying function within the poly pass interface.
2021-01-22 21:58:42 -05:00
Lioncash 4bcd3d4ca1 dBgs: Implement all dBgS_PolyPassChk Set and Clr functions 2021-01-22 21:57:43 -05:00
Lioncash 8d2599d1b7 dBgS: Initial dBgS_PolyPassChk class skeleton 2021-01-22 08:15:33 -05:00
Lioncash 9f4104aca8 dBgS: Initial splitting of dBgS_PolyPassChk code 2021-01-22 08:15:30 -05:00
jdflyer db79db103b Various Fixes 2021-01-21 22:20:43 -07:00
jdflyer b5bbe8d00d clang-format 2021-01-21 22:06:54 -07:00
jdflyer 37543ca29f Fix Merge and set maxerrors to 5 2021-01-21 21:59:24 -07:00
jdflyer 64bb8562fa Merge remote-tracking branch 'upstream/master' into m_Do_audio2 2021-01-21 21:58:53 -07:00
jdflyer ff7ac962f1 m_Do_audio 2021-01-21 21:47:28 -07:00
Erin Moon be58176ab2 Merge branch 'master' into patch-1 2021-01-21 22:20:42 -06:00
Erin Moon a072e71c33 Z2AudioLib misc decomp (#75)
* Z2SoundHandles: decomp portions

* start decomping: Z2SpeechMgr2, Z2SoundHandles

* Z2SoundHandles::stopAllSounds(): ok

* Z2SoundHandles::getHandleUserData(): ok

* Z2SoundInfo: header

* Z2SoundObjBase::framework(): ok

* Z2SoundObjBase::Z2SoundObjBase(), Z2SoundObjBase::init(): ok

* Z2SoundObjBase::~Z2SoundObjBase(): ok

* Z2SoundObjBase::stopOK(): ok

* Z2SoundObjBase::stopOK, incomplete Z2SoundObjBase::dispose()

* clang-format

* Z2SoundObjBase::dispose(): ok

* JAISound::operator->(): null assert

* JAIAudience: stub

* Z2SoundObject::{init, deleteObject, isAlive}: ok

* Z2SeMgr: elaborate struct (and decl JAISoundHandles to support this)

* start subclassing Z2SoundObjBase; nonmatching Z2SoundObjSimple::init()

* Z2SeMGr::{incrCrowdSize, decrCrowdSize}: ok

* Z2MultiSeMgr::resetMultiSePos(): ok

* Z2WolfHowlMgr.h: decls

* Z2SoundStarter: move to decls and fix postprocess.py symbol pass

* Z2AudioArcLoader: decls

* Z2SoundObjMgr: ok some fns
- deleteEnemyAll()
- isTwilightBattle()
- setGhostEnemyState()

additionally elaborates parts of the Z2Creature hierarchy

* delete unused .s files and add tool to find them (only runs on linux)

* run clang-format

* postprocess.py: comment out debugging

* add python step to ok-check workflow

* address review comments

* address review comments

Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>

Co-authored-by: Pheenoh <pheenoh@gmail.com>
Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>
2021-01-21 23:16:51 -05:00
LC afb426c60c c_lib: Decomp a few functions (#89)
* c_lib: Decomp cLib_memSet and cLib_memCpy

Gets rid of some low-hanging fruit.

* c_lib: Decomp cLib_distanceAngleS

Another super trivial function to make match.

* c_lib: Decomp cLib_targetAngleY overload set

Fairly trivial in terms of matching.

* c_lib: Sate clang-format

I didn't touch this code, but the clang-format pass wants this done, and
so it is.
2021-01-21 20:29:22 -05:00
Erin Moon dcc9b87774 fix branch name in doxygen workflow
i forgot that we use `master` and not the github convention of `main`
2021-01-19 17:16:53 -06:00
Erin Moon f33e47c031 diff.py: robust/autodected path processing for xplatform --source (#85)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-18 14:38:53 -05:00
notyourav 358469df03 fvb, functionvalue, vector (#77)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-18 14:27:25 -05:00
Erin Moon caeacbe56b Makefile: DEBUG option (#86)
* Makefile: DEBUG option

* diff_settings.py: if diffing with --source, make DEBUG=1

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-18 14:16:09 -05:00
Erin Moon c70d485d35 normalize header guards to {tu_name}_H_ (#87)
i previously had a bad habit of using double underscores in include
guard macro names, which are implementation-reserved per
the C++98 standard (see 17.4.3.1.2 Global names).

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-18 14:02:51 -05:00
Erin Moon 8a7a0e502a Doxygen (#84)
* set up Doxygen

- `.gitignore`: ignore Doxygen output
- limit Doxygen search to relevant paths
- move extra `.md`s to docs/
- `Makefile`: add Doxygen target
- use as much SVG as possible for Doxygen diagrams
- alias @meme as an \xrefitem

* new github workflow: run doxygen and push to gh pages
2021-01-18 14:00:28 -05:00
TakaRikka 7b97550cee d_com_inf_game / d_save improvements (#82)
* some dcominfg funcs

* add dcom inlines to d_save

* format

* format
2021-01-11 11:32:56 -05:00
TakaRikka 8cf6641bd4 fully split / more work on d_com_inf_game (#81)
* split d_com_inf_game

* fix func name

* start some dcomifg funcs

* fix

* clang-format

* change dComIfGs_setWarpItemData back to inline asm for now

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-10 09:00:45 -05:00
Pheenoh 2d1d72e1c9 convert dStage_roomControl_c::init method 2021-01-10 03:04:59 -05:00
Pheenoh 2d0a9fb22c dStage_SetErrorStage OK 2021-01-10 02:34:49 -05:00
Pheenoh fb341652cc dStage_SetErrorRoom OK 2021-01-10 02:33:36 -05:00
Pheenoh adf65faa28 dStage_startStage_c::set OK 2021-01-10 02:25:21 -05:00
Pheenoh 1eb2cc39a8 clang-format 2021-01-10 01:27:16 -05:00
Pheenoh b51b5abd14 Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-10 01:24:52 -05:00
Pheenoh df361497c2 dStage_stageDt_c methods decomped 2021-01-10 01:23:43 -05:00
Pheenoh 3c0fe08bdc dStage_roomDt_c methods decomp'd 2021-01-09 23:04:11 -05:00
Jonathan Wase 82d5e0f796 JKRAram and JKRAramStream (#80)
* before __register_global_object

* JKRThread::sThreadList, JKRHeap::sSystemHeap, etc.

* cleanup and started on JKRDvdArchive

* before changing JKRCompression

* more JKRDvdArchive, abs, and memset

* fixed JKRArchive::setExpandSize split

* JKRArchive::sCurrentDirID, JKRDvdFile::sDvdList, and matching JKRDvdFile constructors

* problems

* merge fixes and formatting

* updated clang version in clang-format-all to version 10

* Added OSPhysicalToCached and struct for global memory

* remove useless __attribute__

* changed from defines and macros to const variable and function

* changed FLAG_HAS to FLAG_ON

* JKRAram, linking problems

* fix JKRAram

* remove nonmatching stuff

* renamed static data

* more static class members

* JKRAramStream OK

* formatting

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-09 20:15:52 -05:00
TakaRikka 8bd3d07e23 more daalink / d_item improvements (#79)
* some daalink funcs

* more d_item inlines / setShieldChange

* more daalink stuff

getlife, getrstatus, setitemlifecount, getrupee, setitemrupeecount

* format

* format
2021-01-09 19:59:35 -05:00
Pheenoh 872cd076aa convert dStage_roomDt_c methods 2021-01-09 19:20:36 -05:00
Pheenoh 9349690253 convert dStage_stageDt_c methods 2021-01-09 17:00:47 -05:00
Pheenoh f1ff8a45ee split d_stage 2021-01-08 13:01:37 -05:00
Pheenoh 2c1b491978 Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-08 03:48:21 -05:00
Pheenoh 92e9a5ce63 dStage_roomDt_c initial class mapping 2021-01-08 03:46:59 -05:00
Pheenoh b26178db88 dStage_stageDt_c initial class mapping 2021-01-08 03:45:28 -05:00
Pheenoh cff2beec9c dStage_stageDt_c initial mapping 2021-01-08 03:05:50 -05:00
Pheenoh 52a53ba135 clang-format 2021-01-07 22:58:47 -05:00
Pheenoh 3c656ba99e Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-07 22:56:59 -05:00
Pheenoh c1d05bc46c main01 attempt, fix dcomifg_play_c members 2021-01-07 22:56:08 -05:00
Jonathan Wase d40a4bd126 diff.py --source support (#76)
* support source

* remove print

Co-authored-by: Julgodis <>
2021-01-07 19:02:58 -05:00
Pheenoh 74fac079fa Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-06 21:03:19 -05:00
Erin Moon 6f3f8cc38e Z2AudioLib: split (#64)
* Z2AudioLib: split

- Z2SpeechMgr2
- Z2Audience
- Z2EnvSeMgr
- Z2SoundMgr
- Z2AudioMgr
- Z2Creature
- Z2SoundStarter
- Z2WolfHowlMgr
- Z2SoundObject
- Z2SoundObjMgr
- Z2SoundInfo
- Z2AudioArcLoader
- Z2AudioLib
- Z2SoundHandles
- Z2LinkMgr: finish splitting
- Z2SceneMgr: finish splitting
- Z2SeqMgr: finish splitting

* merge fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 21:00:42 -05:00
Jonathan Wase 85f6906ba0 diff.py --select-occurrence (#74)
* --select-occurrence

* print address of function

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:45:55 -05:00
Erin Moon 6f2c187418 diff.py: show .o names in column headers (#70)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:42:06 -05:00
lepelog 6d946e8330 match some Z2Calc functions (#72)
* Z2Calc OK

* inline definitions in random.h and format

* set -enum int compiler flag and fix enum hacks

* note for get_ufloat_1 inline

* PR suggestions and UB note

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:39:56 -05:00
notyourav b8ecef0ddb Refactor JUTFont symbols (#71)
* fix JUTFont args

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:36:27 -05:00
Jonathan Wase 88fca194f8 JKRSolidHeap (#69)
* JKRSolidHeap progress

* JKRSolidHeap, added const to virtual functions, and JKRHeap::TState

* fixed braces

* fix function overload

* clang-format

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:33:03 -05:00
lepelog 0cf65151b3 Split SComponent (#45)
* split c_math

* split c_angle

* split c_API_controller_pad

* split c_API_graphic

* split c_bg_s_chk

* c_bg_s_gnd_chk split

* more c_bg split

* split c_cc_d

* delete asm

* split c_cc_s

* split c_lib

* split c_m2d and c_m3d_g_aab

* split c_m3d_g_cir

* split c_m3d_g_cps

* split rest of c_m3d_g

* split c_m3d

* split c_malloc

* split c_request

* split c_sxyz

* split and partly decompile c_xyz

* format

* c_angle.h

* begin c_angle decomp

* c_angle

* progress adding stub classes for SComponent

* more c_m3d

* remove some asm and format

* more m3d headers

* more c_angle decomp

* c_lib headers

* add public to classes

* fix csXyz member names

* c_sxyz partly OK

* move Zero csXyz to c_sxyz header

* c_API_graphic

* delete some unused asm

* move math extern data, decompile some functions

* delete unused asm

* fix duplicated c_angle.h

* fix an inlined function name, add more inlined functions for c_angle.h (currently unused)

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:04:53 -05:00
Jonathan Wase 792509e0a1 JKRFileCache matched 22/24 (#73)
* progress

* strlen, strcat, and strcchr

* more functions from JKRFileCache

* JKRFileCache 22/24 matched

Co-authored-by: Julgodis <>
2021-01-06 19:47:07 -05:00
notyourav 105c006948 TObject and JStudio internals (#57)
* TObject

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-05 12:47:26 -05:00
lepelog 689d83dd23 Move and type PSVEC and PSMTX funcs and follow includes in functions.h (#68)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-05 12:32:20 -05:00
TakaRikka e9607ae760 add a lot of dComIfGs inlines (#65)
* item_func inlines

* some getcheck func inlines

* remove asm

* format

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-05 11:48:08 -05:00
Jonathan Wase d89fb99506 JKRMemArchive (#66)
* JKRArchivePri OK

* JKRArchivePub OK

* formatting

* removed unused asm files and tried to fixed setExpandSize and getExpandSize

* JKRMemArchive and created JKRCompression

Co-authored-by: Julgodis <>
2021-01-05 11:34:58 -05:00
Pheenoh a1d3f599f7 Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-04 22:10:07 -05:00
Erin Moon 65dbd7e088 diff.py: fix --lhs-name option (#67) 2021-01-04 22:05:42 -05:00
Jonathan Wase b9ef1d7f4a JKRArchive (#63)
* JKRArchivePri OK

* JKRArchivePub OK

* formatting

* removed unused asm files and tried to fixed setExpandSize and getExpandSize

Co-authored-by: Julgodis <>
2021-01-04 18:20:45 -05:00
Pheenoh efb2a3896f Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-04 10:43:15 -05:00
TakaRikka 7215cc6a51 some daAlink_c funcs (#62)
* checkMagicArmorHeavy / checkBootsOrArmorHeavy / setSpecialGravity ok

* onFroollCrashFlg / setMidnaTalkStatus ok

* add setZStatus inline

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-04 10:43:09 -05:00
Pheenoh 90eb3341bc Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-04 10:37:18 -05:00
Erin Moon 5c23199fe2 close-to-matching mDoCPd_c::convert() (#61) 2021-01-04 10:37:08 -05:00
Pheenoh 2a6fc42571 begin decomping main01 2021-01-04 00:16:06 -05:00
Jonathan Wase 0be0a7ea94 JKRFileLoader, JKRFileFinder, and JKRThread (#60)
* JKRFileLoader OK

* JKRFileFinder progress

* JKRFileFinder OK

* JKRFileCache fix virtual function signatures

* added OSThread and OSContext types

* JKRThread fixed nonmatching functions

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 22:48:07 -05:00
Pheenoh 922a0df5ea debug OK 2021-01-03 22:41:17 -05:00
Jonathan Wase 5217a4189e JKernel cleanup and DVD types (#59)
* JKRDecomp OK

* JKRFile and JKRDvdFile cleanup

* more DVD stuff and cleanup JKRDvdFile more

* formatting

* JKRHeap cleanup

* formatting

* JKRDisposer cleanup

* JKRAramBlock and JKRAramHeap cleanup

* fix merge error

* fixed comments

* forgot to save file...

* fix DVDCBcallback

Co-authored-by: Julgodis <>
2021-01-03 21:26:25 -05:00
Pheenoh 409257b111 clang-format 2021-01-03 21:11:43 -05:00
Pheenoh 6f22d27503 swap in memcpy for func_80003540, correct some minor issues in dvd.h and JKRDVDFile.h 2021-01-03 21:08:33 -05:00
Pheenoh da3a142828 clang-format 2021-01-03 17:03:11 -05:00
Pheenoh d8fdc85090 countUsed OK 2021-01-03 16:58:49 -05:00
Pheenoh f12c5050f3 HeapCheck::heapDisplay OK 2021-01-03 16:34:11 -05:00
Jonathan Wase 423fdadc32 JKRDecomp OK (#58)
* JKRDecomp OK

* clang-format tool

* JKRThread cleanup and fixed suggestions

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 16:19:54 -05:00
Pheenoh 4e085c9c84 make gameinfo members private 2021-01-03 16:13:28 -05:00
Jonathan Wase 4309c3db5b JKRAramHeap and JKRAramPiece (#53)
* renamed func_XXX to _savegpr_XX

* renamed func_XXX to _restgpr_XX

* renamed func_XXX to _savefpr_XX

* renamed func_XXX to _restfpr_XX

* cleanup functions.h and moved intrisics to mwcc.h

* formatting

* cleanup functions.h

* Added include/ar/ARQ.h

* renamed func_XXX to _savegpr_25

* removed JKRAramPiece asm files

* JKRAramHeap OK, JKRAramPiece OK

* formatting

* more formatting

* Added const and removed explicit this->

* fixed merge problems

* changed mMessages[1] to mMessage

* foramatting

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 05:29:50 -05:00
TakaRikka ab8dee5c14 dSv_player_item_c setWarashibeItem (#56)
* dsv_player_item_c::setWarashibeItem

* add slot name

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 05:15:52 -05:00
Pheenoh ee0bb8f5c6 clang-format 2021-01-03 05:07:35 -05:00
Pheenoh a846de469c dSv_player_item_c::checkInsectBottle OK 2021-01-03 05:03:42 -05:00
Pheenoh d7ece32bbb dSv_info_c::revSwitch OK 2021-01-03 04:22:09 -05:00
Pheenoh 777bf2d3eb dSv_info_c::isSwitch OK 2021-01-03 03:51:44 -05:00
Pheenoh 47c40cce41 dSv_info_c::isItem OK 2021-01-03 03:35:54 -05:00
Pheenoh 5abaebc40d dSv_info_c::isActor OK 2021-01-03 03:22:30 -05:00
Erin Moon 5c4ac052c3 decomp some small files, do some cleanup (#42)
* remove leftover asm: JSUList.s

* d_save_init: decomp

* JMath/random: decomp

* J3DUDL: fixup label

* JAUClusterSound: decomp

* c_API_controller_pad: decomp, elaborate globals/types

* clang-format

* don't add guards to functions.h

* semantic merge of m_cpadInfo stuff

* fix undef symbols

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 01:04:15 -05:00
Erin Moon b679127675 diff.py: be smarter about finding object files (#55)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 00:58:42 -05:00
Jonathan Wase d2e9db3748 Fixed _savegpr etc. (#54)
* renamed func_XXX to _savegpr_XX

* renamed func_XXX to _restgpr_XX

* renamed func_XXX to _savefpr_XX

* renamed func_XXX to _restfpr_XX

* cleanup functions.h and moved intrisics to mwcc.h

* formatting

* cleanup functions.h

* fix bad-formatting from master

Co-authored-by: Julgodis <>
2021-01-02 23:15:12 -05:00
Pheenoh 609891bc25 adjust gameinfo sizing, rename inline register funcs 2021-01-02 19:09:04 -05:00
Pheenoh e375712d23 Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-02 17:49:20 -05:00
Pheenoh 458be4d8cb more d_save funcs OK, initial map out of dcomifg_play_c and it's classes 2021-01-02 17:47:43 -05:00
Erin Moon ad62061cfc Split d_meter, d_meter2 (#49)
* d_meter2*: split

- d_meter2
- d_meter2_info
- d_meter2_draw

* d_meter_*: split

- d_meter_button
- d_meter_haihai
- d_meter_hakusha
- d_meter_HIO
- d_meter_map
- d_meter_string

* d_kantera_icon_meter: split

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 10:47:18 -05:00
Erin Moon 30a10e0352 m_Do_Reset: reset, callback not statics (ty @notyourav) (#50)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 10:39:15 -05:00
Erin Moon 8821a84a70 d_camera: split (#51)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 10:37:11 -05:00
Jonathan Wase 54cef5c777 JKRAramBlock OK (#52)
Co-authored-by: Julgodis <>
2021-01-02 10:32:34 -05:00
Erin Moon 052119c7a7 a new tool: splitter (#39)
* splitter: v0.1

* basic demangle stuff

* splitter: v0.2

- add from, to options to select line range in .s to process
- infer referred labels from both loads and stores
- dump our own function labels in addition to externs into functions.h,
  to provide forward declarations for labels that other functions might
  use.
- fix off-by-one which was eating the last instruction of some functions

* splitter: v0.3

merged a bunch of work lepelog did, including:
- demangling support
- better function identification
- automatic FORCEACTIVE

and did a little bit of cleanup

* splitter: improve sda hack and format

* splitter: fix comment_out(), patch GQR references

* splitter: some speed optimizations

* remove debug print

* splitter: forceactive options

* refactor demangler, add support for more operators and more mangling symbols

* array and member (still one non working case)

* fix some operands in demangler

* make parents for funcs_out

* splitter: fix off-by-one in last line of last function in some .s files

Co-authored-by: lepelog <lepelog@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 02:22:57 -05:00
Jonathan Wase c5b3cbaa08 JKRAssertHeap OK (#47)
* JKRAssertHeap OK

* removed JKRAssertHeap asm files.

Co-authored-by: Julgodis <>
2021-01-02 02:14:43 -05:00
jdflyer e42d44e6cb M_do_controller_pad split and partially matched (#36)
* m_Do_controller_pad split

* Attempt to match and match mDoCPd_c::recalibrate

* Fix Merge Errors

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 02:02:19 -05:00
Erin Moon 69faf591d4 d_kankyo, d_kankyo_*: autosplit (#44)
- d_kankyo
- d_kankyo_rain
- d_kankyo_wether
- d_kankyo_rain

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:54:59 -05:00
TakaRikka 915991f431 most daMidna_c (#43)
* most daMidna_c done

* setLinkState ok

* format

* remove asm

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:46:34 -05:00
TakaRikka ee838ccbc6 d_item getcheck improvements (#46)
* more accurate getcheck funcs

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:44:02 -05:00
notyourav 22be2e1a6d OSX support (#48) 2021-01-02 01:41:40 -05:00
lepelog 0555115de8 A few f_pc files (#26)
* f_pc_base, one non matching

* some of f_pc_manager

* f_pc_node OK

* f_pc_pause partly

* started node_req

* more progress

* most of node req

* delete unused asm

* node req header and param names

* param renaming

* header for manager

* review comment struct names

* fpcM_Management OK

* int -> s32

* merge master

* most of f_pc_create_iter

* f_pc_stdcreate_req OK

* f_pc_fstcreate OK

* f_pc_leaf OK

* f_pc_draw OK

* f_pc_deletor partly

* fix parameter type in f_pc_pause

* review

* review, use cPh enum and fix process_profile_definition struct

* convert f_pc files to C

* matched more functions

* fix global.h

* fix variable types

* format

* mpre Phs enum

* fix merge errors

* fix gamepad stopPatternedRumble

* format

* delete leftover files from merge

* move asm to correct folder

* revert f_pc from C to CPP

* remove C hacks and format

* format

* OK
2020-12-31 15:12:29 -05:00
Erin Moon 992cf48c7f Split and decompile parts of JUTGamePad (#33)
* JUTGamePad.o: elaborate classes, split

* JUTGamePad::CButton: decompile functions:
- clear()
- clear(JUTGamePad*)
- setRepeat()

* elaborate PAD* types in new header

* decompile getNumBit()

* elaborate JUTGamePad fields

* move retyped externs from variables.h to JUTGamePad.h

* elaborate JUTGamePadLongPress

* JUTGamePad: decompile functions

- initList()
- init()
- clear()
- assign()
- checkResetCallback()
- checkResetSwitch()
- clearForReset()
- recalibrate()

JUTGamePad: decompile

* JUTGamePad::CStick::clear(): decompile

* JUTGamePad::CRumble: decompile functions

- startMotor()
- stopMotor()
- triggerPatternedRumble()
- startPatternedRumble()
- stopPatternedRumbleAtThePeriod()
- setEnabled()

* JUTGamePadLongPress::checkCallback(): decompile

* nonmatching: JUTGamePad::CRumble::update() and JUTGamePad::getGamePad

* JSUList<T>: allow access to JSUPtrList functions

* functions.h: clear out some func decls that are no longer used

* add notes in JUTGamePad.cpp

* clang-format + add back extern funcs

* fix some more extern labels

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 20:22:18 -05:00
Erin Moon 2dddd746a6 split d_attention (#40)
* d_attention.cpp: split

* clang-format + add back in dropped labels

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 18:19:10 -05:00
Erin Moon cba64289a4 JUTXfb: decompile (#38)
* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile

* JUTXfb: split

* JUTXfb: decompile (except for almost-matching ctor)

Elaborates JUTVideo and some related stuff.
Decompiles the following functions:
- JUTXfb::initiate()
- JUTXfb::createManager()
- JUTXfb::common_init()
- JUTXfb::destroyManager()
- JUTXfb::~JUTXfb()
- JUTXfb::JUTXfb(): *almost* matching up to regalloc

* clang-format and extern label modifications

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 18:01:48 -05:00
jdflyer 6a16bef70e d_lib split and partially matched (#30)
* d_lib split and partially matched

* clang-format

* modify some extern labels

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 17:39:36 -05:00
Erin Moon 8630c588e9 d_a_alink.cpp: split (#41) 2020-12-29 17:08:25 -05:00
Pheenoh d23b63c7cb add clang-format CI check 2020-12-26 13:18:14 -05:00
Pheenoh 9e442d11ca move asm in TUs to files, add diff.py 2020-12-26 13:03:37 -05:00
Pheenoh 4c504d078d run clang-format 2020-12-26 11:31:49 -05:00
unknown 64a6a97b7b add missing class and clang-format 2020-12-25 21:16:13 -05:00
unknown e066711553 add missing class in d_save and clang-format 2020-12-25 21:11:16 -05:00
TakaRikka e8315cdb81 begin splitting d_a_alink (#34)
* begin splitting d_a_alink

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-25 21:03:10 -05:00
Erin Moon 58fc83c4f8 m_Do_Reset: OK (#35)
* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile
2020-12-25 20:59:52 -05:00
TakaRikka 22bda03652 more d_item / d_a_horse_static done (#32)
* more d_item funcs done / add dSv_info_c to gameinfo

* checkWait ok / remove asm
2020-12-14 14:07:29 -05:00
Erin Moon 43ac7130b9 diff_settings.py: update for new ppc-enabled diff.py (#31)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:52:46 -05:00
jdflyer e4ad32409b d_bomb OK (#28)
* Start Z2SceneMgr

* Various Fixes After Merge

* d_bomb OK

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:49:40 -05:00
notyourav 70cd727038 re_notes.md (#25)
Co-authored-by: notyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:47:39 -05:00
TakaRikka c65c2dbb8f Z2StatusMgr (#24)
* split Z2SeMgr / begin split of Z2SeqMgr

* Z2StatusMgr ok

most of Z2StatusMgr done, rest split

* name some class members

* name some Z2SceneMgr vars

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:43:16 -05:00
Jasper St. Pierre 4e622b873f f_pc_pause / f_pc_priority (#23)
* f_pc_pause

* f_pc_priority
2020-12-13 15:38:17 -05:00
unknown c0ba553a85 convert more class members to new naming convention 2020-12-08 01:37:35 -05:00
unknown 5684d3b149 use dolphin types, begin changing class member naming convention 2020-12-08 00:46:44 -05:00
Erin Moon b8bd1bbab1 OS.h: more type elaboration (#21)
* move OS function decls to their own header, os.h

* os.h: OSReport (+related), OSMutex, OSThread; fixup uses

* os.h: OS{Mutex,Thread}{Link,Queue}, OSCond

* os.h: OSxx typedefs, OSMessageQueue

* os.h: fix time function decls

* os.h: retype misc sched fns, create u32 OSSoundMode enum (and fixup use)

* os.h: more retyping

* merge os.h into os/OS.h

@Julgodis did this in parallel to me and added some functions beyond
what was in functions.h, so I merged our versions together

* os.h: retype the rest of the (currently decl'd) thread functions

* d_save: move OS import

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-07 15:05:20 -05:00
Jasper St. Pierre 81e70882bf f_pc_layer: Fix struct (#22)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-07 14:51:49 -05:00
unknown a0304f5917 rm asm-differ 2020-12-06 20:47:05 -05:00
unknown cbd06e5668 add d_meter2_info methods, addBottleNum OK, getBombNum OK, isLetterReadFlag OK 2020-12-06 20:46:16 -05:00
Jonathan Wase 86f892c3d3 JKernel (#20)
* JKRDvdArchive.s split

* JKRMemArchive.s split

* JKRAramArchive.s split

* JKRCompArchive.s split

* JKRDecomp.s split

* JKRDvdRipper.s split

* JKRAramBlock.s split

* JKRAramHeap.s split

* JKRAramPiece.s split

* JKRAramStream.s split

* removed unused .s files

* JKRDvdAramRipper.s split

* JKRAram.s split

* cleanup and making vtables easier to debug

* fixed merge errors

* fixed JKRFileLoader::fetchVolumeName

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-06 15:02:25 -05:00
unknown 819f178657 add dmeter2 header, isMagicFlag OK, setItem OK 2020-12-06 14:38:26 -05:00
Jonathan Wase 59a3d00209 OS.h and JKRDvdFile (#19)
* OS header

* JKRFile and JKRDvdFile
2020-12-06 00:40:34 -05:00
lepelog 89385fe8fd f_pc_layer (#16)
* f_op_actor_tag OK

* f_pc_layer_tag OK

* f_pc_layer_iter

* forgot a return

* identation and extern var name comments

* fix struct member name

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-05 23:58:12 -05:00
TakaRikka 2fbecbc1da d_item (#18)
* item_funcs ok

* item_getcheck_func ok

* remove unnecessary asm file

* execItemGet / checkItemGet ok, add enums for readability

* fix return types
2020-12-05 23:30:55 -05:00
Jonathan Wase fb1217e3f9 Types and functions for JKRThread, JKRFile, JKRDvdFile, JKRFileCache... (#17)
* Added JSUListIterator and decompiled JKRHeap::dispose_subroutine

* JKRDisposer!

* only 4 functions not OK in JKRHeap

* JKRThread asm functions

* more JKRThread

* JKRThreadSwitch

* JKRThread::JKRThread

* More JKRTHread functions and vtable

* fixed bad merge

* update JKRThread and JKRThreadSwitch to use new virtual inheritance

* save before asmsplit.py script

* JKRFile

* JKRDvdFile

* JKRFileCache

* JKRFileFinder

* JKRFileLoader

* JKRAssertHeap

* JKRExpHeap

* JKRSolidHeap

* fixed type and functions definitions

* JKRArchive (Pub)

* missed file

* JKRArchive

* forgot obj_files.mk

* fixed merge error and class members

* class members

* removed unused asm files

* added names to global variables

* class members for JKRHeap, JKRExpHeap, JKRSolidHeap, and JKRFileCache.
2020-12-05 12:45:10 -05:00
unknown 3dc3739ebd initial class structure for dComIfG_inf_c 2020-12-04 00:04:41 -05:00
unknown 7ec9d6ec28 Merge branch 'master' of https://github.com/zeldaret/tp 2020-12-03 21:04:06 -05:00
unknown 1c7bf89fff begin adding d_com_inf_game, add include guards to headers 2020-12-03 21:03:25 -05:00
Jonathan Wase 4adfed901e JSUList.h templates and JKRHeap matches (#13)
* JSULink, JSUList, JSUTree and more matching in JKRHeap

* Added JSUListIterator and decompiled JKRHeap::dispose_subroutine

* more templates and JKRHeap functions

* JKRDisposer!

* only 4 functions not OK in JKRHeap

* fixed: *this->getObject()

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-03 21:02:41 -05:00
notyourav 294858f751 JSystem Font classes, SComponent cBgW (#14)
* c_bg_w.cpp OK

* JUTFont and JUTResFont partially implemented

Co-authored-by: notyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-03 20:58:53 -05:00
TakaRikka e27ed1c55d add gameinfo class / rename unk vars in d_save (#15) 2020-12-03 20:56:56 -05:00
TakaRikka 8703f1315e d_a_horse_static (#12)
* d_a_item_static ok

* d_a_horse_static ok

* typo

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 22:38:32 -05:00
jdflyer 539608859b Start Z2SceneMgr and Various Fixes (#11)
* Start Z2SceneMgr

* Various Fixes After Merge

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 20:35:32 -05:00
TakaRikka 6e9b833ef7 d_a_item_static ok (#10)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 20:33:22 -05:00
notyourav 31817ac993 canonize d_save.h (#9)
Co-authored-by: notyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 19:03:31 -05:00
TakaRikka 84c6fa1a58 Z2CreatureLink / Z2Calc (#8)
* begin Z2LinkMgr

Z2CreatureLink::setLinkGroupInfo, Z2CreatureLink::setLinkHp ok

* split Z2CreatureLink

* split Z2Calc

* fix label data type / clean up

* fix getRandom_0_1 instruction

* fix

* clean up
2020-12-01 22:34:15 -05:00
unknown 91fc5f6f53 Merge branch 'master' of https://github.com/zeldaret/tp 2020-12-01 19:04:35 -05:00
unknown 1ded84de46 rm old asm 2020-12-01 19:04:20 -05:00
Jonathan Wase ac6b191dc1 Improved handling of virtual inheritance. (#7)
* new system for handling vtables

* commented out non-matching JKRDisposer::~JKDisposer()

* removed artificial vtables and matched simple virtual-call functions

* better text on nonmatching functions

* reverted asmdiff.sh

* attempt 2

* Spelling

* banner and .gitignore for vtable artifacts

* move virtual function to the correct class

* remove unnecessary casts
2020-12-01 15:18:01 -05:00
Jasper St. Pierre 937da3c59b SComponent c_list / c_node (#5)
* SComponent c_list / c_node

* SComponent: c_tree

* SComponent: start c_phase

* SComponent: c_tag

* SComponent: c_counter

* f_pc_line / f_pc_line_tag

the beginnings of the framework process system

* f_pc_method_tag

* SComponent: c_node_iter / c_list_iter / c_tag_iter / c_tree_iter

* f_pc_draw_priority

* f_pc_method_iter

* f_pc_profile

Also add (untested) base header classes for f_pc_base

* f_pc_searcher

* f_pc_create_tag

* f_pc_creator

* f_pc_layer skeleton

* f_pc_method

* f_pc_line_iter

* f_pc_leaf somewhat

* f_pc_delete_tag

* f_pc_create_req

* Fix a few non-matchings

* c_phase: slight additional notes

* c_node: more matching

* fix build

* c_node: One more matching

* f_pc_line_iter: Matching

* f_pc_create_req: a bit more

* f_pc_load, f_pc_deletor partial

* f_pc_executor partial

* f: minor cleanups

* f_pc_executor

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-11-30 17:26:55 -05:00
Jonathan Wase 51b0260c80 JKRHeap functions (#6)
* becomeSystemHeap OK! becomeCurrentHeap OK!

* initArena OK!

* static-alloc OK! static-free OK! static-resize OK!

* operator new OK! operator delete OK!

* removed asm/d/file/sel/d_file_sel_info.o from obj_files.mk

* fixed vtable names
2020-11-30 17:24:05 -05:00
unknown 635472d71f migrate all d_file_sel_info asm functions to inline 2020-11-29 23:26:19 -05:00
unknown 44b14ec128 migrate remaining d_save and m_Do_main asm to inline, add intial class mapping for dFile_select_c 2020-11-29 20:16:52 -05:00
unknown 58afa9ed78 add more sorting to inline'd asm for JSystem, move m_Do_main over to using newly defined JKRHeap and JKRExpHeap headers 2020-11-29 12:57:11 -05:00
unknown 92cfb378f3 Add better sorting for inline'd asm 2020-11-29 12:21:01 -05:00
unknown 27cc0f5aa8 move JK* JS* TUs into JSystem folder 2020-11-29 11:53:10 -05:00
Jonathan Wase 635fbc34ec Adds JSUList, JKRDisposer, and JKRHeap. (#4)
* Added JSUList, JKRDisposer, and JKRHeap.

JSUList: Decompiled JSUPtrLink and JSUPtrList with their respected
functions. The templated class JSUList is left.

JKRDisposer: Constructor matched but the destructor is close but
not yet a match.

JKRHeap: No functions matches yet. JKRHeap.cpp now includes
"operator delete" which makes it possible to forward compile
destructors.

* moved files from src/ to libs/
2020-11-29 11:47:00 -05:00
unknown 68a46e15cb begin d_save_HIO, some m_Do_main functions ok 2020-11-28 23:34:06 -05:00
unknown f861af3f37 a few dSv_info_c methods ok 2020-11-28 19:18:27 -05:00
unknown 9982bcab28 dSv_zoneActor_c ok dSv_zone_c ok dSv_restart_c ok dSv_turnRestart_c ok dSv_info_c::init ok some dSv_save_c ok 2020-11-27 23:34:39 -05:00
unknown 963c0ad2a6 dSv_zoneBit_c methods ok except 1 2020-11-27 21:32:52 -05:00
unknown d0e76b81b9 dSv_danBit_c ok + fixed many nonmatchings 2020-11-27 20:49:52 -05:00
unknown c1f0b47a93 dSv_memory_c::init ok, dSv_memory2_c::init ok, some dSv_event_c::offEventBit ok 2020-11-26 23:55:28 -05:00
unknown b0ffcd3878 some dSv_memBit_c methods ok 2020-11-26 22:02:39 -05:00
unknown 2761151f69 move SComponent and SStandard under SSystem, some dSv_player_config_c methods ok 2020-11-26 21:35:46 -05:00
unknown 363fd35933 dSv_player_config_c::init ok 2020-11-26 20:14:44 -05:00
unknown 2fceccbd08 dSv_light_drop_c ok 2020-11-23 21:26:10 -05:00
unknown d92f32f541 dSv_player_collect_c ok 2020-11-23 19:57:23 -05:00
unknown 8b358fdf8d dSv_player_item_max_c::init ok dSv_player_item_max_c::setBombNum ok 2020-11-23 00:31:50 -05:00
unknown e956a55a26 dSv_player_item_record_c and dSv_player_get_item_c funcs ok 2020-11-22 20:17:49 -05:00
unknown 5111810104 multiple d_save functions ok 2020-11-22 18:21:23 -05:00
unknown 15ecc6ac7d dSv_player_item_c::setEmptyBombBagItemIn ok 2020-11-22 16:07:42 -05:00
unknown 02c62c1132 migrate d_save.cpp inline asm to external files, migrate extern vars and funcs to their own headers 2020-11-22 15:27:16 -05:00
unknown cab605eec6 Merge branch 'master' of https://github.com/zeldaret/tp 2020-11-22 14:32:06 -05:00
unknown c31b914681 update d_save, begin splitting asm 2020-11-22 14:28:16 -05:00
unknown 6359c5f82b Migrate many functions from d_save.s 2020-09-13 02:51:05 -04:00
Pheenoh 3acc2e012b Sorting files, adding CI checks, update Makefile (#3)
* organize files, update makefile, add CI checks, begin adding d_save.cpp

* Add discord server link

* don't filter branches
2020-09-05 15:40:08 -04:00
unknown a545ed5837 don't filter branches 2020-09-05 15:35:42 -04:00
unknown 724638fa36 Add discord server link 2020-09-05 15:21:05 -04:00
unknown 6d5e5cb17c organize files, update makefile, add CI checks, begin adding d_save.cpp 2020-09-05 15:03:13 -04:00
notyouraveragehooman f61bfb39dd split and named symbols in text.s (#2)
* split and named symbols in text.s

* Update makefile for better compatiblity
2020-09-01 20:26:31 -04:00
Pheenoh c72fc0c64a Merge pull request #1 from Thar0/makefile-changes
Makefile changes: Remove objcopy hack and allow building with WSL
2020-08-29 23:20:04 -04:00
1340 changed files with 38359 additions and 10194 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
Language: Cpp
Standard: C++03
AccessModifierOffset: -4
AlignAfterOpenBracket: Align
AlignAfterOpenBracket: DontAlign
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignOperands: true
+116
View File
@@ -0,0 +1,116 @@
name: Bug Report
description: Report an issue with Dusklight
type: Bug
body:
- type: checkboxes
id: official-build-certification
attributes:
label: Mods and Forks
description: Certify that this issue exists on the official builds of Dusklight
options:
- label: The bug occurs on an **official release** of Dusklight, without any forks or third-party patches installed
required: true
validations:
required: true
- type: input
id: dusklight-version
attributes:
label: Dusklight Version
placeholder: ex. 1.3.1
validations:
required: true
- type: textarea
id: bug-description
attributes:
label: Bug Description
placeholder: Describe the bug you are encountering
validations:
required: true
- type: textarea
id: repro-steps
attributes:
label: Steps to Reproduce
placeholder: |
1. Load save
2. Go to Hyrule Field
3. See bug
- type: textarea
id: expected-behavior
attributes:
label: Expected Behavior
placeholder: Describe what should be happening
- type: textarea
id: current-behavior
attributes:
label: Current Behavior
placeholder: Describe what is happening instead
- type: dropdown
id: system-os-architecture
attributes:
label: OS / Architecture
description: The operating system and architecture you are running Dusklight on
options:
- Windows x86-64
- Windows ARM64
- MacOS ARM64
- MacOS x86-64
- Linux ARM64
- Linux x84-64
- Android ARM64
- iOS ARM64
validations:
required: true
- type: dropdown
id: game-region
attributes:
label: Game Region
description: The game region you are playing on
options:
- NTSC-U (North America)
- PAL (Europe)
validations:
required: true
- type: input
id: game-language
attributes:
label: Game Language
description: The language you are playing the game in
placeholder: ex. English, Spanish, etc.
- type: dropdown
attributes:
label: Graphics Backend
options:
- Vulkan
- D3D12
- Metal
- D3D11
- OpenGL ES
- Unsure / Default
default: 5
- type: textarea
id: texture-packs-mods
attributes:
label: Texture Packs and Mods
placeholder: List any texture packs or mods you had installed
- type: upload
id: logs-upload
attributes:
label: Logs and Other Files
description: Include any relevant logs, config files, or saves to reproduce the bug
- type: textarea
id: additional-context
attributes:
label: Additional Context
placeholder: Any other information that might be helpful
@@ -0,0 +1,24 @@
name: Feature Request
description: Request a new Dusklight feature. Not all requests can/will be included, but we will take these ideas into consideration.
type: Feature
body:
- type: textarea
id: feature-description
attributes:
label: Feature Description
placeholder: Describe the feature you are requesting
validations:
required: true
- type: input
id: feature-platform
attributes:
label: Platform
description: If applicable, list the platforms this feature applies to. If it is for all platforms, feel free to leave this field blank.
placeholder: ex. Mac, Android, Steam Deck, etc.
- type: textarea
id: feature-related-info
attributes:
label: Additional Information
placeholder: Any other information that might be helpful (related features, existing implementations, open pull requests or issues, etc.)
+107 -38
View File
@@ -5,10 +5,19 @@ on:
paths-ignore:
- '*.md'
- '*LICENSE'
- 'docs/**'
pull_request:
paths-ignore:
- '*.md'
- '*LICENSE'
- 'docs/**'
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && format('pr-{0}', github.event.pull_request.number) || format('run-{0}', github.run_id) }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
env:
# SCCACHE_GHA_ENABLED: "true"
SCCACHE_GHA_ENABLED: "true"
RUSTC_WRAPPER: "sccache"
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
@@ -22,13 +31,13 @@ jobs:
matrix:
include:
- name: GCC x86_64
runner: [self-hosted, Linux]
runner: ubuntu-24.04
preset: gcc
artifact_arch: x86_64
# - name: GCC aarch64
# runner: ubuntu-24.04-arm
# preset: gcc
# artifact_arch: aarch64
- name: GCC aarch64
runner: ubuntu-24.04-arm
preset: gcc
artifact_arch: aarch64
# - name: Clang x86_64
# runner: ubuntu-latest
# preset: clang
@@ -41,18 +50,16 @@ jobs:
submodules: recursive
- name: Install dependencies
if: 'false' # disabled for self-hosted
run: |
sudo apt-get update
sudo apt-get -y install ninja-build clang lld openssl libcurl4-openssl-dev \
sudo apt-get -y install ninja-build clang lld mold openssl libcurl4-openssl-dev \
zlib1g-dev libglu1-mesa-dev libdbus-1-dev libvulkan-dev libxi-dev libxrandr-dev libasound2-dev \
libpulse-dev libudev-dev libpng-dev libncurses5-dev libx11-xcb-dev libfreetype-dev \
libxinerama-dev libxcursor-dev python3-markupsafe libgtk-3-dev libssl-dev \
libxss-dev libfuse2 libusb-1.0-0-dev libdecor-0-dev libpipewire-0.3-dev libunwind-dev
- name: Setup sccache
if: 'false' # disabled for self-hosted
uses: mozilla-actions/sccache-action@v0.0.9
uses: mozilla-actions/sccache-action@v0.0.10
- name: Print sccache stats
run: sccache --show-stats
@@ -67,17 +74,16 @@ jobs:
run: ci/build-appimage.sh
- name: Upload artifacts
if: startsWith(github.event.ref, 'refs/tags/v')
uses: actions/upload-artifact@v7
with:
name: dusk-${{env.DUSK_VERSION}}-linux-${{matrix.preset}}-${{matrix.artifact_arch}}
name: dusklight-${{env.DUSK_VERSION}}-linux-${{matrix.preset}}-${{matrix.artifact_arch}}
path: |
build/install/Dusk-*.AppImage
build/install/Dusklight-*.AppImage
build/install/debug.tar.*
build-apple:
name: Build Apple (${{matrix.name}})
runs-on: [self-hosted, macOS]
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
@@ -86,14 +92,14 @@ jobs:
platform: macos
preset: x-macos-ci-arm64
artifact_name: macos-appleclang-arm64
# - name: AppleClang macOS x86_64
# platform: macos
# preset: x-macos-ci-x86_64
# artifact_name: macos-appleclang-x86_64
# - name: AppleClang iOS arm64
# platform: ios
# preset: x-ios-ci
# artifact_name: ios-appleclang-arm64
- name: AppleClang macOS x86_64
platform: macos
preset: x-macos-ci-x86_64
artifact_name: macos-appleclang-x86_64
- name: AppleClang iOS arm64
platform: ios
preset: x-ios-ci
artifact_name: ios-appleclang-arm64
# - name: AppleClang tvOS arm64
# platform: tvos
# preset: x-tvos-ci
@@ -106,7 +112,6 @@ jobs:
submodules: recursive
- name: Install dependencies
if: 'false'
run: brew install cmake ninja
- name: Install Rust iOS target
@@ -128,7 +133,7 @@ jobs:
rustup target add x86_64-apple-darwin
- name: Setup sccache
uses: mozilla-actions/sccache-action@v0.0.9
uses: mozilla-actions/sccache-action@v0.0.10
- name: Configure CMake
run: cmake --preset ${{matrix.preset}}
@@ -137,14 +142,80 @@ jobs:
run: cmake --build --preset ${{matrix.preset}}
- name: Upload artifacts
if: startsWith(github.event.ref, 'refs/tags/v')
uses: actions/upload-artifact@v7
with:
name: dusk-${{env.DUSK_VERSION}}-${{matrix.artifact_name}}
name: dusklight-${{env.DUSK_VERSION}}-${{matrix.artifact_name}}
path: |
build/install/Dusk.app
build/install/Dusklight.app
build/install/debug.tar.*
build-android:
name: Build Android (${{matrix.name}})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- name: Clang arm64-v8a
preset: x-android-ci-arm64
abi: arm64-v8a
artifact_arch: arm64
rust_target: aarch64-linux-android
env:
ANDROID_NDK_VERSION: "29.0.14206865"
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
submodules: recursive
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get -y install ninja-build
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: 17
- name: Setup Android SDK
uses: android-actions/setup-android@v4
- name: Install Android SDK packages
run: sdkmanager "platforms;android-36" "build-tools;36.1.0" "ndk;${ANDROID_NDK_VERSION}"
- name: Install Rust Android target
run: |
rustup toolchain install stable
rustup target add ${{matrix.rust_target}}
- name: Setup sccache
uses: mozilla-actions/sccache-action@v0.0.10
- name: Configure CMake
run: cmake --preset ${{matrix.preset}}
- name: Build native library
run: cmake --build --preset ${{matrix.preset}} --target dusklight
- name: Stage stripped JNI library
run: ANDROID_STAGE_ABIS="${{matrix.abi}}" platforms/android/scripts/stage-jni-libs.sh
- name: Build APK
working-directory: platforms/android
run: ./gradlew :app:assembleRelease --rerun-tasks
- name: Upload artifacts
uses: actions/upload-artifact@v7
with:
name: dusklight-${{env.DUSK_VERSION}}-android-${{matrix.artifact_arch}}
path: platforms/android/app/build/outputs/apk/release/app-${{matrix.abi}}-release-unsigned.apk
build-windows:
name: Build Windows (${{matrix.name}})
runs-on: ${{matrix.runner}}
@@ -154,17 +225,17 @@ jobs:
matrix:
include:
- name: MSVC x86_64
runner: [self-hosted, Windows]
runner: windows-latest
preset: msvc
msvc_arch: amd64
vcpkg_arch: x64
artifact_arch: x86_64
# - name: MSVC arm64
# runner: windows-11-arm
# preset: arm64-msvc
# msvc_arch: arm64
# vcpkg_arch: arm64
# artifact_arch: arm64
- name: MSVC arm64
runner: windows-latest
preset: arm64-msvc
msvc_arch: amd64_arm64
vcpkg_arch: arm64
artifact_arch: arm64
# - name: Clang x86_64
# runner: windows-latest
# preset: clang
@@ -191,10 +262,9 @@ jobs:
uses: mozilla-actions/sccache-action@v0.0.9
- name: Install dependencies
if: 'false' # disabled for self-hosted
run: |
choco install ninja
vcpkg install freetype:${{matrix.vcpkg_arch}}-windows-static zstd:${{matrix.vcpkg_arch}}-windows-static
vcpkg install freetype:${{matrix.vcpkg_arch}}-windows zstd:${{matrix.vcpkg_arch}}-windows
- name: Configure CMake
run: cmake --preset x-windows-ci-${{matrix.preset}}
@@ -203,10 +273,9 @@ jobs:
run: cmake --build --preset x-windows-ci-${{matrix.preset}}
- name: Upload artifacts
if: startsWith(github.event.ref, 'refs/tags/v')
uses: actions/upload-artifact@v7
with:
name: dusk-${{env.DUSK_VERSION}}-win32-msvc-${{matrix.artifact_arch}}
name: dusklight-${{env.DUSK_VERSION}}-win32-msvc-${{matrix.artifact_arch}}
path: |
build/install/*.exe
build/install/*.dll
+4
View File
@@ -41,6 +41,10 @@ compile_commands.json
# MacOS
.DS_Store
# direnv / nix
.direnv/
.envrc
# ISOs
*.iso
+1 -1
View File
@@ -2,7 +2,7 @@
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch Dusk MSVC",
"name": "(gdb) Launch Dusklight MSVC",
"type": "cppvsdbg",
"request": "launch",
"program": "${command:cmake.launchTargetPath}",
+1 -1
View File
@@ -1,5 +1,5 @@
{
"cmake.buildDirectory": "${workspaceFolder}/build/dusk/${buildType}/${variant:tp_version}",
"cmake.buildDirectory": "${workspaceFolder}/build/dusklight/${buildType}/${variant:tp_version}",
"cmake.generator": "Ninja",
"cmake.configureSettings": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
+231 -118
View File
@@ -5,8 +5,20 @@ if (NOT CMAKE_BUILD_TYPE)
"Build type options: Debug Release RelWithDebInfo MinSizeRel" FORCE)
endif ()
# obtain revision info from git
find_package(Git)
set(DUSK_VERSION_OVERRIDE "" CACHE STRING "Override version string (skips git detection and format validation)")
if (DUSK_VERSION_OVERRIDE)
set(DUSK_WC_DESCRIBE "${DUSK_VERSION_OVERRIDE}")
set(DUSK_VERSION_STRING "0.0.0.0")
set(DUSK_SHORT_VERSION_STRING "0.0.0")
set(DUSK_VERSION_CODE "1")
set(DUSK_WC_REVISION "")
set(DUSK_WC_BRANCH "")
set(DUSK_WC_DATE "")
message(STATUS "Dusklight version overridden to ${DUSK_WC_DESCRIBE}")
else ()
# obtain revision info from git
find_package(Git)
if (GIT_FOUND)
# make sure version information gets re-run when the current Git HEAD changes
execute_process(WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} COMMAND ${GIT_EXECUTABLE} rev-parse --git-path HEAD
@@ -48,29 +60,48 @@ else ()
message(STATUS "Unable to find git, commit information will not be available")
endif ()
if (DUSK_WC_DESCRIBE MATCHES "^v([0-9]+)\\.([0-9]+)\\.([0-9]+)(-([0-9]+).*)?$")
if (DUSK_WC_DESCRIBE MATCHES "^v([0-9]+)\\.([0-9]+)\\.([0-9]+)([-+].*)?$")
set(DUSK_SHORT_VERSION_STRING "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.${CMAKE_MATCH_3}")
if (CMAKE_MATCH_5)
set(DUSK_VERSION_STRING "${DUSK_SHORT_VERSION_STRING}.${CMAKE_MATCH_5}")
else ()
set(DUSK_VERSION_STRING "${DUSK_SHORT_VERSION_STRING}.0")
set(_ver_major ${CMAKE_MATCH_1})
set(_ver_minor ${CMAKE_MATCH_2})
set(_ver_patch ${CMAKE_MATCH_3})
set(DUSK_VERSION_TWEAK "0")
if (DUSK_WC_DESCRIBE MATCHES "^v[0-9]+\\.[0-9]+\\.[0-9]+-([0-9]+)(-dirty)?$")
set(DUSK_VERSION_TWEAK "${CMAKE_MATCH_1}")
elseif (DUSK_WC_DESCRIBE MATCHES "^v[0-9]+\\.[0-9]+\\.[0-9]+-[0-9A-Za-z.-]+-([0-9]+)(-dirty)?$")
set(DUSK_VERSION_TWEAK "${CMAKE_MATCH_1}")
endif ()
set(DUSK_VERSION_STRING "${DUSK_SHORT_VERSION_STRING}.${DUSK_VERSION_TWEAK}")
if(DUSK_VERSION_TWEAK GREATER 999)
set(_tweak 999)
else()
set(_tweak ${DUSK_VERSION_TWEAK})
endif()
# encoding: major*1e7 + minor*1e5 + patch*1e3 + tweak; collision-free for major<210, minor<100, patch<100, tweak<=999
math(EXPR DUSK_VERSION_CODE
"${_ver_major} * 10000000 + ${_ver_minor} * 100000 + ${_ver_patch} * 1000 + ${_tweak}")
else ()
set(DUSK_WC_DESCRIBE "UNKNOWN-VERSION")
set(DUSK_VERSION_STRING "0.0.0.0")
set(DUSK_SHORT_VERSION_STRING "0.0.0")
set(DUSK_VERSION_CODE "1")
endif ()
endif ()
# Add version information to CI environment variables
if(DEFINED ENV{GITHUB_ENV})
file(APPEND "$ENV{GITHUB_ENV}" "DUSK_VERSION=${DUSK_WC_DESCRIBE}\n")
file(APPEND "$ENV{GITHUB_ENV}" "DUSK_VERSION_CODE=${DUSK_VERSION_CODE}\n")
endif()
message(STATUS "Dusk version set to ${DUSK_WC_DESCRIBE}")
message(STATUS "Dusklight version set to ${DUSK_WC_DESCRIBE}")
message(STATUS "Build type: ${CMAKE_BUILD_TYPE}")
project(dusk LANGUAGES C CXX VERSION ${DUSK_VERSION_STRING})
project(dusklight LANGUAGES C CXX VERSION ${DUSK_VERSION_STRING})
if (APPLE)
enable_language(OBJC)
enable_language(OBJC OBJCXX)
endif ()
# Adjust CMAKE_SYSTEM_PROCESSOR on Windows to match compiler target
include(cmake/WindowsTargetProcessor.cmake)
if (APPLE AND NOT TVOS AND CMAKE_SYSTEM_NAME STREQUAL tvOS)
# ios.toolchain.cmake hack for SDL
set(TVOS ON)
@@ -95,37 +126,76 @@ set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_property(GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "_cmake")
option(ENABLE_ASAN "Enable AddressSanitizer" OFF)
if (ENABLE_ASAN)
if (CMAKE_C_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC" AND
CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
add_compile_options($<$<COMPILE_LANGUAGE:C,CXX>:/fsanitize=address>)
add_link_options(/fsanitize=address /INCREMENTAL:NO)
set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "ProgramDatabase")
foreach (_lang C CXX)
foreach (_rtc_flag /RTC1 /RTCc /RTCs /RTCu)
string(REPLACE "${_rtc_flag}" "" CMAKE_${_lang}_FLAGS_DEBUG "${CMAKE_${_lang}_FLAGS_DEBUG}")
endforeach ()
endforeach ()
elseif (CMAKE_C_COMPILER_FRONTEND_VARIANT STREQUAL "GNU" AND
CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "GNU")
add_compile_options(
$<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-fsanitize=address>
$<$<COMPILE_LANGUAGE:C,CXX,OBJC,OBJCXX>:-fno-omit-frame-pointer>
)
add_link_options(-fsanitize=address)
else ()
message(FATAL_ERROR "ENABLE_ASAN requires GNU-like or MSVC-like C/C++ compiler frontends")
endif ()
add_compile_definitions(NDEBUG_SANITIZER) # Avoids absl issue with SwissTable debug code
message(STATUS "dusklight: Enabled AddressSanitizer")
endif ()
if (CMAKE_SYSTEM_NAME STREQUAL Linux)
set(DAWN_USE_WAYLAND ON CACHE BOOL "Enable support for Wayland surface" FORCE)
endif ()
set(AURORA_ENABLE_DVD ON CACHE BOOL "Enable DVD API support" FORCE)
set(AURORA_ENABLE_CARD ON CACHE BOOL "Enable CARD API support" FORCE)
set(AURORA_ENABLE_RMLUI ON CACHE BOOL "Enable RmlUi UI support" FORCE)
add_subdirectory(extern/aurora EXCLUDE_FROM_ALL)
target_compile_definitions(aurora_mtx PRIVATE MTX_USE_PS=1)
add_subdirectory(libs/freeverb)
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
set(DUSK_GFX_DEBUG_GROUPS_DEFAULT ON)
else ()
set(DUSK_GFX_DEBUG_GROUPS_DEFAULT OFF)
endif ()
option(DUSK_BUILD_WARNINGS "Enable compiler warnings (off by default)")
option(DUSK_SELECTED_OPT "If on, selected parts of the project will be compiled with optimizations on Debug, intending to make the game run at 30 FPS. Note for MSVC: you will need to remove '/RTC1' from your debug flags in CMake.")
option(DUSK_MOVIE_SUPPORT "If on, compile against libjpeg-turbo to enable THP file decoding" ON)
if(ANDROID)
set(DUSK_MOVIE_SUPPORT OFF)
set(NOD_COMPRESS_BZIP2 OFF CACHE BOOL "" FORCE)
set(NOD_COMPRESS_LZMA OFF CACHE BOOL "" FORCE)
set(NOD_COMPRESS_ZLIB OFF CACHE BOOL "" FORCE)
set(NOD_COMPRESS_ZSTD OFF CACHE BOOL "" FORCE)
endif ()
option(DUSK_ENABLE_UPDATE_CHECKER "Enable update checking support" ON)
option(DUSK_ENABLE_SENTRY_NATIVE "Enable sentry-native crash reporting support" OFF)
option(DUSK_PACKAGE_INSTALL "Install Dusklight with a Linux-native file structure" OFF)
option(DUSK_GFX_DEBUG_GROUPS "Report debug groups to the native graphics API" ${DUSK_GFX_DEBUG_GROUPS_DEFAULT})
set(DUSK_SENTRY_DSN "" CACHE STRING "Sentry DSN")
set(DUSK_SENTRY_ENVIRONMENT "development" CACHE STRING "Sentry environment")
# Edit & Continue
if (MSVC)
if ("${CMAKE_MSVC_DEBUG_INFORMATION_FORMAT}" STREQUAL "" AND CMAKE_BUILD_TYPE STREQUAL "Debug")
set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "EditAndContinue")
endif ()
if (CMAKE_MSVC_DEBUG_INFORMATION_FORMAT STREQUAL "EditAndContinue")
add_link_options("/INCREMENTAL")
endif ()
endif ()
if (DUSK_MOVIE_SUPPORT)
find_package(libjpeg-turbo 3.0 CONFIG QUIET)
if (libjpeg-turbo_FOUND)
message(STATUS "dusk: Using system libjpeg-turbo")
message(STATUS "dusklight: Using system libjpeg-turbo")
else ()
message(STATUS "dusk: Fetching libjpeg-turbo")
message(STATUS "dusklight: Fetching libjpeg-turbo")
include(ExternalProject)
set(_jpeg_install_dir ${CMAKE_BINARY_DIR}/libjpeg-turbo-install)
if (WIN32)
@@ -135,6 +205,7 @@ if (DUSK_MOVIE_SUPPORT)
endif ()
set(_jpeg_cmake_args
-DCMAKE_INSTALL_PREFIX=${_jpeg_install_dir}
-DCMAKE_PROJECT_INCLUDE=${CMAKE_CURRENT_SOURCE_DIR}/cmake/WindowsTargetProcessor.cmake
-DENABLE_SHARED=OFF
-DWITH_TURBOJPEG=ON
-DWITH_JAVA=OFF
@@ -144,12 +215,17 @@ if (DUSK_MOVIE_SUPPORT)
list(APPEND _jpeg_cmake_args -DCMAKE_TOOLCHAIN_FILE=${_jpeg_toolchain_file})
endif ()
set(_jpeg_passthrough_vars
ANDROID_ABI
ANDROID_PLATFORM
CMAKE_BUILD_TYPE
CMAKE_C_COMPILER
CMAKE_C_COMPILER_LAUNCHER
CMAKE_MAKE_PROGRAM
CMAKE_MSVC_RUNTIME_LIBRARY
CMAKE_MSVC_DEBUG_INFORMATION_FORMAT
CMAKE_OSX_ARCHITECTURES
CMAKE_OSX_DEPLOYMENT_TARGET
CMAKE_OSX_SYSROOT
DEPLOYMENT_TARGET
ENABLE_ARC
ENABLE_BITCODE
@@ -180,10 +256,9 @@ if (CMAKE_SYSTEM_NAME STREQUAL Linux)
# -Wno-multichar: Multi-character constants ('ABCD') are implementation-defined but all compilers
# (CW, GCC, Clang, MSVC) encode them identically in big-endian order.
# For >4-char literals (which GCC/Clang truncate to int), use the MULTI_CHAR() macro.
# -Wwrite-strings: Game code relies on implicit const char* -> char* conversions
# -Wdeprecated-declarations: JSystem uses std::iterator, deprecated in C++17
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-multichar -Wno-write-strings")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-multichar -Wno-write-strings -Wno-trigraphs -Wno-deprecated-declarations")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-multichar")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-multichar -Wno-trigraphs -Wno-deprecated-declarations")
set(CMAKE_INSTALL_RPATH "$ORIGIN")
set(CMAKE_BUILD_RPATH "$ORIGIN")
elseif (APPLE)
@@ -193,7 +268,6 @@ elseif (APPLE)
elseif (MSVC)
add_compile_options(
$<$<COMPILE_LANGUAGE:C,CXX>:/bigobj>
$<$<COMPILE_LANGUAGE:C,CXX>:/Zc:strictStrings->
$<$<COMPILE_LANGUAGE:C,CXX>:/MP>
$<$<COMPILE_LANGUAGE:C,CXX>:/FS>
)
@@ -210,17 +284,16 @@ elseif (MSVC)
add_compile_options($<$<COMPILE_LANGUAGE:C,CXX>:/utf-8>)
endif ()
include(FetchContent)
# Declare all dependencies first so CMake can download them in parallel
message(STATUS "dusk: Fetching cxxopts")
message(STATUS "dusklight: Fetching cxxopts")
FetchContent_Declare(cxxopts
URL https://github.com/jarro2783/cxxopts/archive/refs/tags/v3.3.1.tar.gz
URL_HASH SHA256=3bfc70542c521d4b55a46429d808178916a579b28d048bd8c727ee76c39e2072
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
)
message(STATUS "dusk: Fetching nlohmann/json")
message(STATUS "dusklight: Fetching nlohmann/json")
FetchContent_Declare(json
URL https://github.com/nlohmann/json/releases/download/v3.12.0/json.tar.xz
URL_HASH SHA256=42f6e95cad6ec532fd372391373363b62a14af6d771056dbfc86160e6dfff7aa
@@ -229,7 +302,7 @@ FetchContent_Declare(json
FetchContent_MakeAvailable(cxxopts json)
if (DUSK_ENABLE_SENTRY_NATIVE)
message(STATUS "dusk: Fetching sentry-native")
message(STATUS "dusklight: Fetching sentry-native")
set(SENTRY_BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
set(SENTRY_BACKEND crashpad CACHE STRING "" FORCE)
if (WIN32)
@@ -254,6 +327,12 @@ if (DUSK_ENABLE_SENTRY_NATIVE)
endif ()
endif ()
# Use signed char on ARM to match the original game (and x86)
string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" _arch)
if(_arch MATCHES "^(arm|aarch64)" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "GNU")
add_compile_options(-fsigned-char)
endif()
if (CMAKE_SYSTEM_NAME STREQUAL Windows)
set(PLATFORM_NAME win32)
elseif (CMAKE_SYSTEM_NAME STREQUAL Darwin)
@@ -274,17 +353,17 @@ include(files.cmake)
# TODO: version handling for res includes
set(DUSK_BUNDLE_NAME Dusk)
set(DUSK_BUNDLE_NAME Dusklight)
set(DUSK_BUNDLE_IDENTIFIER dev.twilitrealm.dusk)
set(DUSK_COMPANY_NAME "Twilit Realm")
set(DUSK_FILE_DESCRIPTION "Dusk")
set(DUSK_PRODUCT_NAME "Dusk")
set(DUSK_FILE_DESCRIPTION "Dusklight")
set(DUSK_PRODUCT_NAME "Dusklight")
set(DUSK_COPYRIGHT "Copyright (C) Twilit Realm contributors")
source_group("dolzel" FILES ${DOLZEL_FILES} ${Z2AUDIOLIB_FILES} ${REL_FILES})
source_group("dusk" FILES ${DUSK_FILES})
source_group("dusklight" FILES ${DUSK_FILES} ${DUSK_HTTP_BACKEND_FILES})
set(GAME_COMPILE_DEFS TARGET_PC WIDESCREEN_SUPPORT=1 AVOID_UB=1 VERSION=0)
set(GAME_COMPILE_DEFS TARGET_PC WIDESCREEN_SUPPORT=1 AVOID_UB=1 VERSION=0 MTX_USE_PS=1)
set(GAME_INCLUDE_DIRS
include
@@ -296,10 +375,10 @@ set(GAME_INCLUDE_DIRS
extern
${CMAKE_BINARY_DIR})
find_package(Threads REQUIRED)
set(GAME_LIBS aurora::core aurora::gx aurora::gd aurora::si aurora::vi aurora::pad aurora::mtx aurora::os aurora::dvd
aurora::card freeverb cxxopts::cxxopts absl::flat_hash_map nlohmann_json::nlohmann_json TracyClient fmt::fmt)
list(APPEND GAME_LIBS libzstd_static)
aurora::card freeverb cxxopts::cxxopts absl::flat_hash_map nlohmann_json::nlohmann_json TracyClient fmt::fmt
Threads::Threads zstd::libzstd)
if (DUSK_ENABLE_SENTRY_NATIVE)
list(APPEND GAME_LIBS sentry)
@@ -308,8 +387,47 @@ endif ()
if (WIN32)
list(APPEND GAME_LIBS Ws2_32)
if (CMAKE_BUILD_TYPE STREQUAL Debug)
list(APPEND GAME_LIBS dbghelp)
list(APPEND GAME_COMPILE_DEFS DUSK_CRASH_DBGHELP=1)
endif ()
endif ()
set(DUSK_HTTP_BACKEND_SOURCE src/dusk/http/no_backend.cpp)
if (DUSK_ENABLE_UPDATE_CHECKER)
list(APPEND GAME_COMPILE_DEFS DUSK_ENABLE_UPDATE_CHECKER=1)
if (WIN32)
set(DUSK_HTTP_BACKEND_SOURCE src/dusk/http/winhttp.cpp)
list(APPEND GAME_LIBS winhttp)
list(APPEND GAME_COMPILE_DEFS DUSK_HTTP_BACKEND_WINHTTP=1)
message(STATUS "dusklight: Enabled update checker (WinHTTP)")
elseif (ANDROID)
set(DUSK_HTTP_BACKEND_SOURCE src/dusk/http/android.cpp)
list(APPEND GAME_COMPILE_DEFS DUSK_HTTP_BACKEND_ANDROID=1)
message(STATUS "dusklight: Enabled update checker (Android)")
elseif (APPLE)
find_library(FOUNDATION_FRAMEWORK Foundation REQUIRED)
set(DUSK_HTTP_BACKEND_SOURCE src/dusk/http/url_session.mm)
set_source_files_properties(src/dusk/http/url_session.mm PROPERTIES COMPILE_FLAGS -fobjc-arc)
list(APPEND GAME_LIBS ${FOUNDATION_FRAMEWORK})
list(APPEND GAME_COMPILE_DEFS DUSK_HTTP_BACKEND_URLSESSION=1)
message(STATUS "dusklight: Enabled update checker (NSURLSession)")
elseif (CMAKE_SYSTEM_NAME STREQUAL Linux)
find_package(CURL QUIET OPTIONAL_COMPONENTS HTTPS SSL)
if (CURL_FOUND AND CURL_HTTPS_FOUND AND CURL_SSL_FOUND)
set(DUSK_HTTP_BACKEND_SOURCE src/dusk/http/curl.cpp)
list(APPEND GAME_LIBS CURL::libcurl)
list(APPEND GAME_COMPILE_DEFS DUSK_HTTP_BACKEND_LIBCURL=1)
message(STATUS "dusklight: Enabled update checker (libcurl)")
else ()
message(STATUS "dusklight: Disabled update checker (libcurl + HTTPS/SSL not found)")
endif ()
else ()
message(STATUS "dusklight: Disabled update checker (unsupported platform)")
endif ()
endif ()
list(APPEND DUSK_FILES ${DUSK_HTTP_BACKEND_SOURCE})
if (DUSK_MOVIE_SUPPORT)
if (TARGET libjpeg-turbo::turbojpeg-static)
list(APPEND GAME_LIBS libjpeg-turbo::turbojpeg-static)
@@ -319,62 +437,29 @@ if (DUSK_MOVIE_SUPPORT)
list(APPEND GAME_COMPILE_DEFS MOVIE_SUPPORT=1)
endif ()
option(DUSK_ENABLE_DISCORD_RPC "Enable Discord Rich Presence support" ON)
if (DUSK_ENABLE_DISCORD_RPC AND NOT ANDROID AND NOT IOS AND NOT TVOS)
FetchContent_Populate(discord_rpc
URL https://github.com/discord/discord-rpc/archive/refs/tags/v3.4.0.tar.gz
URL_HASH SHA256=e13427019027acd187352dacba6c65953af66fdf3c35fcf38fc40b454a9d7855
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
)
# RapidJSON is a git submodule absent from the discord-rpc tarball; fetch separately.
FetchContent_Populate(rapidjson
URL https://github.com/Tencent/rapidjson/archive/refs/tags/v1.1.0.tar.gz
URL_HASH SHA256=bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e
DOWNLOAD_EXTRACT_TIMESTAMP TRUE
)
if (NOT TARGET discord-rpc)
set(_drpc ${discord_rpc_SOURCE_DIR}/src)
set(_drpc_src
${_drpc}/discord_rpc.cpp
${_drpc}/rpc_connection.cpp
${_drpc}/serialization.cpp
)
if (WIN32)
list(APPEND _drpc_src ${_drpc}/connection_win.cpp ${_drpc}/discord_register_win.cpp)
elseif (APPLE)
list(APPEND _drpc_src ${_drpc}/connection_unix.cpp ${_drpc}/discord_register_osx.m)
else ()
list(APPEND _drpc_src ${_drpc}/connection_unix.cpp ${_drpc}/discord_register_linux.cpp)
endif ()
add_library(discord-rpc STATIC ${_drpc_src})
target_include_directories(discord-rpc PUBLIC
${discord_rpc_SOURCE_DIR}/include
${rapidjson_SOURCE_DIR}/include
)
if (UNIX)
target_link_libraries(discord-rpc PUBLIC pthread)
endif ()
endif ()
list(APPEND GAME_LIBS discord-rpc)
list(APPEND GAME_COMPILE_DEFS DUSK_DISCORD_RPC=1)
set(DUSK_ENABLE_DISCORD_DEFAULT ON)
if (DEFINED DUSK_ENABLE_DISCORD_RPC AND NOT DEFINED DUSK_ENABLE_DISCORD)
set(DUSK_ENABLE_DISCORD_DEFAULT ${DUSK_ENABLE_DISCORD_RPC})
endif ()
# Edit & Continue
if (MSVC)
if ("${CMAKE_MSVC_DEBUG_INFORMATION_FORMAT}" STREQUAL "" AND CMAKE_BUILD_TYPE STREQUAL "Debug")
set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "EditAndContinue")
endif ()
if (CMAKE_MSVC_DEBUG_INFORMATION_FORMAT STREQUAL "EditAndContinue")
add_link_options("/INCREMENTAL")
endif ()
option(DUSK_ENABLE_DISCORD "Enable Discord Rich Presence support" ${DUSK_ENABLE_DISCORD_DEFAULT})
if (DUSK_ENABLE_DISCORD AND NOT ANDROID AND NOT IOS AND NOT TVOS)
list(APPEND GAME_COMPILE_DEFS DUSK_DISCORD=1)
endif ()
if(ANDROID)
list(APPEND GAME_COMPILE_DEFS TARGET_ANDROID=1)
endif ()
if (DUSK_PACKAGE_INSTALL)
include(GNUInstallDirs)
list(APPEND GAME_COMPILE_DEFS DUSK_ASSET_DIR="${CMAKE_INSTALL_FULL_DATADIR}/dusklight/")
endif ()
if (DUSK_GFX_DEBUG_GROUPS)
list(APPEND GAME_COMPILE_DEFS DUSK_GFX_DEBUG_GROUPS=1)
target_compile_definitions(aurora_gx PRIVATE AURORA_GFX_DEBUG_GROUPS)
endif ()
# game_debug is for game code files that we know work when compiled with DEBUG=1
# Of course, if building a release build, this distinction is irrelevant
set(GAME_DEBUG_FILES
@@ -426,31 +511,44 @@ endif ()
set(DUSK_FILES src/dusk/main.cpp ${GAME_BASE_FILES} ${GAME_DEBUG_FILES})
if(ANDROID)
add_library(dusk SHARED ${DUSK_FILES})
set_target_properties(dusk PROPERTIES OUTPUT_NAME main)
add_library(dusklight SHARED ${DUSK_FILES})
set_target_properties(dusklight PROPERTIES OUTPUT_NAME main)
else ()
add_executable(dusk ${DUSK_FILES})
add_executable(dusklight ${DUSK_FILES})
endif ()
if (ENABLE_ASAN)
target_sources(dusklight PRIVATE src/dusk/asan_options.c)
endif ()
target_compile_definitions(dusk PRIVATE ${GAME_COMPILE_DEFS})
target_include_directories(dusk PRIVATE ${GAME_INCLUDE_DIRS})
target_link_libraries(dusk PRIVATE aurora::main ${GAME_LIBS} ${JSYSTEM_LINK_LIBRARIES})
target_precompile_headers(dusk PRIVATE "$<$<COMPILE_LANGUAGE:CXX>:${CMAKE_SOURCE_DIR}/include/dusk_pch.hpp>")
target_compile_definitions(dusklight PRIVATE ${GAME_COMPILE_DEFS})
target_include_directories(dusklight PRIVATE ${GAME_INCLUDE_DIRS})
target_link_libraries(dusklight PRIVATE aurora::main ${GAME_LIBS} ${JSYSTEM_LINK_LIBRARIES})
target_precompile_headers(dusklight PRIVATE "$<$<COMPILE_LANGUAGE:CXX>:${CMAKE_SOURCE_DIR}/include/dusk_pch.hpp>")
if (TARGET crashpad_handler)
add_dependencies(dusk crashpad_handler)
add_dependencies(dusklight crashpad_handler)
add_custom_command(TARGET dusklight POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"$<TARGET_FILE:crashpad_handler>"
"$<TARGET_FILE_DIR:dusklight>"
COMMENT "Copying crashpad handler"
)
endif ()
if (ANDROID)
# SDLActivity loads SDL_main via dlsym on Android. Since aurora::main is a static
# archive, force an undefined reference so the linker keeps the SDL_main object.
target_link_options(dusk PRIVATE "-Wl,-u,SDL_main")
target_link_options(dusklight PRIVATE "-Wl,-u,SDL_main")
endif ()
if (CMAKE_SYSTEM_NAME STREQUAL Linux)
target_link_options(dusklight PRIVATE "-Wl,--build-id=sha1")
endif ()
if (NOT APPLE)
add_custom_command(TARGET dusk POST_BUILD
add_custom_command(TARGET dusklight POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
"${CMAKE_SOURCE_DIR}/res"
"$<TARGET_FILE_DIR:dusk>/res"
"$<TARGET_FILE_DIR:dusklight>/res"
COMMENT "Copying resources"
)
endif ()
@@ -458,9 +556,9 @@ endif ()
if (WIN32)
set(DUSK_WINDOWS_RESOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/platforms/windows)
set(DUSK_WINDOWS_ICON_PNG ${CMAKE_CURRENT_SOURCE_DIR}/res/icon.png)
set(DUSK_WINDOWS_ICON_ICO ${CMAKE_CURRENT_BINARY_DIR}/dusk.ico)
set(DUSK_WINDOWS_RC ${CMAKE_CURRENT_BINARY_DIR}/dusk.rc)
set(DUSK_WINDOWS_MANIFEST ${CMAKE_CURRENT_BINARY_DIR}/dusk.manifest)
set(DUSK_WINDOWS_ICON_ICO ${CMAKE_CURRENT_BINARY_DIR}/dusklight.ico)
set(DUSK_WINDOWS_RC ${CMAKE_CURRENT_BINARY_DIR}/dusklight.rc)
set(DUSK_WINDOWS_MANIFEST ${CMAKE_CURRENT_BINARY_DIR}/dusklight.manifest)
add_custom_command(
OUTPUT ${DUSK_WINDOWS_ICON_ICO}
@@ -473,14 +571,14 @@ if (WIN32)
COMMENT "Generating Windows icon"
)
configure_file(${DUSK_WINDOWS_RESOURCE_DIR}/dusk.manifest.in ${DUSK_WINDOWS_MANIFEST} @ONLY)
configure_file(${DUSK_WINDOWS_RESOURCE_DIR}/dusk.rc.in ${DUSK_WINDOWS_RC} @ONLY)
configure_file(${DUSK_WINDOWS_RESOURCE_DIR}/dusklight.manifest.in ${DUSK_WINDOWS_MANIFEST} @ONLY)
configure_file(${DUSK_WINDOWS_RESOURCE_DIR}/dusklight.rc.in ${DUSK_WINDOWS_RC} @ONLY)
target_sources(dusk PRIVATE ${DUSK_WINDOWS_ICON_ICO} ${DUSK_WINDOWS_RC})
set_target_properties(dusk PROPERTIES WIN32_EXECUTABLE TRUE)
target_sources(dusklight PRIVATE ${DUSK_WINDOWS_ICON_ICO} ${DUSK_WINDOWS_RC})
set_target_properties(dusklight PROPERTIES WIN32_EXECUTABLE TRUE)
if (MSVC)
target_link_options(dusk PRIVATE /MANIFEST:NO)
target_link_options(dusklight PRIVATE /MANIFEST:NO)
endif ()
endif ()
@@ -496,10 +594,10 @@ if (APPLE)
file(GLOB_RECURSE DUSK_RESOURCE_FILES
"${DUSK_RESOURCE_DIR}/Assets.car"
"${DUSK_RESOURCE_DIR}/Base.lproj/*"
"${DUSK_RESOURCE_DIR}/Dusk.icns")
"${DUSK_RESOURCE_DIR}/Dusklight.icns")
file(GLOB_RECURSE DUSK_APP_RESOURCE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/res/*")
target_sources(dusk PRIVATE ${DUSK_RESOURCE_FILES})
target_sources(dusk PRIVATE ${DUSK_APP_RESOURCE_FILES})
target_sources(dusklight PRIVATE ${DUSK_RESOURCE_FILES})
target_sources(dusklight PRIVATE ${DUSK_APP_RESOURCE_FILES})
foreach (FILE ${DUSK_RESOURCE_FILES})
file(RELATIVE_PATH NEW_FILE "${DUSK_RESOURCE_DIR}" ${FILE})
get_filename_component(NEW_FILE_PATH ${NEW_FILE} DIRECTORY)
@@ -511,29 +609,36 @@ if (APPLE)
set_property(SOURCE ${FILE} PROPERTY MACOSX_PACKAGE_LOCATION "Resources/${NEW_FILE_PATH}")
endforeach ()
set_target_properties(
dusk PROPERTIES
dusklight PROPERTIES
MACOSX_BUNDLE TRUE
MACOSX_BUNDLE_BUNDLE_NAME ${DUSK_BUNDLE_NAME}
MACOSX_BUNDLE_GUI_IDENTIFIER ${DUSK_BUNDLE_IDENTIFIER}
MACOSX_BUNDLE_BUNDLE_VERSION ${DUSK_VERSION_STRING}
MACOSX_BUNDLE_SHORT_VERSION_STRING ${DUSK_SHORT_VERSION_STRING}
MACOSX_BUNDLE_INFO_PLIST ${DUSK_INFO_PLIST}
OUTPUT_NAME Dusk
OUTPUT_NAME Dusklight
XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "YES"
XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "YES"
)
endif ()
if (APPLE AND NOT IOS AND NOT TVOS)
find_library(APPKIT_FRAMEWORK AppKit REQUIRED)
target_sources(dusklight PRIVATE src/dusk/file_select_macos.mm)
set_source_files_properties(src/dusk/file_select_macos.mm PROPERTIES COMPILE_FLAGS -fobjc-arc)
target_link_libraries(dusklight PRIVATE ${APPKIT_FRAMEWORK})
endif ()
if (IOS)
find_library(UIKIT_FRAMEWORK UIKit REQUIRED)
find_library(UNIFORM_TYPE_IDENTIFIERS_FRAMEWORK UniformTypeIdentifiers REQUIRED)
target_sources(dusk PRIVATE src/dusk/ios/FileSelectDialog.m)
target_sources(dusklight PRIVATE src/dusk/ios/FileSelectDialog.m)
set_source_files_properties(src/dusk/ios/FileSelectDialog.m PROPERTIES COMPILE_FLAGS -fobjc-arc)
target_link_libraries(dusk PRIVATE ${UIKIT_FRAMEWORK} ${UNIFORM_TYPE_IDENTIFIERS_FRAMEWORK})
target_link_libraries(dusklight PRIVATE ${UIKIT_FRAMEWORK} ${UNIFORM_TYPE_IDENTIFIERS_FRAMEWORK})
endif ()
include(extern/aurora/cmake/AuroraCopyRuntimeDLLs.cmake)
aurora_copy_runtime_dlls(dusk)
aurora_copy_runtime_dlls(dusklight)
if (DUSK_SELECTED_OPT)
if (CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
@@ -571,17 +676,25 @@ function(get_target_prefix target result_var)
endif ()
endif ()
endfunction()
list(APPEND BINARY_TARGETS dusk)
list(APPEND BINARY_TARGETS dusklight)
set(EXTRA_TARGETS "")
if (TARGET crashpad_handler)
list(APPEND EXTRA_TARGETS crashpad_handler)
endif ()
install(TARGETS ${BINARY_TARGETS} ${EXTRA_TARGETS} DESTINATION ${CMAKE_INSTALL_PREFIX})
aurora_install_runtime_dlls(dusk ${CMAKE_INSTALL_PREFIX})
if (DUSK_PACKAGE_INSTALL)
install(TARGETS ${BINARY_TARGETS} ${EXTRA_TARGETS} DESTINATION ${CMAKE_INSTALL_BINDIR})
else()
install(TARGETS ${BINARY_TARGETS} ${EXTRA_TARGETS} DESTINATION ${CMAKE_INSTALL_PREFIX})
endif()
aurora_install_runtime_dlls(dusklight ${CMAKE_INSTALL_PREFIX})
if (NOT APPLE)
install(DIRECTORY ${CMAKE_SOURCE_DIR}/res DESTINATION ${CMAKE_INSTALL_PREFIX})
if (DUSK_PACKAGE_INSTALL)
install(DIRECTORY ${CMAKE_SOURCE_DIR}/res DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/dusklight)
else()
install(DIRECTORY ${CMAKE_SOURCE_DIR}/res DESTINATION ${CMAKE_INSTALL_PREFIX})
endif()
endif ()
if (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo)
if (CMAKE_BUILD_TYPE STREQUAL Debug OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo AND NOT DUSK_PACKAGE_INSTALL)
set(DEBUG_FILES_LIST "")
foreach (target IN LISTS BINARY_TARGETS EXTRA_TARGETS)
get_target_output_name(${target} output_name)
+166 -47
View File
@@ -19,7 +19,19 @@
"hidden": true,
"cacheVariables": {
"CMAKE_BUILD_TYPE": "RelWithDebInfo",
"CMAKE_MSVC_RUNTIME_LIBRARY": "MultiThreaded"
"CMAKE_MSVC_RUNTIME_LIBRARY": "MultiThreadedDLL"
}
},
{
"name": "release",
"hidden": true,
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_MSVC_RUNTIME_LIBRARY": "MultiThreadedDLL",
"CMAKE_INTERPROCEDURAL_OPTIMIZATION": {
"type": "BOOL",
"value": true
}
}
},
{
@@ -33,7 +45,21 @@
"value": true
},
"DUSK_SENTRY_DSN": "$env{SENTRY_DSN}",
"DUSK_SENTRY_ENVIRONMENT": "production"
"DUSK_SENTRY_ENVIRONMENT": "production",
"Rust_RUSTUP_INSTALL_MISSING_TARGET": {
"type": "BOOL",
"value": true
}
}
},
{
"name": "asan",
"hidden": true,
"cacheVariables": {
"ENABLE_ASAN": {
"type": "BOOL",
"value": true
}
}
},
{
@@ -42,6 +68,10 @@
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"BUILD_SHARED_LIBS": {
"type": "BOOL",
"value": false
},
"CMAKE_INSTALL_PREFIX": "${sourceDir}/build/install"
},
"vendor": {
@@ -63,6 +93,15 @@
"linux-default"
]
},
{
"name": "linux-default-debug-asan",
"displayName": "Linux (default) Debug ASan",
"inherits": [
"debug",
"linux-default",
"asan"
]
},
{
"name": "linux-default-relwithdebinfo",
"displayName": "Linux (default) RelWithDebInfo",
@@ -90,6 +129,15 @@
"linux-clang"
]
},
{
"name": "linux-clang-debug-asan",
"displayName": "Linux (Clang) Debug ASan",
"inherits": [
"debug",
"linux-clang",
"asan"
]
},
{
"name": "linux-clang-relwithdebinfo",
"displayName": "Linux (Clang) RelWithDebInfo",
@@ -128,6 +176,15 @@
"windows-msvc"
]
},
{
"name": "windows-msvc-debug-asan",
"displayName": "Windows (MSVC) Debug ASan",
"inherits": [
"debug",
"windows-msvc",
"asan"
]
},
{
"name": "windows-msvc-relwithdebinfo",
"displayName": "Windows (MSVC) RelWithDebInfo",
@@ -197,6 +254,10 @@
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
"BUILD_SHARED_LIBS": {
"type": "BOOL",
"value": false
},
"CMAKE_INSTALL_PREFIX": "${sourceDir}/build/install"
},
"vendor": {
@@ -215,6 +276,15 @@
"macos-default"
]
},
{
"name": "macos-default-debug-asan",
"displayName": "macOS (default) Debug ASan",
"inherits": [
"debug",
"macos-default",
"asan"
]
},
{
"name": "macos-default-relwithdebinfo",
"displayName": "macOS (default) RelWithDebInfo",
@@ -249,22 +319,11 @@
"type": "BOOL",
"value": false
},
"CMAKE_DISABLE_FIND_PACKAGE_BZip2": {
"CMAKE_DISABLE_FIND_PACKAGE_PkgConfig": {
"type": "BOOL",
"value": true
},
"CMAKE_DISABLE_FIND_PACKAGE_LibLZMA": {
"type": "BOOL",
"value": true
},
"CMAKE_DISABLE_FIND_PACKAGE_zstd": {
"type": "BOOL",
"value": true
},
"CMAKE_DISABLE_FIND_PACKAGE_Freetype": {
"type": "BOOL",
"value": true
}
"CMAKE_IGNORE_PREFIX_PATH": "/opt/homebrew"
},
"vendor": {
"microsoft.com/VisualStudioSettings/CMake/1.0": {
@@ -291,24 +350,21 @@
"type": "BOOL",
"value": false
},
"ENABLE_ARC": {
"type": "BOOL",
"value": false
},
"Rust_CARGO_TARGET": "aarch64-apple-tvos",
"Rust_TOOLCHAIN": "nightly",
"BUILD_SHARED_LIBS": {
"type": "BOOL",
"value": false
},
"CMAKE_DISABLE_FIND_PACKAGE_BZip2": {
"CMAKE_DISABLE_FIND_PACKAGE_PkgConfig": {
"type": "BOOL",
"value": true
},
"CMAKE_DISABLE_FIND_PACKAGE_LibLZMA": {
"type": "BOOL",
"value": true
},
"CMAKE_DISABLE_FIND_PACKAGE_zstd": {
"type": "BOOL",
"value": true
}
"CMAKE_IGNORE_PREFIX_PATH": "/opt/homebrew"
},
"vendor": {
"microsoft.com/VisualStudioSettings/CMake/1.0": {
@@ -329,7 +385,19 @@
"cacheVariables": {
"CMAKE_INSTALL_PREFIX": "${sourceDir}/build/install",
"CMAKE_TOOLCHAIN_FILE": "$env{ANDROID_HOME}/ndk/$env{ANDROID_NDK_VERSION}/build/cmake/android.toolchain.cmake",
"ANDROID_PLATFORM": "android-28"
"ANDROID_PLATFORM": "android-28",
"BUILD_SHARED_LIBS": {
"type": "BOOL",
"value": false
},
"CMAKE_DISABLE_FIND_PACKAGE_PkgConfig": {
"type": "BOOL",
"value": true
},
"CMAKE_DISABLE_FIND_PACKAGE_zstd": {
"type": "BOOL",
"value": true
}
}
},
{
@@ -352,6 +420,32 @@
"ANDROID_ABI": "x86_64"
}
},
{
"name": "x-android-ci",
"hidden": true,
"inherits": [
"android-base",
"ci",
"release"
],
"cacheVariables": {
"DUSK_ENABLE_SENTRY_NATIVE": {
"type": "BOOL",
"value": false
}
}
},
{
"name": "x-android-ci-arm64",
"binaryDir": "${sourceDir}/build/android-arm64",
"inherits": [
"x-android-ci"
],
"cacheVariables": {
"ANDROID_ABI": "arm64-v8a",
"Rust_CARGO_TARGET": "aarch64-linux-android"
}
},
{
"name": "x-linux-ci",
"hidden": true,
@@ -360,7 +454,8 @@
"ci"
],
"cacheVariables": {
"AURORA_SDL3_PROVIDER": "vendor"
"AURORA_SDL3_PROVIDER": "vendor",
"CMAKE_LINKER_TYPE": "MOLD"
}
},
{
@@ -389,12 +484,8 @@
"type": "BOOL",
"value": true
},
"CMAKE_OSX_DEPLOYMENT_TARGET": "11.0",
"CMAKE_IGNORE_PREFIX_PATH": "/opt/homebrew",
"DUSK_MOVIE_SUPPORT": {
"type": "BOOL",
"value": false
}
"CMAKE_OSX_DEPLOYMENT_TARGET": "12.0",
"CMAKE_IGNORE_PREFIX_PATH": "/opt/homebrew"
}
},
{
@@ -423,11 +514,7 @@
],
"cacheVariables": {
"CMAKE_C_COMPILER_LAUNCHER": "sccache",
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache",
"DUSK_MOVIE_SUPPORT": {
"type": "BOOL",
"value": false
}
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache"
}
},
{
@@ -437,11 +524,7 @@
],
"cacheVariables": {
"CMAKE_C_COMPILER_LAUNCHER": "sccache",
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache",
"DUSK_MOVIE_SUPPORT": {
"type": "BOOL",
"value": false
}
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache"
}
},
{
@@ -479,7 +562,10 @@
"inherits": [
"x-windows-ci",
"windows-arm64-msvc"
]
],
"cacheVariables": {
"VCPKG_TARGET_TRIPLET": "arm64-windows"
}
}
],
"buildPresets": [
@@ -489,6 +575,12 @@
"description": "Linux (default) debug build",
"displayName": "Linux (default) Debug"
},
{
"name": "linux-default-debug-asan",
"configurePreset": "linux-default-debug-asan",
"description": "Linux (default) debug build with AddressSanitizer",
"displayName": "Linux (default) Debug ASan"
},
{
"name": "linux-default-relwithdebinfo",
"configurePreset": "linux-default-relwithdebinfo",
@@ -501,6 +593,12 @@
"description": "Linux (Clang) debug build",
"displayName": "Linux (Clang) Debug"
},
{
"name": "linux-clang-debug-asan",
"configurePreset": "linux-clang-debug-asan",
"description": "Linux (Clang) debug build with AddressSanitizer",
"displayName": "Linux (Clang) Debug ASan"
},
{
"name": "linux-clang-relwithdebinfo",
"configurePreset": "linux-clang-relwithdebinfo",
@@ -513,6 +611,12 @@
"description": "macOS debug build",
"displayName": "macOS Debug"
},
{
"name": "macos-default-debug-asan",
"configurePreset": "macos-default-debug-asan",
"description": "macOS debug build with AddressSanitizer",
"displayName": "macOS Debug ASan"
},
{
"name": "macos-default-relwithdebinfo",
"configurePreset": "macos-default-relwithdebinfo",
@@ -525,7 +629,7 @@
"description": "iOS release build with debug info",
"displayName": "iOS RelWithDebInfo",
"targets": [
"dusk"
"dusklight"
]
},
{
@@ -534,7 +638,7 @@
"description": "tvOS release build with debug info",
"displayName": "tvOS RelWithDebInfo",
"targets": [
"dusk"
"dusklight"
]
},
{
@@ -543,7 +647,7 @@
"description": "Android arm64-v8a release build with debug info",
"displayName": "Android arm64-v8a RelWithDebInfo",
"targets": [
"dusk"
"dusklight"
]
},
{
@@ -552,7 +656,16 @@
"description": "Android x86_64 release build with debug info",
"displayName": "Android x86_64 RelWithDebInfo",
"targets": [
"dusk"
"dusklight"
]
},
{
"name": "x-android-ci-arm64",
"configurePreset": "x-android-ci-arm64",
"description": "(Internal) Android CI arm64-v8a",
"displayName": "(Internal) Android CI arm64-v8a",
"targets": [
"dusklight"
]
},
{
@@ -561,6 +674,12 @@
"description": "Windows (MSVC) debug build",
"displayName": "Windows (MSVC) Debug"
},
{
"name": "windows-msvc-debug-asan",
"configurePreset": "windows-msvc-debug-asan",
"description": "Windows (MSVC) debug build with AddressSanitizer",
"displayName": "Windows (MSVC) Debug ASan"
},
{
"name": "windows-msvc-relwithdebinfo",
"configurePreset": "windows-msvc-relwithdebinfo",
+47 -20
View File
@@ -1,37 +1,64 @@
![DuskLogo](res/logo-mascot.webp)
<div align="center">
<img src="res/logo.png" alt="Logo" width="640">
- ### **[Official Website](https://twilitrealm.dev)**
- ### **[Discord](https://discord.gg/QACynxeyna)**
<p align="center">
<a href="https://twilitrealm.dev">Official Website</a>
<a href="https://discord.gg/6NpMhefCK9">Discord</a>
</p>
</div>
# Overview
Dusk is a reverse-engineered reimplementation of Twilight Princess.
Dusklight is a reverse-engineered reimplementation of Twilight Princess.
It aims to be as accurate as possible to the original while also providing new options, enhancements, and tools to customize your experience.
# Setup
**⚠️ Dusk does NOT provide any copyrighted assets. You must provide your own copy of the game.**
### 1. Verify your ROM dump
First make sure your dump of the game is clean and supported by Dusk. You can do this by checking the sha1 hash of your dump against this list of supported versions.
> [!IMPORTANT]
> Dusklight does *not* provide any copyrighted assets. You must provide your own copy of the original game.
| Version | sha1 hash |
|--------------| ---------------------------------------- |
| GameCube USA | 75edd3ddff41f125d1b4ce1a40378f1b565519e7 |
| GameCube PAL | 2601822a488eeb86fb89db16ca8f29c2c953e1ca |
> [!IMPORTANT]
> At a minimum, Dusklight requires a GPU with support for either D3D12, Vulkan, or Metal. Your experience with specific hardware, operating systems, and drivers may vary. In particular, older Intel iGPUs have a high likelihood of incompatibility. We are also aware of a number of issues on devices with Adreno GPUs and are working to resolve them.
### 2. Download [Dusk](https://github.com/TwilitRealm/dusk/releases)
### 1. Dump your game
You must dump your own copy of the game, please see [this article](https://wiki.dolphin-emu.org/index.php?title=Ripping_Games) for instructions. After dumping, you can use a program like [Dolphin](https://dolphin-emu.org/) or [nodtool](https://github.com/encounter/nod/releases) to convert the `.iso` to a `.rvz` to save space.
Currently, only the GameCube USA and EUR releases are supported. Support for other versions of the game is planned in the future.
### 2. Download [Dusklight](https://github.com/TwilitRealm/dusklight/releases)
### 3. Setup the game
- Extract the zip folder
- Launch Dusk
- Select Options, then set the ISO Path to your supported game dump
- Press Start Game to play!
**Windows / macOS / Linux**
- Extract the .zip file
- Launch Dusklight
- Press **Select Disc Image** and provide the path to your supported game dump
- Press **Play**!
![Dusk options](assets/dusk_options.png)
**iOS**
- Follow the [iOS setup guide](docs/ios-install-altstore.md)
**Android**
- Install the Dusklight APK
- Launch Dusklight
- Press **Select Disc Image** and provide the path to your supported game dump
- Press **Play**!
# Building
If you'd like to build Dusk from source, please read the [build instructions](docs/building.md).
Pull Requests are welcomed! Note that we do not accept contributions that are primarily AI generated and will close your PR if we suspect as much.
If you'd like to build Dusklight from source, please read the [build instructions](docs/building.md).
Pull requests are welcomed! Note that we do not accept contributions that are primarily AI-generated and will close your PR if we suspect as much. Please also see the [code conventions](docs/code-conventions.md).
# Credits
Special thanks to the [TP decompilation](https://github.com/zeldaret/tp) team, the GC/Wii decompilation community, the [Aurora](https://github.com/encounter/aurora) developers, the [TP speedrunning community](https://zsrtp.link), and all [contributors](https://github.com/TwilitRealm/dusk/graphs/contributors).
Special thanks to the [TP decompilation](https://github.com/zeldaret/tp) team, the GC/Wii decompilation community, the [Aurora](https://github.com/encounter/aurora) developers, the [TP speedrunning community](https://zsrtp.link), and all [contributors](https://github.com/TwilitRealm/dusklight/graphs/contributors).
<br/>
<div align="center">
<a href="https://github.com/encounter/aurora">
<img src="assets/aurora-powered.png" alt="Powered by Aurora" width="800">
</a>
</div>
Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

+66
View File
@@ -0,0 +1,66 @@
<svg width="600" height="600" viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<circle cx="150" cy="150" r="105" fill="none" stroke="white" stroke-width="4"/>
<circle cx="150" cy="150" r="95" fill="none" stroke="white" stroke-width="4"/>
<circle cx="150" cy="150" r="60" fill="none" stroke="white" stroke-width="4"/>
<circle cx="150" cy="150" r="75" fill="none" stroke="white" stroke-width="4"/>
<defs>
<line id="ray" x1="150" y1="55" x2="150" y2="45"/>
<clipPath id="zigzag-clip">
<circle cx="150" cy="150" r="75"/>
</clipPath>
</defs>
<g stroke="white" stroke-width="3">
<use href="#ray"/>
<use href="#ray" transform="rotate(18 150 150)"/>
<use href="#ray" transform="rotate(36 150 150)"/>
<use href="#ray" transform="rotate(54 150 150)"/>
<use href="#ray" transform="rotate(72 150 150)"/>
<use href="#ray" transform="rotate(90 150 150)"/>
<use href="#ray" transform="rotate(108 150 150)"/>
<use href="#ray" transform="rotate(126 150 150)"/>
<use href="#ray" transform="rotate(144 150 150)"/>
<use href="#ray" transform="rotate(162 150 150)"/>
<use href="#ray" transform="rotate(180 150 150)"/>
<use href="#ray" transform="rotate(198 150 150)"/>
<use href="#ray" transform="rotate(216 150 150)"/>
<use href="#ray" transform="rotate(234 150 150)"/>
<use href="#ray" transform="rotate(252 150 150)"/>
<use href="#ray" transform="rotate(270 150 150)"/>
<use href="#ray" transform="rotate(288 150 150)"/>
<use href="#ray" transform="rotate(306 150 150)"/>
<use href="#ray" transform="rotate(324 150 150)"/>
<use href="#ray" transform="rotate(342 150 150)"/>
</g>
<polygon fill="none" stroke="white" stroke-width="4" opacity="1" clip-path="url(#zigzag-clip)"
points="
126.82,78.67
150,90
173.18,78.67
185.27,101.46
210.68,105.92
207.06,131.46
225,150
207.06,168.54
210.68,194.08
185.27,198.54
173.18,221.33
150,210
126.82,221.33
114.73,198.54
89.32,194.08
92.94,168.54
75,150
92.94,131.46
89.32,105.92
114.73,101.46
"/>
<g fill="none" stroke="white" stroke-width="4">
<polygon points="150,105 130,140 170,140"/>
<polygon points="130,140 110,175 150,175"/>
<polygon points="170,140 150,175 190,175"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

+18 -9
View File
@@ -1,18 +1,27 @@
#!/bin/bash -ex
shopt -s extglob
if [[ -n "${GITHUB_WORKSPACE:-}" ]]; then
cd "$GITHUB_WORKSPACE"
fi
build_dir="$PWD/build"
linuxdeploy="$build_dir/linuxdeploy-$(uname -m).AppImage"
lib_dir="/usr/lib/$(uname -m)-linux-gnu"
# Get linuxdeploy
cd "$RUNNER_WORKSPACE"
curl -fOL https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-$(uname -m).AppImage
chmod +x linuxdeploy-$(uname -m).AppImage
mkdir -p "$build_dir"
curl -fL "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-$(uname -m).AppImage" -o "$linuxdeploy"
chmod +x "$linuxdeploy"
# Build AppImage
cd "$GITHUB_WORKSPACE"
mkdir -p build/appdir/usr/{bin,share/{applications,icons/hicolor}}
cp -r build/install/!(*.*) build/appdir/usr/bin
for install_path in build/install/*; do
[[ "$(basename "$install_path")" == *.* ]] && continue
cp -r "$install_path" build/appdir/usr/bin
done
cp -r platforms/freedesktop/{16x16,32x32,48x48,64x64,128x128,256x256,512x512,1024x1024} build/appdir/usr/share/icons/hicolor
cp platforms/freedesktop/dusk.desktop build/appdir/usr/share/applications
cp platforms/freedesktop/dev.twilitrealm.dusk.desktop build/appdir/usr/share/applications
cd build/install
VERSION="$DUSK_VERSION" NO_STRIP=1 "$RUNNER_WORKSPACE"/linuxdeploy-$(uname -m).AppImage \
-l /usr/lib/x86_64-linux-gnu/libusb-1.0.so --appdir "$GITHUB_WORKSPACE"/build/appdir --output appimage
VERSION="$DUSK_VERSION" NO_STRIP=1 "$linuxdeploy" \
-l "$lib_dir/libusb-1.0.so" --appdir "$build_dir/appdir" --output appimage
+9
View File
@@ -0,0 +1,9 @@
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
if (CMAKE_C_COMPILER_ARCHITECTURE_ID STREQUAL "ARM64" OR CMAKE_C_COMPILER_ARCHITECTURE_ID STREQUAL "ARM64EC")
set(CMAKE_SYSTEM_PROCESSOR "ARM64")
elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID STREQUAL "x64")
set(CMAKE_SYSTEM_PROCESSOR "AMD64")
elseif (CMAKE_C_COMPILER_ARCHITECTURE_ID STREQUAL "X86")
set(CMAKE_SYSTEM_PROCESSOR "X86")
endif ()
endif ()
+187 -53
View File
@@ -1,50 +1,164 @@
### Building
#### Prerequisites
# Building Dusklight
## Dependencies
The following dependencies are required:
* [CMake 3.25+](https://cmake.org)
* Windows: Install `CMake Tools` in Visual Studio
* macOS: `brew install cmake`
* [Python 3+](https://python.org)
* Windows: [Microsoft Store](https://go.microsoft.com/fwlink?linkID=2082640)
* Verify it's added to `%PATH%` by typing `python` in `cmd`.
* macOS: `brew install python@3`
* **[Windows]** [Visual Studio 2026 Community](https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx)
* Select `C++ Development` and verify the following packages are included:
* `Windows 11 SDK`
* `CMake Tools`
* `C++ Clang Compiler`
* `C++ Clang-cl`
* **[macOS]** [Xcode 16.4+](https://developer.apple.com/xcode/download/)
* **[Linux]** Actively tested on Ubuntu 24.04, Arch Linux & derivatives.
* Ubuntu 24.04+ packages
```
build-essential curl git ninja-build clang lld zlib1g-dev libcurl4-openssl-dev \
libglu1-mesa-dev libdbus-1-dev libvulkan-dev libxi-dev libxrandr-dev libasound2-dev libpulse-dev \
libudev-dev libpng-dev libncurses5-dev cmake libx11-xcb-dev python3 python-is-python3 \
libclang-dev libfreetype-dev libxinerama-dev libxcursor-dev python3-markupsafe libgtk-3-dev \
libxss-dev libxtst-dev
```
* Arch Linux packages
```
base-devel cmake ninja llvm vulkan-headers python python-markupsafe clang lld alsa-lib libpulse libxrandr freetype2
```
* Fedora packages
```
cmake vulkan-headers ninja-build clang-devel llvm-devel libpng-devel
```
* It's also important that you install the developer tools and libraries
```
sudo dnf groupinstall "Development Tools" "Development Libraries"
```
#### Setup
Clone and initialize the Dusk repository
### Windows
* Install [CMake 3.25+](https://cmake.org) by searching `CMake Tools` in Visual Studio
* Install Python 3 from the [Microsoft Store](https://go.microsoft.com/fwlink?linkID=2082640) and verify it's added to `%PATH%` by typing `python` in `cmd`.
Recommended IDEs:
* [Visual Studio 2026 Community](https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx). During installation:
* Select `C++ Development` and verify the following packages are included:
* `Windows 11 SDK`
* `CMake Tools`
* `C++ Clang Compiler`
* `C++ Clang-cl`
### macOS
* Make sure [Homebrew](https://brew.sh) is installed
* Install [CMake 3.25+](https://cmake.org)
```sh
git clone --recursive https://github.com/TwilitRealm/dusk.git
cd dusk
git pull
git submodule update --init --recursive
brew install cmake
```
#### Building
* Install Python 3
```sh
brew install python@3
```
Recommended IDEs:
* [Xcode 16.4 or later](https://developer.apple.com/xcode/)
* [Visual Studio Code](https://code.visualstudio.com/download/)
* [CLion](https://www.jetbrains.com/clion/)
### Linux
Actively tested on Ubuntu 24.04, Arch Linux & derivatives.
**Ubuntu 24.04+ packages**
<details>
<summary>Click to expand</summary>
* Run the following command to install the required dependencies:
```sh
sudo apt update && sudo apt install -y \
build-essential \
clang \
cmake \
curl \
git \
libasound2-dev \
libclang-dev \
libcurl4-openssl-dev \
libdbus-1-dev \
libfreetype-dev \
libglu1-mesa-dev \
libgtk-3-dev \
libncurses5-dev \
libpng-dev \
libpulse-dev \
libudev-dev \
libvulkan-dev \
libx11-xcb-dev \
libxcursor-dev \
libxi-dev \
libxinerama-dev \
libxrandr-dev \
libxss-dev \
libxtst-dev \
lld \
ninja-build \
python-is-python3 \
python3 \
python3-markupsafe \
zlib1g-dev
```
</details>
<br>
**Arch Linux packages**
<details>
<summary>Click to expand</summary>
* Run the following command to install the required dependencies:
```sh
sudo pacman -S --needed \
alsa-lib \
base-devel \
clang \
cmake \
freetype2 \
libpulse \
libxrandr \
lld \
llvm \
ninja \
python \
python-markupsafe \
vulkan-headers
```
</details>
<br>
**Fedora packages**
<details>
<summary>Click to expand</summary>
* Run the following command to install the required dependencies:
```sh
sudo dnf install -y \
clang-devel \
cmake \
libpng-devel \
llvm-devel \
ninja-build \
vulkan-headers
```
* It's also important that you install the developer tools and libraries
```sh
sudo dnf groupinstall \
"Development Libraries" "Development Tools"
```
</details>
<br>
Recommended IDEs:
* [CLion](https://www.jetbrains.com/clion/)
* [Visual Studio Code](https://code.visualstudio.com/download/)
## Building
* Clone and initialize the Dusklight repository:
```sh
git clone --recursive https://github.com/TwilitRealm/dusklight.git
git pull
cd dusklight
git submodule update --init --recursive
```
**CLion (Windows / macOS / Linux)**
@@ -64,7 +178,9 @@ cmake --build --preset macos-default-relwithdebinfo
```
Alternate presets available:
- `macos-default-debug`: Clang, Debug
* `macos-default-debug`: Clang, Debug
* `macos-default-debug-asan`: Clang, Debug, AddressSanitizer
**ninja (Linux)**
@@ -74,9 +190,12 @@ cmake --build --preset linux-default-relwithdebinfo
```
Alternate presets available:
- `linux-default-debug`: GCC, Debug
- `linux-clang-relwithdebinfo`: Clang, RelWithDebInfo
- `linux-clang-debug`: Clang, Debug
* `linux-default-debug`: GCC, Debug
* `linux-default-debug-asan`: GCC, Debug, AddressSanitizer
* `linux-clang-relwithdebinfo`: Clang, RelWithDebInfo
* `linux-clang-debug`: Clang, Debug
* `linux-clang-debug-asan`: Clang, Debug, AddressSanitizer
**ninja (Windows)**
@@ -86,13 +205,28 @@ cmake --build --preset windows-msvc-relwithdebinfo
```
Alternate presets available:
- `windows-msvc-debug`: MSVC, Debug
- `windows-clang-relwithdebinfo`: Clang-cl, RelWithDebInfo
- `windows-clang-debug`: Clang-cl, Debug
#### Running
Pass the disc image as a positional argument. Supported formats: ISO (GCM), RVZ, WIA, WBFS, CISO, GCZ
* `windows-msvc-debug`: MSVC, Debug
* `windows-msvc-debug-asan`: MSVC, Debug, AddressSanitizer
* `windows-clang-relwithdebinfo`: Clang-cl, RelWithDebInfo
* `windows-clang-debug`: Clang-cl, Debug
## Running
**Windows / Linux**
* Pass the disc image as a positional argument using the `--dvd` flag. Supported formats are: ISO (GCM), RVZ, WIA, WBFS, CISO, GCZ
```sh
build/{preset}/dusk /path/to/game.rvz
build/{preset}/dusklight --dvd /path/to/game.iso
```
**macOS**
macOS builds an `.app` bundle which contains the executable and all necessary resources.
* Pass the disc image as a positional argument using the `--dvd` flag. Supported formats are: ISO (GCM), RVZ, WIA, WBFS, CISO, GCZ
```sh
build/{preset}/Dusklight.app/Contents/MacOS/Dusklight --dvd /path/to/game.iso
```
If no path is specified, Dusk defaults to `game.iso` in the current working directory.
+13
View File
@@ -0,0 +1,13 @@
# Code conventions for Dusk
## Upstream when appropriate
Bug fixes, documentation improvements, code cleanup, etc that also apply to the [original decompilation project](https://github.com/zeldaret/tp) should preferably be PR'd there.
## Properly indicate Dusk-modified code
When modifying original game code (i.e. in decomp) for Dusk's purposes, please clearly delineate such code as being Dusk-specific. Generally, this can be done by using `#if TARGET_PC` and keeping the original code in place. Use `#if AVOID_UB` for Undefined Behavior fixes to the original codebase.
## Miscellaneous things
* The original codebase makes heavy use of global `operator new` and similar overloads to allocate into a strict tree of heaps. This would cause many linkage headaches for us, so effectively all uses of `new` or `delete` in the original game code have been replaced with `JKR_NEW`, `JKR_DELETE`, or similar macros. See `JKRHeap.h` for the full list.
+48
View File
@@ -0,0 +1,48 @@
# Installing Dusklight on iOS via iloader
## Prerequisites
- A Windows, Linux, or macOS device
- iOS device connected to computer via USB
- Dusklight IPA file (download the latest `Dusklight-vX.X.X-ios-arm64.ipa` from the [releases page](https://github.com/TwilitRealm/dusklight/releases))
- Legally acquired game disc - `GZ2E01` (Gamecube USA) or `GZ2PE01` (Gamecube PAL)
## 1. Install iloader
- Executable bundles can be installed from [iloader's main page](https://iloader.app/) or [their GitHub](https://github.com/nab138/iloader) for Windows, Linux, and macOS.
- Windows WILL require iTunes to be installed
- Linux WILL require usbmuxd to be installed, this is installed by default in most distros though
## 2. Enable Developer Mode (iOS 16+)
- On your iPhone, go to **Settings > Privacy & Security > Developer Mode**
- Toggle it on, put in your device passcode, and restart when prompted
## 3. Install Dusklight on Your iPhone
1. Sign into your Apple ID (this is required for registering app IDs, it is sent securely directly to Apple and not stored by iloader)
* You may be prompted to put in a code from your iOS device if you have 2FA enabled, do so
2. Plug in your iOS device via USB into your PC. If you're missing a dependency, an error pop-up will tell you to install it
* You will need to hit `Refresh` after plugging it in at this stage so that it can be detected, it does not automatically refresh
3. Leave settings unchanged (the Anisette server should stay Sidestore (.io))
3.(a) Installing SideStore directly is not required, but provides you a way to install Dusklight on your phone without being plugged into a computer later
4. Press `Import IPA` and choose your downloaded `Dusklight-v.X.X.X-ios-arm64.ipa`, it will begin installing on your device
**NOTE:** *At various stages, you may be prompted to trust your device, do so*
## 3. Getting Dusklight trusted
When installing sideloaded iOS applications, at first you will need to manually trust the app due to Apple's security policies
* Go to **Settings > General > VPN & Device Management**
* Tap the Apple ID you signed into iloader with under "Developer App" and tap **Trust**
* Tap **Allow** on the pop-up
## 4. Copy Files to Your iPhone
Transfer the game disc (and optionally, the Dusklight IPA) to your iPhone so they are accessible in the Files app. A few ways to do this:
- **AirDrop** - Right-click the files on your Mac and choose Share > AirDrop
- **iCloud Drive** - Place files in iCloud Drive on your Mac and they'll sync to Files on your iPhone
- **USB transfer** - Connect your iPhone and drag files via Finder's sidebar
- **Cloud storage** - Upload to Google Drive, Dropbox, etc. and download on your iPhone
You may now use Dusklight on iOS and iPadOS!
+1 -1
+77 -11
View File
@@ -1,7 +1,7 @@
set(DOLZEL_FILES
src/m_Do/m_Do_main.cpp
src/m_Do/m_Do_printf.cpp
#src/m_Do/m_Do_printf.cpp
src/m_Do/m_Do_audio.cpp
src/m_Do/m_Do_controller_pad.cpp
#src/m_Do/m_Re_controller_pad.cpp
@@ -1411,6 +1411,7 @@ set(DOLPHIN_FILES
)
set(DUSK_FILES
include/dusk/action_bindings.h
include/dusk/endian_gx.hpp
include/dusk/config.hpp
include/dusk/dvd_asset.hpp
@@ -1419,7 +1420,10 @@ set(DUSK_FILES
src/d/actor/d_a_alink_dusk.cpp
src/dusk/asserts.cpp
src/dusk/config.cpp
src/dusk/crash_handler.cpp
src/dusk/crash_reporting.cpp
src/dusk/data.cpp
src/dusk/data.hpp
src/dusk/endian.cpp
src/dusk/extras.c
src/dusk/file_select.cpp
@@ -1428,47 +1432,109 @@ set(DUSK_FILES
src/dusk/game_clock.cpp
src/dusk/globals.cpp
src/dusk/gyro.cpp
src/dusk/mouse.cpp
src/dusk/gamepad_color.cpp
src/dusk/autosave.cpp
src/dusk/http/http.hpp
src/dusk/io.cpp
src/dusk/layout.cpp
src/dusk/logging.cpp
src/dusk/settings.cpp
src/dusk/speedrun.cpp
src/dusk/string.cpp
src/dusk/stubs.cpp
include/dusk/texture_replacements.hpp
src/dusk/texture_replacements.cpp
src/dusk/update_check.cpp
src/dusk/update_check.hpp
#src/dusk/m_Do_ext_dusk.cpp
src/dusk/imgui/ImGuiConfig.hpp
src/dusk/imgui/ImGuiConsole.hpp
src/dusk/imgui/ImGuiConsole.cpp
src/dusk/imgui/ImGuiEngine.cpp
src/dusk/imgui/ImGuiEngine.hpp
src/dusk/imgui/ImGuiMenuGame.cpp
src/dusk/imgui/ImGuiMenuGame.hpp
src/dusk/imgui/ImGuiBloomWindow.cpp
src/dusk/imgui/ImGuiBloomWindow.hpp
src/dusk/imgui/ImGuiMenuTools.cpp
src/dusk/imgui/ImGuiMenuTools.hpp
src/dusk/imgui/ImGuiPreLaunchWindow.cpp
src/dusk/imgui/ImGuiPreLaunchWindow.hpp
src/dusk/imgui/ImGuiFirstRunPreset.hpp
src/dusk/imgui/ImGuiFirstRunPreset.cpp
src/dusk/imgui/ImGuiActorSpawner.cpp
src/dusk/imgui/ImGuiProcessOverlay.cpp
src/dusk/imgui/ImGuiCameraOverlay.cpp
src/dusk/imgui/ImGuiHeapOverlay.cpp
src/dusk/imgui/ImGuiDebugPad.cpp
src/dusk/imgui/ImGuiControllerOverlay.cpp
src/dusk/imgui/ImGuiStubLog.cpp
src/dusk/imgui/ImGuiMapLoader.cpp
src/dusk/imgui/ImGuiSaveEditor.cpp
src/dusk/imgui/ImGuiStateShare.hpp
src/dusk/imgui/ImGuiStateShare.cpp
src/dusk/imgui/ImGuiAchievements.hpp
src/dusk/imgui/ImGuiAchievements.cpp
src/dusk/ui/achievements.cpp
src/dusk/ui/achievements.hpp
src/dusk/ui/bool_button.cpp
src/dusk/ui/bool_button.hpp
src/dusk/ui/button.cpp
src/dusk/ui/button.hpp
src/dusk/ui/component.cpp
src/dusk/ui/component.hpp
src/dusk/ui/controller_config.cpp
src/dusk/ui/controller_config.hpp
src/dusk/ui/document.cpp
src/dusk/ui/document.hpp
src/dusk/ui/editor.cpp
src/dusk/ui/editor.hpp
src/dusk/ui/event.cpp
src/dusk/ui/event.hpp
src/dusk/ui/graphics_tuner.cpp
src/dusk/ui/graphics_tuner.hpp
src/dusk/ui/input.cpp
src/dusk/ui/input.hpp
src/dusk/ui/modal.cpp
src/dusk/ui/modal.hpp
src/dusk/ui/nav_types.hpp
src/dusk/ui/number_button.cpp
src/dusk/ui/number_button.hpp
src/dusk/ui/overlay.cpp
src/dusk/ui/overlay.hpp
src/dusk/ui/pane.cpp
src/dusk/ui/pane.hpp
src/dusk/ui/menu_bar.cpp
src/dusk/ui/menu_bar.hpp
src/dusk/ui/prelaunch.cpp
src/dusk/ui/prelaunch.hpp
src/dusk/ui/preset.cpp
src/dusk/ui/preset.hpp
src/dusk/ui/reporting.cpp
src/dusk/ui/reporting.hpp
src/dusk/ui/select_button.cpp
src/dusk/ui/select_button.hpp
src/dusk/ui/settings.cpp
src/dusk/ui/settings.hpp
src/dusk/ui/string_button.cpp
src/dusk/ui/string_button.hpp
src/dusk/ui/tab_bar.cpp
src/dusk/ui/tab_bar.hpp
src/dusk/ui/ui.cpp
src/dusk/ui/ui.hpp
src/dusk/ui/warp.cpp
src/dusk/ui/warp.hpp
src/dusk/ui/window.cpp
src/dusk/ui/window.hpp
src/dusk/achievements.cpp
src/dusk/iso_validate.cpp
src/dusk/livesplit.cpp
src/dusk/offset_ptr.cpp
src/dusk/OSContext.cpp
src/dusk/OSReport.cpp
src/dusk/OSThread.cpp
src/dusk/OSMutex.cpp
src/dusk/discord.cpp
src/dusk/discord.hpp
src/dusk/discord_presence.cpp
src/dusk/version.cpp
src/dusk/action_bindings.cpp
)
set(DUSK_HTTP_BACKEND_FILES
src/dusk/http/no_backend.cpp
src/dusk/http/curl.cpp
src/dusk/http/winhttp.cpp
src/dusk/http/url_session.mm
)
+32
View File
@@ -0,0 +1,32 @@
From f69d29614644f9963f5cb3f828b58575d60a1c5a Mon Sep 17 00:00:00 2001
From: Joshua Trees <gh@jtrees.io>
Date: Thu, 4 Jun 2026 01:04:04 +0100
Subject: [PATCH] fix cmake paths
---
cmake/nodConfig.cmake.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/cmake/nodConfig.cmake.in b/cmake/nodConfig.cmake.in
index 0969382..2a24a88 100644
--- a/cmake/nodConfig.cmake.in
+++ b/cmake/nodConfig.cmake.in
@@ -1,12 +1,12 @@
@PACKAGE_INIT@
-set(_nod_libdir "${PACKAGE_PREFIX_DIR}/@CMAKE_INSTALL_LIBDIR@")
-set(_nod_incdir "${PACKAGE_PREFIX_DIR}/@CMAKE_INSTALL_INCLUDEDIR@")
+set(_nod_libdir "@CMAKE_INSTALL_FULL_LIBDIR@")
+set(_nod_incdir "@CMAKE_INSTALL_FULL_INCLUDEDIR@")
if (NOT TARGET nod::nod_shared AND NOT TARGET nod::nod_static)
# Shared library
if (WIN32)
- set(_nod_dll "${PACKAGE_PREFIX_DIR}/@CMAKE_INSTALL_BINDIR@/${CMAKE_SHARED_LIBRARY_PREFIX}nod${CMAKE_SHARED_LIBRARY_SUFFIX}")
+ set(_nod_dll "@CMAKE_INSTALL_FULL_BINDIR@/${CMAKE_SHARED_LIBRARY_PREFIX}nod${CMAKE_SHARED_LIBRARY_SUFFIX}")
set(_nod_implib "${_nod_libdir}/${CMAKE_IMPORT_LIBRARY_PREFIX}nod${CMAKE_IMPORT_LIBRARY_SUFFIX}")
if (EXISTS "${_nod_dll}")
add_library(nod::nod_shared SHARED IMPORTED)
--
2.53.0
Generated
+3 -3
View File
@@ -2,11 +2,11 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1775710090,
"narHash": "sha256-ar3rofg+awPB8QXDaFJhJ2jJhu+KqN/PRCXeyuXR76E=",
"lastModified": 1778869304,
"narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "4c1018dae018162ec878d42fec712642d214fdfa",
"rev": "d233902339c02a9c334e7e593de68855ad26c4cb",
"type": "github"
},
"original": {
+381 -28
View File
@@ -1,33 +1,386 @@
{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
};
outputs = { self, nixpkgs }:
description = "Dusklight native PC port of the Twilight Princess decompilation";
inputs.nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
outputs =
{ self, nixpkgs }:
let
pkgs = import nixpkgs { system = "x86_64-linux"; };
dusk = pkgs.stdenv.mkDerivation {
name = "dusk";
src = ./.;
nativeBuildInputs = [
pkgs.cmake
pkgs.pkg-config
pkgs.wayland
];
buildInputs = [
pkgs.libGL
pkgs.libX11
pkgs.libXcursor
pkgs.libxi
pkgs.libxcb
pkgs.libxrandr
pkgs.libxscrnsaver
pkgs.libxtst
pkgs.libjpeg8
pkgs.libxkbcommon
pkgs.libglvnd
];
inherit (nixpkgs) lib;
supportedSystems = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
forAllSystems = lib.genAttrs supportedSystems;
dawnVersion = "v20260423.175430";
nodVersion = "v2.0.0-alpha.8";
versionSuffix = "nix-" + (self.shortRev or self.dirtyShortRev or "dirty");
dawnInfo = {
"x86_64-linux" = {
triple = "linux-x86_64";
hash = "sha256-HXfKTLHtMPwupnFnaflCARtXVPuS/0PoCePXidjE5xs=";
};
"aarch64-linux" = {
triple = "linux-aarch64";
hash = "sha256-34yyFpfqBZUwoFXQ41F0AwAU78FaNihOSY0oriwn6B0=";
};
"aarch64-darwin" = {
triple = "darwin-arm64";
hash = "sha256-eQnzrBp6gjiBek1VYQ9A5W13ClYWrDDKjIqv/7eNTR4=";
};
"x86_64-darwin" = {
triple = "darwin-x86_64";
hash = "sha256-QGWiGdxiI9kci3NPXH6QFFirxn16851zB/w3jqhIBJ4=";
};
};
in {
packages.x86_64-linux.default = dusk;
nodPrebuiltInfo = {
"x86_64-linux" = {
triple = "linux-x86_64";
hash = "sha256-mUqvLsbsqaZ+HAjMmHYPYO+MgtanGRTw7Gzn5uXR5rE=";
};
"aarch64-darwin" = {
triple = "macos-arm64";
hash = "sha256-UPy1ywCcv0K6VJOU3uUelJuUdBh3UNaPRlyP5LOBeDw=";
};
};
perSystem =
system:
let
pkgs = import nixpkgs { inherit system; };
inherit (pkgs.stdenv.hostPlatform) isDarwin;
hasNodPrebuilt = nodPrebuiltInfo ? ${system};
aurora = builtins.pathExists "${self}/extern/aurora/CMakeLists.txt";
needSubmodules = ''
dusklight: The aurora submodule is not vendored. Add submodules=1 to build.
As a flake input:
dusklight.url = "git+https://github.com/TwilitRealm/dusklight?ref=main&submodules=1";
nix command:
nix run 'git+https://github.com/TwilitRealm/dusklight?submodules=1'
Local checkout:
nix run '.?submodules=1#dusklight'
'';
dawn = pkgs.fetchzip {
url = "https://github.com/encounter/dawn-build/releases/download/${dawnVersion}/dawn-${dawnInfo.${system}.triple}.tar.gz";
hash = dawnInfo.${system}.hash;
stripRoot = false;
};
corrosion = pkgs.fetchFromGitHub {
owner = "corrosion-rs";
repo = "corrosion";
rev = "v0.6.1";
hash = "sha256-ppuDNObfKhneD9AlnPAvyCRHKW3BidXKglD1j/LE9CM=";
};
nodFromSource = pkgs.stdenv.mkDerivation (finalAttrs: {
pname = "nod";
version = nodVersion;
src = pkgs.fetchFromGitHub {
owner = "encounter";
repo = "nod";
rev = nodVersion;
hash = "sha256-+zrtVzjo0+X/6uMcNUn1+FaSR+jOhrcQSDNBFjw0NDs=";
};
patches = [ ./fix-cmake-paths.patch ];
cargoDeps = pkgs.rustPlatform.importCargoLock {
lockFile = "${finalAttrs.src}/Cargo.lock";
};
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace-warn "add_subdirectory(nod-ffi/examples)" ""
'';
nativeBuildInputs = [
pkgs.cmake
pkgs.ninja
pkgs.rustPlatform.cargoSetupHook
pkgs.cargo
pkgs.rustc
];
CARGO_NET_OFFLINE = "true";
cmakeFlags = [
"-DFETCHCONTENT_FULLY_DISCONNECTED=ON"
"-DFETCHCONTENT_SOURCE_DIR_CORROSION=${corrosion}"
"-DNOD_ENABLE_INSTALL=ON"
"-DBUILD_SHARED_LIBS=OFF"
];
doCheck = false;
});
nod =
if hasNodPrebuilt then
pkgs.fetchzip {
url = "https://github.com/encounter/nod/releases/download/${nodVersion}/libnod-${
nodPrebuiltInfo.${system}.triple
}.tar.gz";
hash = nodPrebuiltInfo.${system}.hash;
stripRoot = false;
}
else
nodFromSource;
fetchContentDirs = {
DAWN_PREBUILT = dawn;
NOD_PREBUILT = nod;
CXXOPTS = pkgs.cxxopts.src;
JSON = pkgs.nlohmann_json.src;
XXHASH = pkgs.xxHash.src;
ZSTD = pkgs.zstd.src;
FMT = pkgs.fetchzip {
url = "https://github.com/fmtlib/fmt/archive/refs/tags/11.1.4.tar.gz";
hash = "sha256-sUbxlYi/Aupaox3JjWFqXIjcaQa0LFjclQAOleT+FRA=";
};
TRACY = pkgs.fetchzip {
url = "https://github.com/wolfpld/tracy/archive/a64b9a20294d59421a2f57aeca3c6383d8c48169.tar.gz";
hash = "sha256-hbNGOsGeyGSvCJ2No8RkwOib1lX2on3vNZSzyVkZdXw=";
};
IMGUI = pkgs.fetchFromGitHub {
owner = "ocornut";
repo = "imgui";
rev = "v1.91.9b-docking";
hash = "sha256-mQOJ6jCN+7VopgZ61yzaCnt4R1QLrW7+47xxMhFRHLQ=";
};
SQLITE3 = pkgs.fetchzip {
url = "https://sqlite.org/2026/sqlite-amalgamation-3510300.zip";
hash = "sha256-pNMR8zxaaqfAzQ0AQBOXMct4usdjey1Q0Gnitg06UhM=";
};
RMLUI = pkgs.fetchzip {
url = "https://github.com/mikke89/RmlUi/archive/f9b8c9e2935d5df2c7dff2c190d3968e99b0c3dc.tar.gz";
hash = "sha256-g4O/JZUrrcseOz8o2QJRt+2CeuiLnVeuDJc906xvuIg=";
};
};
dusklight =
if !aurora then
throw needSubmodules
else
pkgs.stdenv.mkDerivation {
pname = "dusklight";
version = versionSuffix;
src = ./.;
postUnpack = ''
chmod -R u+w "$sourceRoot"
substituteInPlace "$sourceRoot/extern/aurora/CMakeLists.txt" \
--replace-warn "add_subdirectory(tests)" ""
'';
nativeBuildInputs = [
pkgs.cmake
pkgs.ninja
pkgs.pkg-config
pkgs.python3
pkgs.python3Packages.markupsafe
]
++ lib.optionals (!isDarwin) [ pkgs.autoPatchelfHook ];
buildInputs = [
pkgs.sdl3
pkgs.freetype
pkgs.zstd
pkgs.cxxopts
pkgs.nlohmann_json
pkgs.xxHash
pkgs.abseil-cpp
pkgs.zlib
pkgs.libpng
pkgs.libjpeg_turbo
pkgs.curl
pkgs.openssl
]
++ lib.optionals isDarwin [
pkgs.apple-sdk_15
pkgs.libiconv
]
++ lib.optionals (!isDarwin) [
pkgs.libGL
pkgs.libGLU
pkgs.libglvnd
pkgs.vulkan-loader
pkgs.libX11
pkgs.libxcb
pkgs.libXcursor
pkgs.libxi
pkgs.libxrandr
pkgs.libxscrnsaver
pkgs.libxtst
pkgs.libxinerama
pkgs.libxkbcommon
pkgs.wayland
pkgs.libdecor
pkgs.alsa-lib
pkgs.libpulseaudio
pkgs.pipewire
pkgs.dbus
pkgs.udev
pkgs.libusb1
pkgs.libunwind
pkgs.gtk3
nod
];
cmakeBuildType = "RelWithDebInfo";
ninjaFlags = [ "dusklight" ];
cmakeFlags = [
"-DDUSK_VERSION_OVERRIDE=${versionSuffix}"
"-DFETCHCONTENT_FULLY_DISCONNECTED=ON"
"-DAURORA_DAWN_PROVIDER=package"
"-DAURORA_DAWN_LINKAGE=static"
"-DAURORA_NOD_PROVIDER=system"
"-DAURORA_SDL3_PROVIDER=system"
"-DBUILD_SHARED_LIBS=OFF"
]
++ lib.mapAttrsToList (key: src: "-DFETCHCONTENT_SOURCE_DIR_${key}=${src}") fetchContentDirs;
installPhase =
if isDarwin then
''
runHook preInstall
mkdir -p "$out/Applications"
cp -r Dusklight.app "$out/Applications/Dusklight.app"
runHook postInstall
''
else
''
runHook preInstall
install -Dm755 dusklight "$out/bin/dusklight"
cp -r "$src/res" "$out/bin/res"
install -Dm644 "$src/platforms/freedesktop/dev.twilitrealm.dusk.desktop" \
"$out/share/applications/dev.twilitrealm.dusk.desktop"
for size in 16 32 48 64 128 256 512 1024; do
install -Dm644 "$src/platforms/freedesktop/''${size}x''${size}/apps/dev.twilitrealm.dusk.png" \
"$out/share/icons/hicolor/''${size}x''${size}/apps/dev.twilitrealm.dusk.png"
done
runHook postInstall
'';
dontStrip = true;
meta = {
description = "Dusklight native PC port of the Twilight Princess decompilation";
homepage = "https://github.com/zeldaret/tp";
platforms = supportedSystems;
mainProgram = "dusklight";
};
};
# Tooling common to every supported host (Linux and macOS).
commonDevTools = [
pkgs.cmake
pkgs.ninja
pkgs.pkg-config
pkgs.git
pkgs.python3
pkgs.python3Packages.markupsafe
pkgs.rustc
pkgs.cargo
pkgs.sccache
];
# Linux-only system libraries — mirrors the apt deps from .github/workflows/build.yml
# so the cmake presets resolve the same set of headers as CI.
linuxDevDeps = [
# Compilers / linkers
pkgs.clang
pkgs.lld
# C/C++ utilities
pkgs.curl
pkgs.openssl
pkgs.zlib
pkgs.libpng
pkgs.libjpeg_turbo
pkgs.freetype
pkgs.zstd
pkgs.fmt
pkgs.tracy
pkgs.cxxopts
pkgs.abseil-cpp
pkgs.sdl3
pkgs.ncurses
pkgs.libunwind
pkgs.libusb1
pkgs.fuse
# Wayland / display server
pkgs.wayland
pkgs.wayland-protocols
pkgs.libxkbcommon
pkgs.libdecor
# OpenGL / Vulkan
pkgs.libGL
pkgs.libGLU
pkgs.libglvnd
pkgs.vulkan-headers
pkgs.vulkan-loader
# X11
pkgs.libX11
pkgs.libxcb
pkgs.libXcursor
pkgs.libxi
pkgs.libxrandr
pkgs.libxscrnsaver
pkgs.libxtst
pkgs.libxinerama
# Audio
pkgs.alsa-lib
pkgs.libpulseaudio
pkgs.pipewire
# System integration
pkgs.dbus
pkgs.udev
pkgs.gtk3
];
# On macOS we deliberately avoid pulling Nix's cc-wrapper so CMake picks up
# Apple Clang and the Xcode SDK directly, matching the macOS CI workflow.
darwinShell = pkgs.mkShellNoCC {
packages = commonDevTools;
shellHook = ''
echo "Dusklight dev shell (macOS)"
echo "Requires Xcode Command Line Tools for Apple Clang and the macOS SDK."
echo "Configure: cmake --preset macos-default-relwithdebinfo"
echo "Build: cmake --build --preset macos-default-relwithdebinfo"
'';
};
linuxShell = pkgs.mkShell {
packages = commonDevTools ++ linuxDevDeps;
shellHook = ''
echo "Dusklight dev shell (Linux)"
echo "Configure: cmake --preset linux-default-relwithdebinfo"
echo " cmake --preset linux-clang-relwithdebinfo"
echo "Build: cmake --build --preset <preset>"
'';
};
in
{
packages = {
default = dusklight;
dusklight = dusklight;
}
// lib.optionalAttrs (!hasNodPrebuilt) { nod = nodFromSource; };
devShells.default = if isDarwin then darwinShell else linuxShell;
};
systems = forAllSystems perSystem;
in
{
packages = lib.mapAttrs (_: s: s.packages) systems;
devShells = lib.mapAttrs (_: s: s.devShells) systems;
};
}
+1 -1
View File
@@ -98,7 +98,7 @@ T cLib_calcTimer(T* value) {
void MtxInit(void);
void MtxTrans(f32, f32, f32, u8);
void MtxScale(f32, f32, f32, u8);
void MtxPosition(cXyz*, cXyz*);
void MtxPosition(cXyz DUSK_CONST*, cXyz*);
void MtxPush(void);
void MtxPull(void);
+3 -3
View File
@@ -45,17 +45,17 @@ struct cXyz : Vec {
~cXyz() = default;
cXyz(const cXyz& vec) = default;
#endif
cXyz(f32 x, f32 y, f32 z) {
DUSK_CONSTEXPR cXyz(f32 x, f32 y, f32 z) {
this->x = x;
this->y = y;
this->z = z;
}
cXyz(const Vec& vec) {
DUSK_CONSTEXPR cXyz(const Vec& vec) {
this->x = vec.x;
this->y = vec.y;
this->z = vec.z;
}
cXyz& operator=(const Vec& vec) {
DUSK_CONSTEXPR cXyz& operator=(const Vec& vec) {
this->x = vec.x;
this->y = vec.y;
this->z = vec.z;
+1 -1
View File
@@ -14,7 +14,7 @@ struct Z2StatusMgr : public JASGlobalInstance<Z2StatusMgr> {
void menuIn();
void menuOut();
bool isMovieDemo();
void setDemoName(char* demoName);
void setDemoName(DUSK_CONST char* demoName);
void processTime();
bool checkDayTime();
void setEventBit(void* eventBit);
+31 -2
View File
@@ -88,6 +88,10 @@ public:
/* 0x02C */ cXyz field_0x2c;
/* 0x038 */ cXyz field_0x38[60];
/* 0x308 */ cXyz field_0x308[60];
#if TARGET_PC
TGXTexObj mBlurTexObj;
ResTIMG* mpCachedBlurTex = nullptr;
#endif
}; // Size = 0x5D8
class dAlink_bottleWaterPcallBack_c : public JPAParticleCallBack {
@@ -4545,13 +4549,38 @@ public:
/* 0x03840 */ cXyz* mIronBallChainPos;
/* 0x03844 */ csXyz* mIronBallChainAngle;
/* 0x03848 */ cXyz* field_0x3848;
/* 0x0384C */ cXyz* field_0x384c;
/* 0x0384C */ cXyz DUSK_CONST* field_0x384c;
/* 0x03850 */ daAlink_procFunc mpProcFunc;
#if TARGET_PC
void handleWolfHowl();
void handleQuickTransform();
bool checkGyroAimContext();
bool checkAimContext();
void onIronBallChainInterpCallback();
static const int IRON_BALL_CHAIN_COUNT = 102;
cXyz mIBChainInterpPrevPos[IRON_BALL_CHAIN_COUNT];
cXyz mIBChainInterpCurrPos[IRON_BALL_CHAIN_COUNT];
csXyz mIBChainInterpPrevAngle[IRON_BALL_CHAIN_COUNT];
csXyz mIBChainInterpCurrAngle[IRON_BALL_CHAIN_COUNT];
cXyz mIBChainInterpPrevHandRoot;
cXyz mIBChainInterpCurrHandRoot;
bool mIBChainInterpPrevValid;
bool mIBChainInterpCurrValid;
cXyz mHsChainInterpPrevTop;
cXyz mHsChainInterpCurrTop;
cXyz mHsChainInterpPrevRoot;
cXyz mHsChainInterpCurrRoot;
cXyz mHsChainInterpPrevSubRoot;
cXyz mHsChainInterpCurrSubRoot;
cXyz mHsChainInterpPrevSubTop;
cXyz mHsChainInterpCurrSubTop;
bool mHsChainInterpPrevValid;
bool mHsChainInterpCurrValid;
bool mIsRollstab = false;
#endif
}; // Size: 0x385C
+1 -1
View File
@@ -203,7 +203,7 @@ private:
/* 0x0AAD */ bool mStayNo2Flag;
/* 0x0AAE */ u8 mBlendStatus;
/* 0x0AB0 */ f32 mBlend;
/* 0x0AB4 */ char* mArcName;
/* 0x0AB4 */ char DUSK_CONST* mArcName;
/* 0x0AB8 */ dBgS_AcchCir mAcchCir;
/* 0x0AF8 */ dBgS_ObjAcch mAcch;
/* 0x0CD0 */ dBgS_AcchCir mAcchCirArr[16];
+4 -4
View File
@@ -23,10 +23,10 @@ public:
/* 3 */ ACT_END,
};
char* getArcName();
char* getBmd();
char* getDzb();
char* getBmd2();
DUSK_CONST char* getArcName();
DUSK_CONST char* getBmd();
DUSK_CONST char* getDzb();
DUSK_CONST char* getBmd2();
J3DModelData* getDoorModelData();
int CreateHeap();
void calcMtx();
+2 -2
View File
@@ -33,8 +33,8 @@ public:
typedef int (daBdoorL1_c::*actionFunc)();
char* getDoorEventName();
char* getDoorEventName2();
DUSK_CONST char* getDoorEventName();
DUSK_CONST char* getDoorEventName2();
const char* getArcName();
const char* getAnmArcName();
int getDoorType();
+5 -5
View File
@@ -14,11 +14,11 @@
*/
class daDbDoor00_c : public fopAc_ac_c {
public:
char* getAlwaysArcName();
char* getDzb();
char* getDummyBmdName();
char* getBmdArcName();
char* getBmdName();
DUSK_CONST char* getAlwaysArcName();
DUSK_CONST char* getDzb();
DUSK_CONST char* getDummyBmdName();
DUSK_CONST char* getBmdArcName();
DUSK_CONST char* getBmdName();
J3DModelData* getDoorModelData();
int CreateHeap();
void calcMtx();
+5 -5
View File
@@ -29,11 +29,11 @@ public:
typedef int (daKnob20_c::*actionFunc)();
char* getAlwaysArcName();
char* getEvArcName();
char* getDzb();
char* getDummyBmd();
char* getBmd();
DUSK_CONST char* getAlwaysArcName();
DUSK_CONST char* getEvArcName();
DUSK_CONST char* getDzb();
DUSK_CONST char* getDummyBmd();
DUSK_CONST char* getBmd();
J3DModelData* getDoorModelData();
int CreateHeap();
void calcMtx();
+8 -8
View File
@@ -54,15 +54,15 @@ public:
typedef int (daMBdoorL1_c::*actionFunc)();
char* getAnmArcName();
char* getArcName();
char* getAlwaysArcName();
DUSK_CONST char* getAnmArcName();
DUSK_CONST char* getArcName();
DUSK_CONST char* getAlwaysArcName();
int getDoorType();
char* getOpenAnm();
char* getCloseAnm();
char* getBmd();
char* getBtk();
char* getDzb();
DUSK_CONST char* getOpenAnm();
DUSK_CONST char* getCloseAnm();
DUSK_CONST char* getBmd();
DUSK_CONST char* getBtk();
DUSK_CONST char* getDzb();
J3DModelData* getDoorModelData();
int CreateHeap();
void calcMtx();
+6 -6
View File
@@ -45,12 +45,12 @@ public:
ACTION_DEMO,
};
char* getStopBmdName();
char DUSK_CONST* getStopBmdName();
J3DModelData* getStopModelData();
char* getAlwaysArcName();
char* getArcName();
char* getBmdName();
char* getBtk();
char DUSK_CONST* getAlwaysArcName();
char DUSK_CONST* getArcName();
char DUSK_CONST* getBmdName();
char DUSK_CONST* getBtk();
J3DModelData* getModelData();
f32 getSize2X();
int CreateHeap();
@@ -115,7 +115,7 @@ public:
int chkStopOpen();
int chkMakeKey();
virtual char* getDzbName();
virtual char DUSK_CONST* getDzbName();
virtual int getDemoAction();
void onFlag(u16 flag) { field_0x68e |= flag; }
+1 -1
View File
@@ -32,7 +32,7 @@ public:
/* 0x5B4 */ J3DModel* mpModel;
/* 0x5B8 */ u8 mArrowType;
/* 0x5B9 */ u8 mFlags;
/* 0x5BC */ char* mResName;
/* 0x5BC */ char DUSK_CONST* mResName;
/* 0x5C0 */ s16 field_0x5c0;
/* 0x5C2 */ s16 mAction;
/* 0x5C4 */ s16 mMode;
+1 -1
View File
@@ -60,7 +60,7 @@ public:
/* 0x5B5 */ u8 mDistanceParam;
/* 0x5B6 */ u8 mType;
/* 0x5B7 */ u8 mPathIndex;
/* 0x5B8 */ char* mArcName;
/* 0x5B8 */ DUSK_CONST char* mArcName;
/* 0x5BC */ u8 field_0x5bc;
/* 0x5BD */ s8 mPathPoint;
/* 0x5BE */ s8 mPathStep;
+6
View File
@@ -80,6 +80,12 @@ public:
/* 0x125C */ u32 field_0x125c;
/* 0x1260 */ u8 field_0x1260[0x126C - 0x1260];
/* 0x126C */ u8 HIOInit;
#if TARGET_PC
cXyz mStalkLineInterpPrev[12];
cXyz mStalkLineInterpCurr[12];
bool mStalkLineInterpPrevValid;
bool mStalkLineInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(e_db_class) == 0x1270);
+6
View File
@@ -73,6 +73,12 @@ public:
/* 0x124C */ f32 field_0x124c;
/* 0x1250 */ u8 field_0x1250[0x1264 - 0x1250];
/* 0x1264 */ u8 HIOInit;
#if TARGET_PC
cXyz mStalkLineInterpPrev[12];
cXyz mStalkLineInterpCurr[12];
bool mStalkLineInterpPrevValid;
bool mStalkLineInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(e_hb_class) == 0x1268);
+1 -1
View File
@@ -38,7 +38,7 @@ public:
/* 0x05CC */ s16 target_ya;
/* 0x05D0 */ mDoExt_McaMorfSO* anm_p;
/* 0x05D4 */ Z2CreatureEnemy sound;
/* 0x0678 */ char* resName;
/* 0x0678 */ DUSK_CONST char* resName;
/* 0x067C */ int anm;
/* 0x0680 */ int field_0x680;
/* 0x0684 */ dJntCol_c mJntCol;
+1 -1
View File
@@ -36,7 +36,7 @@ public:
/* 0x05C8 */ s16 mTargetAngleY;
/* 0x05CC */ mDoExt_McaMorfSO* mpMorf;
/* 0x05D0 */ Z2CreatureEnemy mSound;
/* 0x0674 */ char* mpArcName;
/* 0x0674 */ char DUSK_CONST* mpArcName;
/* 0x0678 */ int mAnm;
/* 0x067C */ u8 field_0x67c[0x680 - 0x67c];
/* 0x0680 */ dJntCol_c mJntCol;
+9
View File
@@ -81,6 +81,15 @@ public:
/* 0x306D */ u8 field_0x306D[0x307C - 0x306D];
/* 0x307C */ u32 mBodyEffEmtrID;
/* 0x3080 */ u8 mInitHIO;
#if TARGET_PC
static const int HAIR_STRAND_COUNT = 22;
static const int HAIR_SEGMENT_COUNT = 16;
cXyz mHairInterpPrev[HAIR_STRAND_COUNT * HAIR_SEGMENT_COUNT];
cXyz mHairInterpCurr[HAIR_STRAND_COUNT * HAIR_SEGMENT_COUNT];
bool mHairInterpPrevValid;
bool mHairInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(e_s1_class) == 0x3084);
+1 -1
View File
@@ -63,7 +63,7 @@ private:
/* 0x6D4 */ f32 field_0x6d4;
/* 0x6D8 */ s16 mFootJoints[4];
/* 0x6E0 */ s16 field_0x6e0;
/* 0x6E4 */ char* mpResName;
/* 0x6E4 */ char DUSK_CONST* mpResName;
/* 0x6E8 */ u16 mDamageCooldownTimer;
/* 0x6EA */ u8 mGenericTimer;
/* 0x6EC */ int mAttackTimer;
+1 -1
View File
@@ -99,7 +99,7 @@ public:
/* 0x0000 */ fopEn_enemy_c enemy; ///< @brief Base enemy class instance.
/* 0x05AC */ request_of_phase_process_class phase; ///< @brief Phase process request handler.
/* 0x05B4 */ s16 ride_mode; ///< @brief Current sub-action mode within the run action.
/* 0x05B8 */ char* resName; ///< @brief Resource name for loading models/animations.
/* 0x05B8 */ char DUSK_CONST* resName; ///< @brief Resource name for loading models/animations.
/* 0x05BC */ u8 arg0; ///< @brief Creation parameter 1.
/* 0x05BD */ u8 arg1; ///< @brief Creation parameter 2.
/* 0x05BE */ u8 field_0x5be;
+6
View File
@@ -74,6 +74,12 @@ public:
/* 0x1250 */ f32 field_0x1250;
/* 0x1254 */ u8 field_0x1254[0x1268 - 0x1254];
/* 0x1268 */ u8 field_0x1268;
#if TARGET_PC
cXyz mLineMatInterpPrev[12];
cXyz mLineMatInterpCurr[12];
bool mLineMatInterpPrevValid;
bool mLineMatInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(e_yd_class) == 0x126c);
+9
View File
@@ -63,6 +63,15 @@ public:
/* 0x0BB4 */ yg_ke_s mYgKes[13];
/* 0x1880 */ mDoExt_3DlineMat0_c mLineMat;
/* 0x189C */ u8 mIsFirstSpawn;
#if TARGET_PC
static const int TENTACLE_STRAND_COUNT = 13;
static const int TENTACLE_SEGMENT_COUNT = 10;
cXyz mTentacleInterpPrev[TENTACLE_STRAND_COUNT * TENTACLE_SEGMENT_COUNT];
cXyz mTentacleInterpCurr[TENTACLE_STRAND_COUNT * TENTACLE_SEGMENT_COUNT];
bool mTentacleInterpPrevValid;
bool mTentacleInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(e_yg_class) == 0x18a0);
+6
View File
@@ -77,6 +77,12 @@ public:
/* 0x1260 */ u32 field_0x1260;
/* 0x1260 */ u8 field_0x1264[0x1270 - 0x1264];
/* 0x1270 */ bool mIsHIOOwner;
#if TARGET_PC
cXyz mLineInterpPrev[12];
cXyz mLineInterpCurr[12];
bool mLineInterpPrevValid;
bool mLineInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(e_yh_class) == 0x1274);
+2 -2
View File
@@ -213,8 +213,8 @@ private:
/* 0x750 */ int field_0x750;
/* 0x754 */ int field_0x754;
/* 0x758 */ int field_0x758;
/* 0x75C */ char* mArcName;
/* 0x760 */ char* mDemoName;
/* 0x75C */ DUSK_CONST char* mArcName;
/* 0x760 */ DUSK_CONST char* mDemoName;
/* 0x764 */ u32 mShadowId;
/* 0x768 */ dPath* mpPath1;
/* 0x76C */ dPath* mpPath2;
+1 -1
View File
@@ -49,7 +49,7 @@ public:
/* 0x5F4 */ s16 mYawToPlayer;
/* 0x5F6 */ s16 field_0x5f6;
/* 0x5F8 */ s16 field_0x5f8;
/* 0x5FC */ char* mResName;
/* 0x5FC */ DUSK_CONST char* mResName;
/* 0x600 */ mDoExt_McaMorf* mpMorf;
/* 0x604 */ J3DAnmTransform* mAnmTransform;
/* 0x608 */ u32 mShadowId;
+8 -3
View File
@@ -90,7 +90,7 @@ public:
/* 0x0000 */ fopAc_ac_c actor;
/* 0x0568 */ request_of_phase_process_class phase;
/* 0x0570 */ char* arcname;
/* 0x0570 */ DUSK_CONST char* arcname;
/* 0x0574 */ u8 arg0;
/* 0x0575 */ u8 arg1;
/* 0x0576 */ u8 arg2;
@@ -299,8 +299,13 @@ public:
/* 0x168C */ u8 field_0x168c;
/* 0x168D */ u8 field_0x168d;
/* 0x168E */ u8 HIOInit;
#if TARGET_PC
cXyz mLineInterpPrev[MG_ROD_LURE_LINE_LEN];
cXyz mLineInterpCurr[MG_ROD_LURE_LINE_LEN];
bool mLineInterpPrevValid;
bool mLineInterpCurrValid;
#endif
};
STATIC_ASSERT(sizeof(dmg_rod_class) == 0x1690);
#endif /* D_A_MG_ROD_H */
+1
View File
@@ -27,6 +27,7 @@ public:
/* 0x17C */ cXyz mViewScale;
#if TARGET_PC
bool mbReset = false;
bool mbHadEntry = false;
#endif
};
+2
View File
@@ -5,6 +5,7 @@
#include <thp.h>
#else
#include <atomic>
#include <chrono>
#endif
#include "f_op/f_op_actor.h"
#include "d/d_drawlist.h"
@@ -125,6 +126,7 @@ struct daMP_THPPlayer {
/* 0x0D4 */ s32 curCount;
#if TARGET_PC
/* 0x0D8 */ std::atomic<s32> videoDecodeCount;
std::chrono::steady_clock::time_point thpPlaybackClock;
#else
/* 0x0D8 */ s32 videoDecodeCount;
#endif
+2 -2
View File
@@ -103,8 +103,8 @@ public:
void animePlay();
int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
J3DAnmTransformKey* getTrnsfrmKeyAnm(char*);
J3DAnmTexPattern* getTexPtrnAnm(char*);
J3DAnmTransformKey* getTrnsfrmKeyAnm(DUSK_CONST char*);
J3DAnmTexPattern* getTexPtrnAnm(DUSK_CONST char*);
int checkEndAnm(J3DFrameCtrl*);
int checkEndAnm(f32);
u8 getItemNumMax();
+4 -4
View File
@@ -519,7 +519,7 @@ public:
/* 0x568 */ daNpcT_faceMotionAnmData_c const* mpFaceMotionAnmData;
/* 0x56C */ daNpcT_motionAnmData_c const* mpMotionAnmData;
/* 0x570 */ daNpcT_evtData_c const* mpEvtData;
/* 0x574 */ char** mpArcNames;
/* 0x574 */ DUSK_CONST char* DUSK_CONST* mpArcNames;
/* 0x578 */ mDoExt_McaMorfSO* mpMorf[2];
/* 0x580 */ Z2Creature mSound;
/* 0x610 */ mDoExt_bckAnm mBckAnm;
@@ -627,7 +627,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, DUSK_CONST char* DUSK_CONST* i_arcNames)
:
mpFaceMotionAnmData(i_faceMotionAnmData),
mpMotionAnmData(i_motionAnmData),
@@ -654,8 +654,8 @@ public:
int setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int);
int setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int);
int setBpkAnm(J3DAnmColor*, J3DModelData*, f32, int);
int loadRes(s8 const*, char const**);
void deleteRes(s8 const*, char const**);
int loadRes(s8 const*, char const* DUSK_CONST*);
void deleteRes(s8 const*, char const* DUSK_CONST*);
int execute();
int draw(BOOL, BOOL, f32, GXColorS10*, f32, BOOL, BOOL, BOOL);
void setEnvTevColor();
+4 -4
View File
@@ -86,12 +86,12 @@ public:
class daBaseNpc_c : public fopAc_ac_c {
public:
daBaseNpc_c();
J3DAnmTransform* getTrnsfrmKeyAnmP(char*, int);
J3DAnmTransform* getTrnsfrmKeyAnmP(char DUSK_CONST*, int);
int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
int setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
J3DAnmTransform* getTexPtrnAnmP(char*, int);
J3DAnmTransform* getTexPtrnAnmP(char DUSK_CONST*, int);
int setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
void orderEvent(int, char*);
void orderEvent(int, char DUSK_CONST*);
void setEnvTevColor();
void setRoomNo();
int checkEndAnm(f32);
@@ -128,7 +128,7 @@ public:
/* 0x808 */ mDoExt_btpAnm mBtp;
/* 0x820 */ mDoExt_btkAnm mBtk;
/* 0x838 */ s16 field_0x838;
/* 0x83C */ u16* field_0x83c;
/* 0x83C */ u16 DUSK_CONST* field_0x83c;
/* 0x840 */ u16 field_0x840;
/* 0x842 */ u16 field_0x842;
/* 0x844 */ u8 field_0x844;
+6 -6
View File
@@ -311,10 +311,10 @@ public:
static void* srchActor(void*, void*);
void initialize();
J3DAnmTransformKey* getTrnsfrmKeyAnmP(char*, int);
J3DAnmTexPattern* getTexPtrnAnmP(char*, int);
J3DAnmTextureSRTKey* getTexSRTKeyAnmP(char*, int);
J3DAnmTevRegKey* getTevRegKeyAnmP(char*, int);
J3DAnmTransformKey* getTrnsfrmKeyAnmP(DUSK_CONST char*, int);
J3DAnmTexPattern* getTexPtrnAnmP(DUSK_CONST char*, int);
J3DAnmTextureSRTKey* getTexSRTKeyAnmP(DUSK_CONST char*, int);
J3DAnmTevRegKey* getTevRegKeyAnmP(DUSK_CONST char*, int);
BOOL setMcaMorfAnm(J3DAnmTransformKey* i_anm, f32 i_rate, f32 i_morf, int i_attr,
int i_start, int i_end);
BOOL setBckAnm(J3DAnmTransform* i_bck, f32 i_rate, int i_attr, int i_start,
@@ -336,8 +336,8 @@ public:
BOOL hitChk2(dCcD_Cyl*, BOOL, BOOL);
void setDamage(int, int, int);
int ctrlMsgAnm(int&, int&, fopAc_ac_c*, BOOL);
void orderEvent(int, char*, u16, u16, u8, u16);
void changeEvent(char*, char*, u16, u16);
void orderEvent(int, DUSK_CONST char*, u16, u16, u8, u16);
void changeEvent(DUSK_CONST char*, DUSK_CONST char*, u16, u16);
BOOL chkActorInSight(fopAc_ac_c*, f32);
BOOL chkActorInArea(fopAc_ac_c*, cXyz, cXyz, s16);
BOOL chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int);
+3 -3
View File
@@ -149,7 +149,7 @@ public:
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {
@@ -171,8 +171,8 @@ public:
u8 getPathID() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
void setLastIn() { mLastGoatIn = true; }
static char* mCutNameList[7];
static cutFunc mCutList[7];
static char DUSK_CONST* DUSK_CONST mCutNameList[7];
static cutFunc DUSK_CONST mCutList[7];
private:
/* 0xE40 */ NPC_ARU_HIO_CLASS* mpHIO;
+1 -1
View File
@@ -135,7 +135,7 @@ public:
inline bool step(s16, int, f32);
inline void playExpression();
static EventFn mEvtSeqList[2];
static EventFn DUSK_CONST mEvtSeqList[2];
private:
/* 0xB48 */ Z2Creature mCreatureSound;
+3 -3
View File
@@ -90,7 +90,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {
@@ -117,8 +117,8 @@ public:
return rv;
}
static char* mCutNameList[4];
static cutFunc mCutList[4];
static char DUSK_CONST* DUSK_CONST mCutNameList[4];
static cutFunc DUSK_CONST mCutList[4];
/* 0x0F7C */ mDoExt_McaMorfSO* mpScoopMorf;
/* 0x0F80 */ NPC_BANS_HIO_CLASS* mHIO;
+3 -3
View File
@@ -112,7 +112,7 @@ public:
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {
@@ -140,8 +140,8 @@ public:
u8 getPathID() { return (fopAcM_GetParam(this) & 0xff00) >> 8; }
u8 getBitSW() { return (fopAcM_GetParam(this) & 0xff0000) >> 16; }
static char* mCutNameList[15];
static cutFunc mCutList[15];
static char DUSK_CONST* DUSK_CONST mCutNameList[15];
static cutFunc DUSK_CONST mCutList[15];
private:
/* 0x0E40 */ mDoExt_McaMorfSO* mpCupModelMorf;
+1 -1
View File
@@ -124,7 +124,7 @@ public:
return var_r30;
}
static EventFn mEvtSeqList[];
static EventFn DUSK_CONST mEvtSeqList[];
/* 0xB48 */ Z2Creature mSound;
/* 0xBD8 */ u8 field_0xBD8[0xBDC - 0xBD8];
+3 -3
View File
@@ -89,7 +89,7 @@ public:
daNpc_Bou_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
daNpcT_evtData_c const* param_7, char** param_8)
daNpcT_evtData_c const* param_7, char DUSK_CONST* DUSK_CONST* param_8)
:
daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8)
{}
@@ -114,8 +114,8 @@ public:
virtual int drawDbgInfo();
virtual void changeAnm(int*, int*);
static char* mCutNameList[9];
static cutFunc mCutList[9];
static char DUSK_CONST* DUSK_CONST mCutNameList[9];
static cutFunc DUSK_CONST mCutList[9];
int getFlowNodeNo() {
u16 nodeNo = home.angle.x;
+1 -1
View File
@@ -102,7 +102,7 @@ public:
void setFear() { mFear = true; }
void setTalkFlag() { mTalkFlag = true; }
static eventFunc mEvtSeqList[1];
static eventFunc DUSK_CONST mEvtSeqList[1];
private:
/* 0xB48 */ Z2CreatureCitizen mSound;
+3 -3
View File
@@ -100,7 +100,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -124,8 +124,8 @@ public:
u8 getMaxNumItem() { return (fopAcM_GetParam(this) & 0xF000000) >> 24; }
static char* mCutNameList[1];
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList[1];
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0x0F7C */ NPC_CLERKA_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -113,7 +113,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames)
int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -137,8 +137,8 @@ public:
u8 getMaxNumItem() { return (fopAcM_GetParam(this) & 0xF000000) >> 24; }
static char* mCutNameList[1];
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList[1];
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0x0F7C */ mDoExt_bpkAnm mBpkAnm2;
+3 -3
View File
@@ -91,7 +91,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -125,8 +125,8 @@ public:
}
}
static char* mCutNameList[1];
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList[1];
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0x0F7C */ NPC_CLERKT_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -66,7 +66,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames)
@@ -133,8 +133,8 @@ public:
return (fopAcM_GetParam(this) & 0xFF00) >> 8;
}
static char* mCutNameList[1];
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList[1];
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0xE40 */ NPC_DOC_HIO_CLASS* mpHIO;
+1 -1
View File
@@ -78,7 +78,7 @@ public:
inline int getTimeHour();
inline bool isDummyTalk();
static EventFn mEvtSeqList[1];
static EventFn DUSK_CONST mEvtSeqList[1];
private:
/* 0xB48 */ Z2CreatureCitizen mSound;
+3 -3
View File
@@ -256,7 +256,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {
@@ -294,8 +294,8 @@ public:
u8 getSceneNo1() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
u8 getSceneNo2() { return (fopAcM_GetParam(this) >> 16) & 0xFF; }
static char* mCutNameList[18];
static cutFunc mCutList[18];
static char DUSK_CONST* DUSK_CONST mCutNameList[18];
static cutFunc DUSK_CONST mCutList[18];
private:
/* 0x0E40 */ NPC_FAIRY_HIO_CLASS* mHIO;
/* 0x0E44 */ dCcD_Cyl mCyl;
+3 -3
View File
@@ -71,7 +71,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3,
int param_4,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5,
int param_6, daNpcT_evtData_c const* param_7, char** param_8)
int param_6, daNpcT_evtData_c const* param_7, DUSK_CONST char* DUSK_CONST* param_8)
: daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) {}
u8 getType() { return fopAcM_GetParam(this) & 0xFF; }
@@ -90,8 +90,8 @@ public:
int getSeneNo() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
static char* mCutNameList[1];
static cutFunc mCutList[1];
static DUSK_CONST char* mCutNameList[1];
static DUSK_CONST cutFunc mCutList[1];
private:
/* 0xE40 */ NPC_FAIRY_SEIREI_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -83,7 +83,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {
@@ -96,8 +96,8 @@ public:
s32 getNeckJointNo() { return 3; }
s32 getBackboneJointNo() { return 1; }
static char* mCutNameList[1];
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList[1];
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0xE40 */ NPC_GND_HIO_CLASS* mpHIO;
+2 -2
View File
@@ -138,9 +138,9 @@ public:
void addCarryNum() { field_0x1692++; }
u8 getPathNoFromParam() { return home.angle.z; }
void setGateWalk() { field_0x14D0 = 1; }
static char* mEvtCutNameList[12];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[12];
typedef BOOL (daNpc_grA_c::*cut_type)(int);
static cut_type mEvtCutList[];
static cut_type DUSK_CONST mEvtCutList[];
private:
typedef BOOL (daNpc_grA_c::*daNpc_grA_c_Action)(void*);
+2 -2
View File
@@ -89,8 +89,8 @@ public:
void setPrtcl();
void adjustShapeAngle() {}
static char* mEvtCutNameList;
static EventFn mEvtCutList[1];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList;
static EventFn DUSK_CONST mEvtCutList[1];
private:
/* 0xB48 */ Z2Creature mSound;
+2 -2
View File
@@ -81,8 +81,8 @@ public:
BOOL ECut_nodToGrz(int);
void adjustShapeAngle() {}
static char* mEvtCutNameList[2];
static cutFunc mEvtCutList[2];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[2];
static cutFunc DUSK_CONST mEvtCutList[2];
private:
/* 0xB48 */ Z2Creature mSound;
+3 -3
View File
@@ -120,7 +120,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -131,8 +131,8 @@ public:
BOOL checkChangeJoint(int param_0) { return param_0 == JNT_HEAD; }
BOOL checkRemoveJoint(int param_0) { return param_0 == JNT_MOUTH; }
static char* mCutNameList[2];
static cutFunc mCutList[2];
static char DUSK_CONST* DUSK_CONST mCutNameList[2];
static cutFunc DUSK_CONST mCutList[2];
private:
/* 0x0F7C */ NPC_GRM_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -113,7 +113,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum,
daNpcT_evtData_c const* i_evtData,
char** i_arcNames)
char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -124,8 +124,8 @@ public:
BOOL checkRemoveJoint(int param_1) { return param_1 == JNT_MOUTH; }
u16 getEyeballMaterialNo() { return 1; };
static char* mCutNameList;
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList;
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0x0F7C */ NPC_GRMC_HIO_CLASS* mpHIO;
+2 -2
View File
@@ -85,8 +85,8 @@ public:
int test(void*);
void adjustShapeAngle() {}
static char* mEvtCutNameList[3];
static cutFunc mEvtCutList[3];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[3];
static cutFunc DUSK_CONST mEvtCutList[3];
private:
/* 0xB48 */ Z2Creature mSound;
+2 -2
View File
@@ -83,8 +83,8 @@ public:
int test(void*);
void adjustShapeAngle() {}
static char* mEvtCutNameList;
static cutFunc mEvtCutList[1];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList;
static cutFunc DUSK_CONST mEvtCutList[1];
private:
/* 0xB48 */ Z2Creature mSound;
+2 -2
View File
@@ -84,8 +84,8 @@ public:
void setPrtcl();
void adjustShapeAngle() {}
static char* mEvtCutNameList[2];
static cutFunc mEvtCutList[2];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[2];
static cutFunc DUSK_CONST mEvtCutList[2];
private:
/* 0xB48 */ Z2Creature mSound;
+2 -2
View File
@@ -116,8 +116,8 @@ public:
u8 getPathNoFromParam() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
static char* mEvtCutNameList[7];
static cutFunc mEvtCutList[7];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[7];
static cutFunc DUSK_CONST mEvtCutList[7];
private:
/* 0x0B48 */ Z2Creature mSound;
+2 -2
View File
@@ -104,8 +104,8 @@ public:
void setHowlingEndFlag() { field_0xe1c = 2; }
void setHowlingFlag() { field_0xe1c = 1; }
static char* mEvtCutNameList[5];
static cutFunc mEvtCutList[5];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[5];
static cutFunc DUSK_CONST mEvtCutList[5];
private:
/* 0xB48 */ Z2Creature mSound;
+4 -4
View File
@@ -194,7 +194,7 @@ public:
daNpc_Hanjo_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
daNpcT_evtData_c const* param_7, char** param_8) :
daNpcT_evtData_c const* param_7, char DUSK_CONST* DUSK_CONST* param_8) :
daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8)
{}
u16 getEyeballMaterialNo() { return 2; }
@@ -218,9 +218,9 @@ public:
u8 getPathID() { return (fopAcM_GetParam(this) & 0xff00) >> 8; }
static dCcD_SrcGObjInf const mStoneCcDObjInfo;
static char* mCutNameList[6];
static cutFunc mCutList[6];
static dCcD_SrcSph mStoneCcDSph;
static char DUSK_CONST* DUSK_CONST mCutNameList[6];
static cutFunc DUSK_CONST mCutList[6];
static dCcD_SrcSph DUSK_CONST mStoneCcDSph;
private:
/* 0x0E40 */ NPC_HANJO_HIO_CLASS* mpHIO;
/* 0x0E44 */ J3DModel* mModel1;
+3 -3
View File
@@ -91,7 +91,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames)
@@ -125,8 +125,8 @@ public:
bool getGameStartFlag() { return mGameStartFlag; }
void setPotBreakFlag() { mPotBreakFlag = true; }
static char* mCutNameList[8];
static cutFunc mCutList[];
static char DUSK_CONST* DUSK_CONST mCutNameList[8];
static cutFunc DUSK_CONST mCutList[];
private:
/* 0xE40 */ NPC_HOZ_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -138,7 +138,7 @@ public:
daNpc_Jagar_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
daNpcT_evtData_c const* param_7, char** param_8) :
daNpcT_evtData_c const* param_7, char DUSK_CONST* DUSK_CONST* param_8) :
daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8)
{}
u16 getEyeballMaterialNo() { return MAT_JAGA_EYEBALL; }
@@ -223,8 +223,8 @@ public:
return 0;
}
static char* mCutNameList[7];
static cutFunc mCutList[7];
static char DUSK_CONST* DUSK_CONST mCutNameList[7];
static cutFunc DUSK_CONST mCutList[7];
private:
/* 0x0E40 */ NPC_JAGAR_HIO_CLASS* mpHIO;
/* 0x0E44 */ dCcD_Cyl mCyl1;
+3 -3
View File
@@ -76,7 +76,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames)
@@ -113,8 +113,8 @@ public:
u8 getBitSW() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
u8 getBitSW2() { return (fopAcM_GetParam(this) & 0xFF0000) >> 16; }
static char* mCutNameList[4];
static int (daNpc_Kakashi_c::*mCutList[])(int);
static char DUSK_CONST* DUSK_CONST mCutNameList[4];
static int (daNpc_Kakashi_c::* DUSK_CONST mCutList[])(int);
private:
/* 0x0E40 */ NPC_KAKASHI_HIO_CLASS* mpHIO;
+1 -1
View File
@@ -120,7 +120,7 @@ public:
void chgWeightLight() { mCcStts.SetWeight(0xD8); }
BOOL pl_front_check() { return actor_front_check(daPy_getPlayerActorClass()); }
static EventFn mEvtSeqList[1];
static EventFn DUSK_CONST mEvtSeqList[1];
static daTagEscape_c* mTargetTag;
static f32 mTargetTagDist;
static s16 mWolfAngle;
+1 -1
View File
@@ -121,7 +121,7 @@ public:
void chgWeightLight() { mCcStts.SetWeight(0xD8); }
BOOL pl_front_check() { return actor_front_check(daPy_getPlayerActorClass()); }
static EventFn mEvtSeqList[1];
static EventFn DUSK_CONST mEvtSeqList[1];
static daTagEscape_c* mTargetTag;
static f32 mTargetTagDist;
static s16 mWolfAngle;
+3 -3
View File
@@ -71,7 +71,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames)
@@ -118,8 +118,8 @@ public:
return mpMorf[0]->getModel()->getAnmMtx(5);
}
static char* mCutNameList[3];
static int (daNpc_Kkri_c::*mCutList[])(int);
static char DUSK_CONST* DUSK_CONST mCutNameList[3];
static int (daNpc_Kkri_c::* DUSK_CONST mCutList[])(int);
private:
/* 0xE40 */ NPC_KKRI_HIO_CLASS* mpHIO;
+6 -6
View File
@@ -88,7 +88,7 @@ public:
/* 0x05AC */ const daNpcT_faceMotionAnmData_c* mpFaceMotionAnmData;
/* 0x05B0 */ const daNpcT_motionAnmData_c* mpMotionAnmData;
/* 0x05B4 */ const daNpcT_evtData_c* mpEventData;
/* 0x05B8 */ char** mpArcNames;
/* 0x05B8 */ char DUSK_CONST* DUSK_CONST* mpArcNames;
/* 0x05BC */ mDoExt_McaMorfSO* mpModelMorf[2];
/* 0x05C4 */ Z2Creature mSound;
/* 0x0654 */ mDoExt_bckAnm mBckAnm;
@@ -322,8 +322,8 @@ public:
int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
BOOL setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
BOOL setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int);
int loadRes(s8 const*, char const**);
void deleteRes(s8 const*, char const**);
int loadRes(s8 const*, char const* DUSK_CONST*);
void deleteRes(s8 const*, char const* DUSK_CONST*);
int execute();
int draw(int, int, f32, GXColorS10*, f32, int, int, int);
void setEnvTevColor();
@@ -355,7 +355,7 @@ public:
daNpcT_motionAnmData_c const* param_1,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5,
daNpcT_evtData_c const* param_6, char** param_7)
daNpcT_evtData_c const* param_6, char DUSK_CONST* DUSK_CONST* param_7)
: mpFaceMotionAnmData(param_0), mpMotionAnmData(param_1), mFaceMotionSeqMngr(param_2, param_3),
mMotionSeqMngr(param_4, param_5), mpEventData(param_6), mpArcNames(param_7)
{
@@ -413,8 +413,8 @@ public:
virtual bool afterSetMotionAnm(int, int, f32, int);
static const dCcD_SrcGObjInf mCcDObjData;
static char* mCutNameList[21];
static cutFunc mCutList[21];
static char DUSK_CONST* DUSK_CONST mCutNameList[21];
static cutFunc DUSK_CONST mCutList[21];
static dCcD_SrcCyl mCcDCyl;
static dCcD_SrcSph mCcDSph;
static s16 mSrchName;
+3 -3
View File
@@ -75,13 +75,13 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
static char* mCutNameList[1];
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList[1];
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0xE40 */ NPC_KNJ_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -93,7 +93,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum,
daNpcT_evtData_c const* i_evtData,
char** i_arcNames)
char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -120,8 +120,8 @@ public:
virtual void changeAnm(int*, int*);
virtual void changeBck(int*, int*);
static char* mCutNameList[11];
static cutFunc mCutList[11];
static char DUSK_CONST* DUSK_CONST mCutNameList[11];
static cutFunc DUSK_CONST mCutList[11];
u32 getFlowNodeNo() {
u16 nodeNo = home.angle.x;
+3 -3
View File
@@ -140,7 +140,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum,
daNpcT_evtData_c const* i_evtData,
char** i_arcNames)
char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -150,8 +150,8 @@ public:
s32 getBackboneJointNo() { return mType == 2 ? ZRCB_JNT_BACKBONE1 : KOLINB_JNT_BACKBONE1; }
s32 getNeckJointNo() { return mType == 2 ? ZRCB_JNT_NECK : KOLINB_JNT_NECK; }
static char* mCutNameList[7];
static cutFunc mCutList[7];
static char DUSK_CONST* DUSK_CONST mCutNameList[7];
static cutFunc DUSK_CONST mCutList[7];
u32 getFlowNodeNo() {
u16 nodeNo = home.angle.x;
+3 -3
View File
@@ -106,7 +106,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3,
int param_4,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5,
int param_6, daNpcT_evtData_c const* param_7, char** param_8)
int param_6, daNpcT_evtData_c const* param_7, char DUSK_CONST* DUSK_CONST* param_8)
: daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) {}
u16 getEyeballMaterialNo() { return 2; }
s32 getHeadJointNo() { return 4; }
@@ -123,8 +123,8 @@ public:
return nodeNo;
}
static char* mCutNameList[2];
static cutFunc mCutList[2];
static char DUSK_CONST* DUSK_CONST mCutNameList[2];
static cutFunc DUSK_CONST mCutList[2];
private:
/* 0xE40 */ NPC_KYURY_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -86,7 +86,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -100,8 +100,8 @@ public:
s32 getFootRJointNo() { return 32; }
BOOL chkXYItems() { return TRUE; }
static char* mCutNameList[4];
static cutFunc mCutList[4];
static char DUSK_CONST* DUSK_CONST mCutNameList[4];
static cutFunc DUSK_CONST mCutList[4];
int getFlowNodeNo() {
u16 nodeNo = home.angle.x;
+3 -3
View File
@@ -91,7 +91,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -111,8 +111,8 @@ public:
}
u8 getBitSW() { return (fopAcM_GetParam(this) & 0xff0000) >> 16; }
static char* mCutNameList[8];
static cutFunc mCutList[8];
static char DUSK_CONST* DUSK_CONST mCutNameList[8];
static cutFunc DUSK_CONST mCutList[8];
private:
/* 0xE40 */ mDoExt_McaMorfSO* mpBowlMorf;
+3 -3
View File
@@ -132,7 +132,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {
@@ -167,8 +167,8 @@ public:
void startChoccai() { field_0x1134 = 1; }
void endChoccai() { field_0x1134 = 0; }
static char* mCutNameList[17];
static cutFunc mCutList[17];
static char DUSK_CONST* DUSK_CONST mCutNameList[17];
static cutFunc DUSK_CONST mCutList[17];
u8 getGroupId() {
return (fopAcM_GetParam(this) & 0xF0000000) >> 28;
+3 -3
View File
@@ -130,7 +130,7 @@ public:
daNpc_midP_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6,
daNpcT_evtData_c const* param_7, char** param_8) :
daNpcT_evtData_c const* param_7, char DUSK_CONST* DUSK_CONST* param_8) :
daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) {}
u16 getEyeballRMaterialNo() { return 3; }
u16 getEyeballLMaterialNo() { return 2; }
@@ -148,8 +148,8 @@ public:
return nodeNo;
}
static char* mCutNameList;
static cutFunc mCutList[1];
static char DUSK_CONST* DUSK_CONST mCutNameList;
static cutFunc DUSK_CONST mCutList[1];
private:
/* 0xE40 */ NPC_MIDP_HIO_CLASS* mpHIO;
+3 -3
View File
@@ -128,7 +128,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
int i_faceMotionStepNum,
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
daNpcT_evtData_c const* i_evtData, char** i_arcNames)
daNpcT_evtData_c const* i_evtData, char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -158,8 +158,8 @@ public:
bool chkSFight() { return field_0x166b == 1; }
u8 getPathID() { return (fopAcM_GetParam(this) & 0xff00) >> 8; }
static char* mCutNameList[5];
static cutFunc mCutList[5];
static char DUSK_CONST* DUSK_CONST mCutNameList[5];
static cutFunc DUSK_CONST mCutList[5];
private:
/* 0x0E40 */ NPC_MOI_HIO_CLASS* mpHIO;
+2 -2
View File
@@ -87,8 +87,8 @@ public:
int getType() { return mType; }
static char* mEvtCutNameList[5];
static EventFn mEvtCutList[];
static char DUSK_CONST* DUSK_CONST mEvtCutNameList[5];
static EventFn DUSK_CONST mEvtCutList[];
/* 0xB48 */ u8 field_0xB48[0xB4C - 0xB48];
/* 0xB4C */ daNpcF_Lookat_c mLookat;
+3 -3
View File
@@ -115,7 +115,7 @@ public:
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
int i_motionStepNum,
daNpcT_evtData_c const* i_evtData,
char** i_arcNames)
char DUSK_CONST* DUSK_CONST* i_arcNames)
: daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
i_arcNames) {}
@@ -144,8 +144,8 @@ public:
void setTagPos(cXyz const& i_pos) { mTagPos = i_pos; }
void setLookPos(cXyz const& i_pos) { mLookPos = i_pos; }
static char* mCutNameList[11];
static cutFunc mCutList[11];
static char DUSK_CONST* DUSK_CONST mCutNameList[11];
static cutFunc DUSK_CONST mCutList[11];
private:
/* 0xE40 */ NPC_PACHI_BESU_HIO_CLASS* mpHIO;

Some files were not shown because too many files have changed in this diff Show More