Anonymous Maarten
bb4db6caac
Use SDL3 functions in more locations ( #44 )
...
* Use strcasecmp, strncasecmp, strlwr, strupr and itoa from SDL
* Use SDL_GetTicks instead of timeGetTime
* Use MxDSFile::OPEN_READ instead of OF_READ
* Use SDL_IOStream to read bitmaps
* Use SDL_LogXXX instead of OutputDebugString
* Undo mxvideoparam.h change
* Revert "Undo mxvideoparam.h change"
This reverts commit 4a20cf6c46 .
* Fix _MxTrace
* Reapply "Undo mxvideoparam.h change"
This reverts commit b3a09dc520 .
* fix _MxTrace
* Use __declspec(dllexport) for exporting symbols from dll
Refactored CMake script such that all objects are passed to the lego1 library.
* clang-format
* fix msvc build
* MSVC fixed for real now?
* Forgot about d3drm_guid
* Fix naming issue
* Use Uint64 in LegoCarBuild::Tickle for dTime
2024-12-24 18:04:46 -07:00
Christian Semmler
69bac21488
Merge remote-tracking branch 'isle/master' into merge
2024-12-23 09:38:55 -07:00
Christian Semmler
1b99d75543
Refactor geom library into geom and shape ( #1263 )
...
* Refactor `geom` library into `geom` and `util`
* Rename to `shape`
2024-12-23 17:25:23 +01:00
Christian Semmler
5b19d7953a
Refactor MxStreamList based lists ( #1260 )
...
* Refactor stream lists
* Fix naming
* Fix header inclusion
* Fix annotations
* Move function definitions to header
* Remove mxstreamprovider.cpp
* Naming
2024-12-23 16:32:16 +01:00
Christian Semmler
cbc3d7227e
Implement/match LegoWEGEdge functions ( #1259 )
...
* Implement/match `LegoWEGEdge::VTable0x04`
* Implement/match `LegoWEGEdge::FUN_1009aea0`
* Rename
2024-12-22 19:47:39 +01:00
jonschz
3e6d789324
Add all BETA10 ClassName() functions and vtables ( #1258 )
...
* Add all BETA10 `ClassName()` functions and vtables
* Run formatter, fix copy error
* Fix copy error
* Add BETA10 library functions
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-22 08:13:34 -07:00
Christian Semmler
b03de35e30
Further accuracy improvement on LegoNavController::Notify ( #1255 )
...
* Further accuracy improvement on `LegoNavController::Notify`
* Use enum
2024-12-21 23:38:22 +01:00
Christian Semmler
a987533ba1
Fix a bug in LegoNavController, improve accuracy ( #1254 )
...
* Fix a bug in `LegoNavController`, improve accuracy
* Fix
2024-12-21 23:17:45 +01:00
Christian Semmler
fe2a65c8da
Implement/match LegoNavController::Notify ( #1253 )
...
* Implement/match `LegoNavController::Notify`
* Move function
* Add to total function count
* Add OPT:REF to lego1
2024-12-21 22:41:47 +01:00
Christian Semmler
bcc41256f8
Add LegoOmni::World enum ( #1252 )
2024-12-21 18:08:55 +01:00
jonschz
3e427ab03e
Improve Helicopter::Animate() ( #1251 )
...
* Small improvements
* More improvements
* Small drive-by refactor
* Do not inline `UnknownMx4DPointFloat::FUN_10004520()`
* Fix `Act3Brickster::Animate`
* Fixes
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-21 17:21:22 +01:00
Christian Semmler
c9acd9a49f
Minor fixes ( #1248 )
2024-12-20 20:23:01 +01:00
Christian Semmler
6cb01b02ae
64bit fix ( #42 )
2024-12-20 20:13:59 +01:00
Christian Semmler
e73f60e2c6
merge from isle/master
2024-12-20 11:54:06 -07:00
Christian Semmler
2b4f71e17d
Implement/match Act3Cop::FUN_10040360 ( #1247 )
...
* Implement/match `Act3Cop::FUN_10040360`
* Remove comments
* Modern compiler fix
2024-12-20 19:49:18 +01:00
Anonymous Maarten
6f3f8c2ade
Implement LegoVideoManager::DrawFPS ( #1243 )
...
* Implement LegoVideoManager::DrawFPS
* Implement MxDisplaySurface::FUN_100bc8b0
* Match functions
* type
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-20 17:05:40 +01:00
jonschz
7ed2ac9ccc
Progress on Helicopter::FUN_100042a0 ( #1242 )
...
* Implement `LegoCameraController::FUN_100123b0`
* Improve `UnknownMx4DPointFloat::Unknown7` match, add BETA10
* Add draft for `FUN_100042a0`
* Improve match
* Match
* Use better naming
* Remove comments
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-20 01:27:14 +01:00
Ramen2X
4cd4b55ae7
replace directinput joystick APIs with SDL ( #41 )
2024-12-19 19:25:49 -05:00
Anonymous Maarten
a8729dfef6
glD3DRMIMAGE::CreateBuffer, LegoVideoManager::EnableRMDevice and LegoVideoManager::DisableRMDevice ( #1241 )
...
* Implement TglD3DRMIMAGE::CreateBuffer (ecx/edi are swapped)
* Implement LegoVideoManager::EnableRMDevice
* Implement LegoVideoManager::DisableRMDevice
* clang-format
* Match `LegoVideoManager::EnableRMDevice`
* Remove padding
* Fix naming
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-19 22:52:33 +01:00
Christian Semmler
cb38cf7673
Implement/match Act3Brickster::FUN_100417c0 ( #1240 )
...
* Implement/match `Act3Brickster::FUN_100417c0`
* Move function
* Rename var
* Revert "Rename var"
This reverts commit c9ca75ae7f1d894f976ce6d383d5b4d13ead99a5.
2024-12-19 20:22:34 +01:00
Christian Semmler
18fc084a3f
Match LegoGameState::Load ( #1239 )
2024-12-18 01:10:42 +01:00
Christian Semmler
90c687bde0
Implement/match Act3Brickster::FUN_10042300 ( #1238 )
...
* Implement/match `Act3Brickster::FUN_10042300`
* Add comment about assignment operator
* Add another comment
* Fix
* add back BETA annotation
2024-12-17 23:16:00 +01:00
Christian Semmler
66e3c9a2e1
Implement/match Act3Brickster::Animate ( #1237 )
...
* Implement/match `Act3Brickster::Animate`
* Improve loop
2024-12-17 19:11:47 +01:00
Christian Semmler
f51b1867ee
Use SDL3 for filesystem access ( #36 )
...
* Use SDL IOStream in for MXIOINFO
* Use SDL IOStream for WDB file
* Use SDL IOStream for LegoStorage
* Update README.md
* Fixes
* Add names to skip.yml
* Add #include <stdio.h> where necessary
2024-12-16 22:25:52 +01:00
Christian Semmler
aa3a66cd82
Merge remote-tracking branch 'isle/master'
2024-12-16 14:14:14 -07:00
Christian Semmler
cfa3769abf
Use macros for Seek modes ( #1235 )
...
* Use macros for `Seek` modes
* Fix syntax
* Use `OF_READ`
* Add names to skip.yml
* Revert "Add names to skip.yml"
This reverts commit 28b6f577dc0c47070064070f4655a15dab3bda25.
2024-12-16 22:13:52 +01:00
Christian Semmler
3b7e60bdc0
merge from isle/master
2024-12-15 11:59:19 -07:00
Christian Semmler
615c3a5047
Implement/match Act3Cop::Animate ( #1233 )
...
* Implement/match `Act3Cop::Animate`
* Fix
2024-12-15 19:48:47 +01:00
Christian Semmler
73b9e9a06f
Fix LegoAct2::Notify ( #1234 )
2024-12-15 19:45:17 +01:00
Christian Semmler
1b4142c6a9
Implement/match Write functions in LegoAnim class ( #1232 )
...
* Implement/match `LegoAnim::Write`
* Implement remaining Write functions
* Bump total function count
2024-12-15 18:15:10 +01:00
jonschz
2e7f2edbf1
Implement/match Act3Cop::ParseAction ( #1230 )
...
* Implement/match `Act3Cop::ParseAction`
* Fix formatting
* Address review comment
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-15 18:09:29 +01:00
Christian Semmler
661c76c6e0
Implement/match Act3Shark::Animate ( #1231 )
...
* Implement/match `Act3Shark::Animate`
* Add BETA annotation
* Raise max functions
* Mark as FUNCTION
2024-12-15 17:18:25 +01:00
Christian Semmler
47c0e1a037
merge from isle/master
2024-12-15 08:24:45 -07:00
jonschz
ace2a9f047
Add g_copDest ( #1229 )
...
* Implement `AddCop` and `g_copDest`
* Fix formatting
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-15 05:50:52 -07:00
Christian Semmler
07655651f5
Convert DirectSound logic to miniaudio ( #34 )
...
* Convert DirectSound logic to miniaudio
* Update legocachsound.cpp
2024-12-14 20:36:13 -07:00
Christian Semmler
2d74f14de0
Implement/match Act3::FUN_10072ad0 ( #1228 )
...
* Implement `Act3::FUN_10072ad0`
* Improve match
* Improve match
* Match
2024-12-14 14:30:21 -07:00
Christian Semmler
16730ef9c1
Implement/match Act3Ammo::FUN_10053db0 ( #1227 )
2024-12-14 21:36:14 +01:00
Christian Semmler
67b4553eaa
Implement/match LegoPathController::FUN_1004a380 ( #1226 )
2024-12-14 20:02:48 +01:00
jonschz
413bd5ae7b
Implement/match LegoJetski::HitActor ( #1225 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 19:46:51 +01:00
jonschz
97ff27af9e
Implement/match LegoPlantManager::FUN_10026410 ( #1223 )
...
* Implement/match `LegoPlantManager::FUN_10026410`
* Full match on LEGO1 and BETA10
* Improve `LegoBuildingManager::FUN_10030630`
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 16:35:08 +01:00
jonschz
57aa5a9f8a
Refactor legoracers.h and legoracers.cpp ( #1224 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-14 07:03:19 -07:00
jonschz
5a6415e0cf
Implement/match Act2Actor::FUN_10019b90 ( #1222 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-13 16:19:55 -07:00
Christian Semmler
1aeb458be1
Implement/match Act3Ammo::Animate ( #1221 )
...
* Implement/match `Act3Ammo::Animate`
* Match
* Rename
* Rename
* Rename
2024-12-13 22:56:26 +01:00
Christian Semmler
6da2faa48c
Refactor actor states, define enum ( #1220 )
...
* Refactor actor states, define enum
* Revert
* Rename `UpdateState` to `Animate`
2024-12-13 20:30:50 +01:00
Christian Semmler
ce3f71ea0f
Rename LegoPathActor::VTable0x70 to UpdateState ( #1219 )
2024-12-13 19:20:03 +01:00
Christian Semmler
263d7d1e4f
Implement/match Act3::GoodEnding ( #1218 )
2024-12-13 18:49:45 +01:00
Christian Semmler
de7bc813ca
Implement/match LegoAct2::BadEnding ( #1217 )
...
* Implement/match `LegoAct2::BadEnding`
* Name some vars
2024-12-13 17:26:06 +01:00
Christian Semmler
32392a8e55
Fix Act2Actor::FUN_10019700 ( #1216 )
2024-12-13 17:12:53 +01:00
jonschz
054f56fd9f
Implement Act2Actor::FUN_10019700 ( #1215 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-12-12 17:54:51 -07:00
Christian Semmler
1bfeebd004
Implement most of LegoJetski, refactor ( #1214 )
...
* Implement most of `LegoJetski`, refactor
* Fix
2024-12-12 21:17:25 +01:00