Commit Graph

1323 Commits

Author SHA1 Message Date
jonschz
85ce10ab50
Refactor various operator[] based on BETA10 (#1110)
Some checks are pending
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Waiting to run
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Waiting to run
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Waiting to run
Build / Download original binaries (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Waiting to run
Build / MSVC 4.20 (push) Waiting to run
Build / Compare with master (push) Blocked by required conditions
Build / Upload artifacts (push) Blocked by required conditions
Format / C++ (push) Waiting to run
Format / Python (push) Waiting to run
Naming / C++ (push) Waiting to run
Test / Download original binaries (push) Waiting to run
Test / Python Windows (push) Blocked by required conditions
Test / Python Linux (push) Blocked by required conditions
* Tidy up `operator[]` code

* Add weird index operator for `FUN_1002ddc0`

* Cleanup

* Add Matrix4 BETA10 annotations, fix typo

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-06 07:50:34 -07:00
jonschz
1a15981324
Implement LegoCarBuildAnimPresenter::StreamingTickle() (#1109)
Some checks are pending
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Waiting to run
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Waiting to run
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Waiting to run
Build / Download original binaries (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Waiting to run
Build / MSVC 4.20 (push) Waiting to run
Build / Compare with master (push) Blocked by required conditions
Build / Upload artifacts (push) Blocked by required conditions
Format / C++ (push) Waiting to run
Format / Python (push) Waiting to run
Naming / C++ (push) Waiting to run
Test / Download original binaries (push) Waiting to run
Test / Python Windows (push) Blocked by required conditions
Test / Python Linux (push) Blocked by required conditions
* Implement LegoCarBuildAnimPresenter::StreamingTickle and dependents

* Fix naming issue

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-05 16:20:45 -07:00
jonschz
e6474b7fcd
Implement LegoCarBuildAnimPresenter::FUN_10079920() (#1108)
Some checks failed
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Has been cancelled
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Has been cancelled
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Has been cancelled
Build / Download original binaries (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Has been cancelled
Build / MSVC 4.20 (push) Has been cancelled
Format / C++ (push) Has been cancelled
Format / Python (push) Has been cancelled
Naming / C++ (push) Has been cancelled
Test / Download original binaries (push) Has been cancelled
Build / Compare with master (push) Has been cancelled
Build / Upload artifacts (push) Has been cancelled
Test / Python Windows (push) Has been cancelled
Test / Python Linux (push) Has been cancelled
* Implement `FUN_10079920()`

* Fix formatting

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-04 17:19:42 +02:00
Christian Semmler
fa6de9cb6b
Implement/match Pizza::FUN_10038220 (#1107)
Some checks are pending
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Waiting to run
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Waiting to run
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Waiting to run
Build / Download original binaries (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Waiting to run
Build / MSVC 4.20 (push) Waiting to run
Build / Compare with master (push) Blocked by required conditions
Build / Upload artifacts (push) Blocked by required conditions
Format / C++ (push) Waiting to run
Format / Python (push) Waiting to run
Naming / C++ (push) Waiting to run
Test / Download original binaries (push) Waiting to run
Test / Python Windows (push) Blocked by required conditions
Test / Python Linux (push) Blocked by required conditions
2024-10-03 21:43:18 +02:00
Cameron
4878727393
some educated guesses for unknown view manager names (#1106)
Some checks failed
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Failing after 1s
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Failing after 1s
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Failing after 1s
Build / Download original binaries (push) Failing after 7s
Format / C++ (push) Failing after 0s
Format / Python (push) Failing after 0s
Naming / C++ (push) Failing after 0s
Test / Download original binaries (push) Failing after 0s
Test / Python Windows (push) Has been skipped
Test / Python Linux (push) Has been skipped
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Has been cancelled
Build / MSVC 4.20 (push) Has been cancelled
Build / Compare with master (push) Has been cancelled
Build / Upload artifacts (push) Has been cancelled
* some educated guesses for unknown view manager names

* Formatting

* Pin pylint version

* Use snake case for consistency (limited to this class)

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-09-20 19:17:24 +02:00
jonschz
a942325b29
More functions in LegoCarBuild (#1104)
Some checks failed
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Failing after 0s
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Failing after 0s
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Failing after 0s
Build / Download original binaries (push) Failing after 7s
Format / C++ (push) Failing after 0s
Format / Python (push) Failing after 0s
Naming / C++ (push) Failing after 0s
Test / Download original binaries (push) Failing after 0s
Test / Python Windows (push) Has been skipped
Test / Python Linux (push) Has been skipped
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Has been cancelled
Build / MSVC 4.20 (push) Has been cancelled
Build / Compare with master (push) Has been cancelled
Build / Upload artifacts (push) Has been cancelled
* Add BETA10 annotations

* Clean up

* Implement multiple functions

* fix minor annotation error

* Undo formatting

* Fix formatting

* Implement more functions

* Rename variables, address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-14 16:14:11 -07:00
jonschz
f89ee5c13d
BETA10 import: Fix FUN_... collisions (#1105)
Some checks failed
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Waiting to run
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Waiting to run
Build / MSVC 4.20 (push) Waiting to run
Build / Compare with master (push) Blocked by required conditions
Build / Upload artifacts (push) Blocked by required conditions
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Failing after 0s
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Failing after 0s
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Failing after 0s
Build / Download original binaries (push) Failing after 7s
Format / C++ (push) Failing after 1s
Format / Python (push) Failing after 1s
Naming / C++ (push) Failing after 1s
Test / Download original binaries (push) Failing after 1s
Test / Python Windows (push) Has been skipped
Test / Python Linux (push) Has been skipped
* Improve BETA10 name import, refactor

* Run formatter

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-14 07:16:12 -07:00
jonschz
7a6935a165
Progress on LegoCarBuildAnimPresenter (#1103)
Some checks failed
Analyze / ${{ matrix.who }} annotations (CONFIG) (push) Failing after 0s
Analyze / ${{ matrix.who }} annotations (ISLE) (push) Failing after 0s
Analyze / ${{ matrix.who }} annotations (LEGO1) (push) Failing after 0s
Build / Download original binaries (push) Failing after 7s
Format / C++ (push) Failing after 0s
Format / Python (push) Failing after 0s
Naming / C++ (push) Failing after 0s
Test / Download original binaries (push) Failing after 0s
Test / Python Windows (push) Has been skipped
Test / Python Linux (push) Has been skipped
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-clang-i686 msystem:clang32 name:msys2 clang32 no-dx5-libs:true shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[clang-tidy:true msys-env:mingw-w64-i686 msystem:mingw32 name:msys2 mingw32 shell:msys2 {0} werror:true]) (push) Has been cancelled
Build / Current ${{ matrix.toolchain.name }} (map[name:MSVC setup-cmake:true setup-msvc:true setup-ninja:true shell:sh]) (push) Has been cancelled
Build / MSVC 4.20 (push) Has been cancelled
Build / Compare with master (push) Has been cancelled
Build / Upload artifacts (push) Has been cancelled
* Progress on `LegoCarBuildAnimPresenter`

* Rename argument

* fix copy-paste error

* Address review comments

* Remove obsolete comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-12 21:51:33 +02:00
jonschz
5d19b6afe3
Improve UnknownMx4DPointFloat::FUN_100040a0 (#1102)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-09 12:45:48 -07:00
jonschz
ece3550e62
Fix spurious reccmp warnings (#1101)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-08 22:00:08 +02:00
MS
4a01d15c36
MxStreamListMxDSAction helper functions (#1100)
* MxStreamListMxDSAction Find/FindAndErase

* Beta addrs for other stream lists
2024-09-06 13:13:16 -07:00
MS
97b3dcaa2c
Beta match* MxStreamer (#1099)
* Beta addrs

* Streamer changes

* Typo and comment. One more beta addr

* Rename member to m_controllers
2024-09-05 16:06:40 -07:00
jonschz
2b14d3d6a5
Implement parts of LegoCarBuild and dependents (#1092)
* Implement parts of `LegoCarBuild` and dependents

* Fix BETA10 offset

* Fix constants

* Code style: Rename parameters

* Linter fixes v2

* Linter errors v3

* Add BETA10 variable names for presenters

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-09-03 13:50:30 -07:00
MS
73938ac2ab
Beta match MxDSFile (#1098) 2024-09-01 17:08:53 -07:00
MS
30be1ed4b8
Brute force string search for BETA10 (#1097)
* Brute force string search for BETA10

* improved string check

* Skip this unless source binary is debug

* remove misplaced comment
2024-09-01 22:34:58 +02:00
MS
2af5f87051
MxTimer touch-up (#1096) 2024-09-01 11:51:33 -07:00
MS
f242130382
Sanitize args for assert in BETA10 (#1095) 2024-08-31 22:37:32 -07:00
MS
990725ba0b
Add more MSVC annotations for LEGO1 (#1094) 2024-08-31 20:02:19 -07:00
jonschz
0256fc4acf
Fix Ghidra import call type (#1093)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-31 08:00:35 -07:00
jonschz
b898d98515
BETA10: reccomp support and Ghidra imports (#1091)
* Implement core functionality (before linter)

* run linter + formatter

* Review: remove redundant code

* Implement end of range check for vtables

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-29 11:54:23 -07:00
jonschz
ce3fc57025
BETA10 Readme additions (#1090)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-23 12:22:03 -07:00
jonschz
1b46859cf6
Implement RaceSkel, add BETA10 annotations (#1088)
* Implement `RaceSkel`, add BETA10 annotations

* fix formatting

* Fix order

* Address some review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-21 22:30:27 +02:00
jonschz
b649902578
Various fixes in constructors (#1089)
* Various fixes in constructors

* Address review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-21 10:42:49 -07:00
jonschz
757df96c0d
Implement/match LegoRaceMap (#1087)
* Implement/match LegoRaceMap

* Fix CI, address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-17 11:30:39 -07:00
jonschz
34047c0cb6
Implement/match LegoCarRaceActor::VTable0x6c (#1085)
* Implement/match `LegoCarRaceActor::VTable0x6c`

* Rename variable

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-17 08:59:22 -07:00
MS
9555aaba74
Remove USHRT_MAX from ParseExtra functions (#1086) 2024-08-17 08:56:25 -07:00
Christian Semmler
30e9e43cda
Implement/match RegistrationBook::HandlePathStruct (#1084) 2024-08-12 18:21:18 +02:00
MS
9ab3954bbb
Minor tweak to MxList template (#1083)
* Beta addrs for MxList and related functions

* MxList DeleteAll and Empty functions
2024-08-11 13:23:39 -07:00
Christian Semmler
53924c3d2d
Implement/match TowTrack::HandleEndAction (#1082)
* Implement/match TowTrack::HandleEndAction

* Fix offset
2024-08-09 20:32:46 +02:00
Christian Semmler
7cf6c78d20
Implement TowTrack::HandlePathStruct (#1081) 2024-08-09 04:09:08 +02:00
jonschz
a6a241b09d
Implement LegoCarRaceActor::VTable0x70 and VTable0x1c (#1079)
* Implement/match `LegoCarRaceActor::VTable0x70`

* Add BETA10 annotations

* Start with VTable0x9c, fix data type

* basic BETA10 code completion

* small fix

* small fix

* cleanup

* Fix formatting

* Address review comments

* review comment

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-08 12:55:01 -07:00
MS
51d4dead1a
MxSmack::LoadHeader (#1080) 2024-08-07 20:19:12 -07:00
jonschz
e09acfcddb
Implement/match LegoCarRaceActor::VTable0x1c (#1078)
* Implement/match `LegoCarRaceActor::VTable0x1c`

* Fix formatting

* Fix LegoEdge::CWVertex()

* Fix more CI issues

* Trz to fix lvalue compile issue

* Fix formatting

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-04 21:13:12 +02:00
Christian Semmler
fe1b66938d
Implement/match TowTrack::FUN_1004dbe0 (#1076) 2024-08-03 20:31:49 +02:00
Christian Semmler
63586f88b2
Implement/match TowTrack::ActivateSceneActions (#1075)
* Implement/match TowTrack::ActivateSceneActions

* Add PlayAction
2024-08-03 20:17:17 +02:00
Christian Semmler
a1c6196bbc
Implement/match TowTrack::Leave and related (#1074) 2024-08-03 20:07:08 +02:00
Christian Semmler
f94d39bf63
Implement/match TowTrack::HandleClick (#1073) 2024-08-03 19:59:12 +02:00
jonschz
4a41671759
Implement/match LegoRaceActor (#1072)
* Implement LegoRaceActor, add annotations

* Change code duplication comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-08-02 22:29:21 -07:00
jonschz
412200ecbc
Ghidra Import: Support virtual inheritance (#1071)
* Implement/fix Ghidra imports for multiple and virtual inheritance

Unfortunately, the handling in Ghidra is still far from perfect. This is a good place to start, though.

* Support offsets in vbase pointers

* Support `this adjust`

* minor stylistic improvement

* Improvements to documentation

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-30 10:02:15 -07:00
jonschz
1f251ff817
Implement/match LegoCarRaceActor::FUN_10080590 (#1070)
* Implement/match `LegoCarRaceActor::FUN_10080590`

* Add vbtable annotations

* disable formatter for assertion

* Fix BETA10 annotations

* Address review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-28 20:13:18 +02:00
jonschz
f436b9365b
Implement/match the rest of LegoRaceCar, BETA10 improvements (#1069)
* Implement/match the rest of `LegoRaceCar`

* Add BETA10 annotations and improvements

* Undo incorrect change

* Add synthetic vbase destructors

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-27 18:24:36 +02:00
jonschz
0d385e27d0
Implement/match LegoRaceCar::VTable0x94 (#1068)
* Implement LegoRaceCar::VTable0x94

* Remove redundant inline modifiers

* Fix offsets

* Fix minor inconsistency

* Address review comments

* Address review comments, round 2

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-26 10:53:09 -07:00
jonschz
bc9abdc823
More legoracers functions (#1067)
* Implement/match LegoRaceCar::VTable0x70

* Fix datacmp errors

* minor fix

* Fix naming issue

* Address review comments, part 1

* Address review comments, part 2

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-18 13:20:59 -07:00
jonschz
210376f272
Implement LegoRaceCar::HandleSkeletonKicks and dependents (#1065)
* Implement `LegoRaceCar::HandleSkeletonKicks` and dependents

* Fix typo

* Spike to fix array comparisons (needs refactor)

* Refactor: Dedicated method for array element matching

* Address review comments

* Reformat with new version of black

* Apply more review comments

* Address more review comments

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-17 07:03:02 -07:00
MS
0760e4e7d7
Option to disable decomp asserts in MSVC (#1066) 2024-07-16 19:23:10 -07:00
jonschz
4a861faca3
Refactor file names based on BETA10 (#1064)
* Refactor file names based on BETA10

* Extract LegoDeviceEnumerate to dedicated file

* Fix compiler errors

* Migrate contiguous block of code to `LegoDeviceEnumerate`

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-08 14:52:50 -07:00
jonschz
afa5b90117
Implement LegoRaceCar::FUN_10012ff0(), refactoring (#1063)
* Implement `LegoRaceCar::FUN_10012ff0()`, refactor based on BETA10

* Add BETA10 annotations
* Rename functions and variables based on BETA10 assertions

* Address issues raised by linter

* Rename variable, add BETA10 vtables

* Rename legoracecar files to legoracers

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-07-07 05:10:46 -07:00
Christian Semmler
a75ace8a53
Implement/match TowTrack::VTable0x70 (#1062) 2024-07-06 04:44:01 +02:00
Christian Semmler
4833d2edf1
Update README.md 2024-07-05 04:51:04 +02:00
Christian Semmler
8075264767
Update README.md 2024-07-05 04:49:36 +02:00