Ramen2X
2b3e7176d3
make all calls to winapi format-agnostic ( #1470 )
2025-05-11 15:03:32 -04:00
Christian Semmler
fa126f77ce
Merge remote-tracking branch 'isle/master' into mergeisle7
2025-05-09 09:27:32 -07:00
Florian Kaiser
9027849848
Rename parameter p_stack to p_stackSize in MxThread::Start method ( #1452 )
2025-05-09 12:44:53 +02:00
Florian Kaiser
0a2d598b57
Refactor Deserialize method parameters in MxDS classes to use p_flags instead of p_unk0x24 ( #1450 )
2025-05-08 12:26:48 -07:00
Christian Semmler
02c38d55a3
Match MxDisplaySurface::SetPalette ( #1438 )
...
* Match `MxDisplaySurface::SetPalette`
* Match
2025-05-05 17:19:23 -07:00
Christian Semmler
7670f89f03
Merge remote-tracking branch 'isle/master' into mergeisle6
2025-04-26 09:16:06 -07:00
MS
688c203f70
Beta match and cleanup of MxDS* classes ( #1432 )
...
* Clean up / beta match MxDS* classes
* ;)
2025-04-10 22:59:55 -04:00
Christian Semmler
9d01f67abb
Merge remote-tracking branch 'isle/master' into mergeisle4
2025-04-06 08:36:09 -07:00
MS
4ec020ed89
MxVideoPresenter::IsHit to 100% ( #1428 )
2025-04-06 10:36:13 -04:00
MS
93d6c18c9a
Fix AlphaMask functions ( #1425 )
2025-04-03 20:18:00 -04:00
MS
8821593b63
Improve MxControlPresenter::FUN_10044270 ( #1422 )
2025-04-03 16:25:40 -04:00
Christian Semmler
6220ab32c3
Match FUN_100b7220 ( #1418 )
2025-03-16 23:19:13 +01:00
Christian Semmler
1027a80d9e
Match MxEventPresenter::PutData ( #1417 )
2025-03-16 23:02:13 +01:00
Christian Semmler
aa60386196
Match MxStreamController::RemoveSubscriber ( #1416 )
2025-03-16 22:59:10 +01:00
Christian Semmler
622f00f628
Merge remote-tracking branch 'isle/master' into mergeisle3
2025-03-14 13:59:52 -07:00
MS
d663e26321
Use MxGeometry header ( #1399 )
...
* Use MxGeometry header
* Fix comment
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2025-03-11 21:13:13 -04:00
jonschz
87d13aa277
Add various BETA10 references and fixes ( #1398 )
...
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2025-03-02 19:59:03 +01:00
Christian Semmler
67b25b0bcc
Adapt MxRegion.h ( #1393 )
...
* Adapt MxRegion.h
* Use specific GH action version
* Disable clang32 for now
* Fix regression
* Add space
* Add BETA annotations
2025-02-27 03:30:11 +01:00
Christian Semmler
44d131ad18
Merge from isledecomp/isle
2025-02-17 17:52:38 -07:00
jonschz
777dfa82ec
Match Infocenter::HandleControl ( #1386 )
...
* Add BETA10 references
* Refactor non-existent getters
* Infocenter::HandleControl maybe down to entropy
* Rename variable
* More refactoring
* Refactor public variable
* 100 %
* Fix clang-format
* Fix clang-format
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2025-02-18 01:12:51 +01:00
Christian Semmler
21b6605ad8
Fix miniaudio glitch by disabling Doppler effect ( #55 )
2025-01-11 19:05:16 +01:00
Christian Semmler
a31900a6d4
Merge remote-tracking branch 'isle/master' into isleupd
2025-01-06 16:15:16 -07:00
MS
2cdbd1b94f
Beta match MxDSStreamingAction ( #1314 )
...
* Beta match MxDSStreamingAction
* Call the operator directly
2025-01-06 15:41:40 -07:00
MS
93815ca545
Refactor surrounding MxDSChunk utility functions ( #1313 )
2025-01-06 13:20:47 -07:00
MS
a7f008568a
Add MXIOINFO::CreateChunk ( #1306 )
2025-01-01 19:23:16 +01:00
Christian Semmler
e568740208
Merge remote-tracking branch 'isle/master'
2024-12-29 14:46:00 -07:00
Anonymous Maarten
c77b5869f5
Fix warnings triggered by isle-portable ( #1304 )
...
* Replace computed constant with more readable computed constants
* LegoAnim::GetActorUnknown0x04 returns a number, not a pointer
* Add macro for creating RGB555 colors
* Texture pixel data is passed through as const data
* Compare palette index against 0 instead of NULL pointer
* warning: deleting 'void*' is undefined [-Wdelete-incomplete] warning
Some DirectX sdk's declars D3DRMIMAGE::buffer1 and D3DRMIMAGE::buffer2
as a void pointer.
* Don't use floats
* Fix wrong op
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-29 22:45:00 +01:00
Christian Semmler
b0a4d0e06b
Merge remote-tracking branch 'isle/master' into isle-merge3
2024-12-29 09:21:06 -07:00
Christian Semmler
724a566c2e
Match MxDiskStreamProvider::FUN_100d1780 ( #1299 )
2024-12-28 18:41:35 +01:00
Anonymous Maarten
05cfe4ee25
Even more SDL usage ( #49 )
...
* Texture pixel data is passed through as const data
* Use SDL_Surface/SDL_Palette in LegoImage
* Use SDL_Process to run subprocess
* Pass SDL_Window handle to SDL_ShowSimpleMessageBox
this makes sure the message dialog is shown as modal dialog and is on top
* Log errors during initialization
* Show SDL error during initialization
* Include <climits> for INT_MAX
* Replace _access with SDL_GetPathInfo
* Use SDL_RemovePath instead of DeleteFile
* Use SDL_RenamePath instead of MoveFile
* Use MxS32 in legoutils.cpp
* Update LEGO1/lego/legoomni/src/common/legoutils.cpp
* Naming
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-28 16:52:34 +01:00
Christian Semmler
8afa64048b
More BETA matches in MxDiskStreamController ( #1292 )
...
* More BETA matches in `MxDiskStreamController`
* Fix
2024-12-27 21:03:04 +01:00
Christian Semmler
2422d997cf
Match some more MxDiskStreamController functions ( #1291 )
2024-12-27 20:14:16 +01:00
Christian Semmler
a3b191f601
Match MxPresenter::StartAction ( #1290 )
2024-12-27 20:05:22 +01:00
Ramen2X
fb2e9fb5ec
rename MxSmack to MxSmk ( #1288 )
...
* rename MxSmack to MxSmk
* format
2024-12-27 13:00:56 -05:00
Anonymous Maarten
65adfe7d64
More use of SDL ( #47 )
...
* Use SDL_GetPerformance(Counter|Frequency) in MxStopWatch
* Fix flic.h for gcc Linux compiler
* cmake: remove left-over message
* Replace some more stricmp with SDL_strcasecmp
* Pass SDL_Window* to LEGO1.DLL, and pass window events through SDL event handler
* clang-format
* Use SDL_Timer for unknown input dragging events
* Fix naming
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-27 18:44:14 +01:00
Christian Semmler
e54bfb5656
Merge remote-tracking branch 'isle/master' into isle-merge
2024-12-25 08:56:17 -07:00
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
0f338a882b
Match some list functions in MxStreamController to BETA10 ( #1273 )
2024-12-24 22:42:20 +01:00
Christian Semmler
9db0e795f4
merge from isledecomp/isle
2024-12-23 11:29:21 -07:00
Anonymous Maarten
938a5d7f19
Implement MxDisplaySurface::VTable0x34 ( #1264 )
...
* Implement MxDisplaySurface::VTable0x34
* Match
* Remove function count since we got them all
* Update README.md
* Remove emphasis on work-in-progress
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-12-23 19:18:14 +01:00
Christian Semmler
5ffa91d5fd
Match MxDiskStreamController::FUN_100c7db0 ( #1265 )
...
* Match `MxDiskStreamController::FUN_100c7db0`
* Modern compiler fix
2024-12-23 19:06:45 +01:00
Christian Semmler
69bac21488
Merge remote-tracking branch 'isle/master' into merge
2024-12-23 09:38:55 -07: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
Joshua Peisach
48c327ca5a
Implement MxDisplaySurface::VTable0x2c ( #1262 )
...
* Implement MxDisplaySurface::VTable0x2c
* fix header namespace
* Incorporate improvements from @madebr branch
* Naming
* Naming
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com>
2024-12-23 16:17:36 +01:00
MS
1f582eb610
Implement MxDisplaySurface::VTable0x24 ( #1261 )
...
* MxDisplaySurface::VTable0x24
* Fix stride/length check in vtable24 and vtable28
2024-12-22 20:21:07 -07:00
MS
276ad8d735
MxDSBuffer::ParseChunk to 100% (#1257 )
...
* MxDSBuffer::ParseChunk to 100%
* Restore SUCCESS tests
2024-12-21 20:03:12 -07:00
MS
fc93b84655
MxDSBuffer::FUN_100c67b0 100% ( #1250 )
2024-12-21 00:36:57 -07:00
Christian Semmler
5a61cf6566
Move CreateStreamObject to proper location ( #1249 )
2024-12-20 22:15:52 +01:00
Christian Semmler
e73f60e2c6
merge from isle/master
2024-12-20 11:54:06 -07:00
MS
bfc6d460a8
MxDSBuffer::SkipToData to 100% (#1245 )
...
* MxDSBuffer::SkipToData to 100%
* Add blank line
2024-12-20 19:23:24 +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
Christian Semmler
d3212a0523
Fix repeating sounds in MxWavePresenter (again) ( #40 )
...
* Commit
* Use audio buffer
* Add assert for buffer
* Fix naming
2024-12-18 22:27:29 +01:00
MS
9c951c4974
Implement MxDisplaySurface::DrawTransparentRLE ( #1236 )
...
* Implement MxDisplaySurface::DrawTransparentRLE
* ncc fix
2024-12-17 01:07:39 -07: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
874714a40d
Fix repeating sounds in MxWavePresenter ( #35 )
2024-12-16 00:29:41 +01:00
Christian Semmler
d22c4cd1f2
merge from isle/master
2024-12-07 10:17:25 -07:00
Christian Semmler
94ce89cbaa
(Proposal) Introduce arithmetic operators to Vector2 ( #1193 )
2024-12-07 17:26:22 +01:00
MS
7ece9cf37b
Fix MxParam casts in Notify functions ( #1188 )
...
* First batch
* Second batch
2024-12-03 15:51:03 -07:00
Christian Semmler
5f0575124f
Merge from isle/master
2024-11-24 08:01:05 -07:00
MS
5e0dc1a160
Beta match progress for flic.cpp ( #1162 )
2024-11-22 01:07:40 +01:00
Christian Semmler
9f9294694d
Merge remote-tracking branch 'isle/master'
2024-11-09 10:11:57 -07:00
jonschz
4c0aae720b
Implement LegoCarBuild::FUN_10024890() and others, refactor ( #1126 )
...
* Commit finished code changes
* Add enum data type
* Refactor away GetCurrentArea, SetCurrentArea
* Clean up and add FUN_10024890
* Add `SetPartObjectIdByName()`
* Fix naming error
* Address review comments, part 1
* Address review comments, part 2
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-11-01 09:21:15 -07:00
Christian Semmler
bf5379992e
merge from isledecomp/isle
2024-10-26 08:06:31 -07:00
jonschz
b5fee6b240
Complete LegoCarBuildAnimPresenter ( #1114 )
...
* Complete `LegoCarBuildAnimPresenter`
* fix CI errors
* Drive-by BETA10 fixes
* Address review comments
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-20 14:00:44 -07:00
jonschz
974cd7ce7c
Implement LegoCarBuildAnimPresenter::FUN_10079160() and others ( #1111 )
...
* Implement `LegoCarBuildAnimPresenter::FUN_10079160()` and others
* Address review comments
---------
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2024-10-11 20:21:33 +02:00
Christian Semmler
9397458854
merge from isledecomp/isle
2024-10-03 12:14:05 -07:00
jonschz
7a6935a165
Progress on LegoCarBuildAnimPresenter ( #1103 )
...
* 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
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
Christian Semmler
318c46b881
merge
2024-09-05 12:09:19 -07:00
MS
73938ac2ab
Beta match MxDSFile ( #1098 )
2024-09-01 17:08:53 -07:00
MS
2af5f87051
MxTimer touch-up ( #1096 )
2024-09-01 11:51:33 -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
MS
9555aaba74
Remove USHRT_MAX from ParseExtra functions ( #1086 )
2024-08-17 08:56:25 -07: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
5547f47e84
fix merge error
2024-08-08 13:12:07 -07:00
Christian Semmler
03781da2ed
merge
2024-08-08 13:07:47 -07:00
MS
51d4dead1a
MxSmack::LoadHeader ( #1080 )
2024-08-07 20:19:12 -07:00
Christian Semmler
be12560248
SDL3 fixes ( #31 )
2024-07-28 19:18:01 +02:00
Christian Semmler
49a304d0b9
merge
2024-07-04 16:09:48 -07:00
MS
14653070cc
Refactor surrounding MxBitmap::GetAdjustedStride ( #1057 )
...
* Refactor surrounding MxBitmap::GetAdjustedStride
* Remove this-> from MxDisplaySurface
2024-07-04 09:50:04 -07:00
Christian Semmler
b17762ebe3
merge
2024-07-02 12:19:13 -07:00
MS
05fa715550
Add MxTrace function ( #1054 )
2024-07-02 10:46:40 -07:00
Anonymous Maarten
659a54b221
Add support for building x64 executables ( #29 )
...
* d3drm: store LPVOID data instead of DWORD
* m_extraCharacterId is an integer, not a pointer
* cmake: look for iniparser using config file first, then try our custom module file
Our custom module file is still useful.
My linux distro does not package the cmake files.
* x86's stdcall becomes MS's x64 calling canvention
* Fix 64-bit mxdsbuffer pointer arithmetic
* Casting from void* to a smaller-sized integer needs an intermediate equally-sized integer
* Don't cast address to scalar (this is fishy)
* Add mingw64 build to the ci matrix
* Ignore -Wdiscarded-qualifiers warning with const vtables
* Ignore different 'const' qualifiers with MSVC
* Create d3dxof import library for MSVC
* DESCRIPTION in .def file(s) is deprecated
* Assume mmx is supported on x64, require a test for x86 and disabled on other archs
* 32- and 64-bit LEGO1.dll export different symbol names
* Introduce d3drm_guid containing the guids of d3drm
* Disable __wine_dbg_cdecl
* Include d3drm directory with EXCLUDE_FROM_ALL
* lego1 leaks d3drm headers
* Add dxfile.h
* Add 64-bit MSVC to the build matrix
* cmake: using ISLE_USE_DX5 means going all-in
* Load d3dxof.dll dynamically
* cmake: don't emit a warning about bitness anymore
2024-06-25 18:47:43 -07:00
Anonymous Maarten
554a679dc0
Merge commit '8113a17167e92133f5a0793967bf1e485dafd07a' into new-isle-decomp
2024-06-25 20:22:08 +02:00
Anonymous Maarten
ec19d5edb0
Fix mingw build + copy d3drm from wine ( #25 )
...
* Fix engineConfig declaration crossing jump
This fixes the following error:
```
/src/isle-portable/LEGO1/omni/src/audio/mxsoundmanager.cpp: In member function 'virtual MxResult MxSoundManager::Create(MxU32, MxBool)':
/src/isle-portable/LEGO1/omni/src/audio/mxsoundmanager.cpp:119:1: error: jump to label 'done'
119 | done:
| ^~~~
/src/isle-portable/LEGO1/omni/src/audio/mxsoundmanager.cpp:78:22: note: from here
78 | goto done;
| ^~~~
/src/isle-portable/LEGO1/omni/src/audio/mxsoundmanager.cpp:84:26: note: crosses initialization of 'ma_engine_config engineConfig'
84 | ma_engine_config engineConfig = ma_engine_config_init();
| ^~~~~~~~~~~~
```
* Fix 'invalid conversion from 'SDL_FunctionPointer' {aka 'void (*)()'} to 'void*'
* /SAFESEH:NO is a VC thing
* SDL3 is still instable
* Cannot forward declare and use enum
* Remove MusicManager from public LEGO1.DLL interface
* Copy d3d from wine git 6c5d17af07a318d754c0c21023b2d162a0d3725d
* Build d3drm-wine with 32-bit mingw
* cmake: move 3rd party targets to cmake script in 3rdparty directory
* cmake: bump minimum required CMake version to 3.25 to allow adding a subproject with SYSTEM automatically applied
An alternative would be to use SYSTEM in target_include_directories in the 3rd party cmake script.
* Add a minimal Findiniparser.cmake (not all distributions carry the upstream iniparser-config.cmake files)
* Add wine's d3drm headers
* cmake: merge ISLE_USE_DX5_LIBS into ISLE_USE_DX5
* cmake: Build all shared libraries in the binary output directory (to avoid PATH issues)
* ci: enable msys2 mingw32 build
* Disable clang-tidy on d3drm wine
* Thread functions must have SDLCALL call convention
* cmake: disable clang-tidy for miniaudio and libsmacker as well
* Hopefully fix c++ format and skip ncc naming violation
* clang-format violations keep up popping out of nowhere
* No need for lego/legoomni/include
* ncc: define SDLCALL as empty instead
2024-06-25 20:02:58 +02:00
Christian Semmler
806afaa210
Replace DirectSound with miniaudio ( #21 )
...
* Add miniaudio
* WIP
* static const
* Fix missing looping
* Fix volume
* Implement 3D sound, WIP
* Remove unused WinMM code
* Update README.md
* Fixes
* Fix naming
* Fix naming
* disable ma threading
* Invert Z axis for OpenGL system
* Update comment
* Set rolloff
* Fix minimize/maximize suspension
* Rename function
* SDL3: changed macro name
2024-06-25 20:02:58 +02:00
Anonymous Maarten
d537d69d13
Merge commit 'd869d565c282b89bffefd8b298048dfbbbc7808b' into new-isle-portable
2024-06-25 20:02:43 +02:00
Anonymous Maarten
974cb8e6d3
Merge commit 'c22c6f337960f0c4c2f1170e857417926cbeeb0f' into new-isle-portable
2024-06-25 20:00:25 +02:00
Christian Semmler
71559309a9
Rename InitPresenters to Create, remove this keyword ( #1000 ) ( #20 )
2024-06-25 19:57:18 +02:00
Anonymous Maarten
3d59615274
Merge commit 'ba378eb22442d71fe4f23a5c818cdfad16d3b16d' into new-isle-decomp
2024-06-25 19:57:16 +02:00
Anonymous Maarten
8d5bfb40d9
Merge commit '828b35e9d22c7a17f7af4906049b56e0b1f4c789' into new-isle-decomp
2024-06-25 19:55:43 +02:00
Christian Semmler
880ae98f0b
Remove dependency on dinput, use SDL keyboard state for navigation ( #14 )
...
* WIP
* Use SDL kb state for navigational keys
* Remove linking against dinput
2024-06-25 19:51:12 +02:00
Christian Semmler
dda6778665
Replace Windows registry with .ini file ( #10 )
...
* Replace Windows registry with .ini file
* Update README.md
* Update CMakeLists.txt
* comment
* set CMake policy
* Try this
* Try this
* Adjust comments
2024-06-25 19:51:12 +02:00
Christian Semmler
21502ecf18
Replace Windows threads with SDL threads ( #8 )
...
* Replace Windows threads with SDL threads
* Wait for thread in dtor
2024-06-25 19:51:12 +02:00
Christian Semmler
641ae70ab9
Replace Windows CriticalSection with SDL Mutex ( #7 )
...
* Replace Windows CriticalSection with SDL Mutex
* Update README.md
2024-06-25 19:51:12 +02:00
Christian Semmler
6f2481e8d6
Use USHRT_MAX instead of MAXWORD ( #975 ) ( #6 )
2024-06-25 19:51:12 +02:00
Anonymous Maarten
fc76114a36
Merge commit '76435d803f768be8da9821d72b98306a4b043ad2' into new-isle-decomp
2024-06-25 19:51:12 +02:00
Christian Semmler
6f1aebbb02
Add SDL3 and replace Windows semaphores ( #4 )
...
* Add SDL3 and replace Windows semaphores
* Try this
* Change for now
2024-06-25 19:50:27 +02:00
Anonymous Maarten
94081312c3
Merge commit 'ac41854149776a30b7acaa89808cee0a7cad7380' into new-isle-decomp
2024-06-25 19:50:27 +02:00
Christian Semmler
3ec9c98daf
Update TODO comments
2024-06-25 19:49:59 +02:00
Anonymous Maarten
c1f20a4502
Merge commit '6774784b37ec185297191c0dd87251a53f3c7e4c' into new-isle-decomp
2024-06-25 19:49:56 +02:00
Christian Semmler
a548770f7e
Add libsmacker to replace smack.lib
2024-06-25 19:48:56 +02:00
Anonymous Maarten
8113a17167
Backports of isle-portable x64 fixes ( #1044 )
...
* Introduce LPD3DRM_APPDATA typedef for setting d3drm appdata
* Fix warning about assigning const string literals to variable char pointers
* Don't cast pointers to integers on non-32-bit architectures
* memset 2nd argument is int
* Assume cpuid is available on x86_64, needs testing on i386 and unavailable on anything else
* Store HFILE in its own member variable
2024-06-25 17:56:30 +02:00
Christian Semmler
cf576ca78f
Add remaining classes, implement/match LegoObjectFactory ( #1026 )
...
* Add missing classes
* Match LegoObjectFactory
* Remove semicolon
* Add symbol
* Fix
2024-06-13 02:02:47 +02:00
Christian Semmler
be4c351d7d
Rename Start/StopTimer to Pause/Resume ( #1007 )
...
* Rename Start/StopTimer to Pause/Resume
* Fix
2024-06-09 13:39:22 -04:00
Christian Semmler
2147be19de
Rename InitPresenters to Create, remove this keyword ( #1000 )
2024-06-07 22:13:42 +02:00
MS
ba378eb224
Streamline MxVideoParamFlags ( #999 )
...
* Streamline MxVideoParamFlags
* Remove this-> from MxOmniCreateFlags
2024-06-06 17:15:57 -04:00
Christian Semmler
03ffb9c5de
Implement/match LegoCacheSound::Create and LegoLoadCacheSoundPresenter::StreamingTickle ( #986 )
...
* Implement/match LegoCacheSound::Create
* Naming
* Fix naming
* Fix parens
2024-06-01 17:29:37 -04:00
Christian Semmler
eeb81b7223
Use USHRT_MAX instead of MAXWORD ( #975 )
2024-05-30 22:02:58 +02:00
Christian Semmler
76435d803f
Style refactor omni/system components ( #974 )
...
* Style refactor omni/system components
* Fix
* Fix
2024-05-30 21:03:43 +02:00
MS
ac41854149
Add static HandlerClassName function ( #973 )
...
* Add static HandlerClassName function
* Use method in PresenterNameDispatch
2024-05-30 19:10:41 +02:00
MS
085bdbe74b
Beta match MxPalette ( #968 )
...
* Beta match MxPalette
* Modern compiler fix
2024-05-29 22:52:45 +02:00
MS
a88546baad
Refactor MxBitmap (again) ( #961 )
...
* Remove this
* Starting list of beta addrs
* Static for height-specific abs, fix StrechBits
* MxBitmap refactor
2024-05-28 09:32:51 +02:00
Cameron
d106aada11
basic name improvements ( #930 )
...
* basic name improvements
* clang-format
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-18 15:20:05 -04:00
Christian Semmler
9a05edd0a7
Implement/match LegoLoopingAnimPresenter ( #924 )
2024-05-15 20:34:36 +02:00
Christian Semmler
e4a899350e
Move strings to proper location in define.cpp ( #922 )
2024-05-14 16:43:06 +02:00
MS
4b386fe738
Tweak MxOmni::Destroy and add more beta annotations ( #887 )
...
* Fix long function name
* Omni getter beta annotations
* MxMisc asserts and beta annotations
* Helper function for MxNotificationManager list
2024-05-07 13:00:16 -04:00
MS
3519a8356b
Beta matching MxDSMediaAction ( #882 )
2024-05-03 12:51:58 -04:00
Christian Semmler
51adf75b9b
(Refactor) Use more forward declarations ( #881 )
...
* Use more forward declarations
* Use more forward declarations
* Add more forward declarations
* Fix
2024-05-03 18:19:12 +02:00
MS
446caa4ca1
Beta matching MxDSObject/MxDSAction ( #878 )
...
* Beta matching MxDSObject/MxDSAction
* MxDSAction copy constructor
* A bit more refactor
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-05-03 14:01:27 +02:00
MS
a9d67e4dd7
Beta match MXIOINFO ( #853 )
2024-04-26 04:57:10 -04:00
MS
612eec6889
Beta matching MxAtom classes ( #847 )
...
* Beta matching MxAtom classes
* Remove unused getter
* Restore operator!= for modern compilers
2024-04-25 17:43:42 +02:00
MS
311b27b697
Beta matching MxString ( #842 )
...
* Beta matching MxString
* Add /opt:ref for lego1. Reorder MxString header.
* const fix
* Remove lego1 Opt:ref
2024-04-24 12:10:51 -04:00
Christian Semmler
f1688be263
Make NotificationManager::Send take a const reference to notification ( #836 )
...
* Make NotificationManager::Send take a const reference to notification
* Fix virtual func
2024-04-22 14:11:38 +02:00
Christian Semmler
91d043a9ae
Implement/match LegoAnimMMPresenter::FUN_1004b450 ( #827 )
2024-04-20 17:18:19 +02:00
Christian Semmler
d5dd8db46e
Implement LegoAnimationManager::FUN_100609f0 / LegoTranInfo ( #820 )
...
* Implement LegoAnimationManager::FUN_100609f0 / LegoTranInfo
* use NULL
2024-04-19 17:42:28 +02:00
MS
9c6120fc37
Beta matching MxOmniCreateFlags ( #817 )
...
* Beta matching MxOmniCreateFlags
* Add newlines and swap order
* Add newline
2024-04-17 16:37:16 -04:00
Christian Semmler
11410890cd
Implement/match LegoPhonemePresenter::LoadFrame & PutFrame ( #812 )
...
* Implement/match LegoPhonemePresenter::LoadFrame & PutFrame
* add beta10 annotations
2024-04-17 13:26:11 +02:00
MS
536c4336f3
Beta matching MxVariableTable ( #811 )
2024-04-17 11:31:48 +02:00
MS
46362a0f6e
Fix some issues with annotations ( #808 )
2024-04-15 14:42:25 -04:00
MS
ce134e79ef
Use reference on MxDSObject Deserialize calls ( #767 )
2024-04-03 12:06:53 -04:00
Misha
d8fedab090
Implement MxDisplaySurface::VTable0x30 ( #705 )
...
* Implement MxDisplaySurface::VTable0x30
* improve match
* style
* fix style
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-20 21:44:30 +01:00
Misha
e5fa35fd99
Implement a few registrationbook methods ( #703 )
...
* Implement a few registrationbook methods
* Match RegistrationBook::HandleKeyPress
* Match RegistrationBook::CreateSurface
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-20 17:26:10 +01:00
Christian Semmler
52d74647be
Implement/match Isle::HandleEndAction and Isle::HandleElevatorEndAction ( #691 )
...
* WIP
* Match
2024-03-18 15:00:58 -04:00
Ramen2X
6cd5ffcf1a
implement RegistrationBook::ReadyWorld(), impl/match MxDisplaySurface::CopySurface() ( #678 )
...
* implement RegistrationBook::ReadyWorld()
* don't fix the size of letterBuffer
* Fix crash in MxStillPresenter::Clone
* Implement MxDisplaySurface::CopySurface
100% match
* improve accuracy
* invert HasRegistered check
* fix legogamestate structure, documentation tweaks
* this might be cleaner actually
* Update mxdisplaysurface.cpp
* Update legogamestate.h
* don't hardcode action ids in VTable0x64
* Match ~98%
---------
Co-authored-by: Misha <106913236+MishaProductions@users.noreply.github.com>
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-16 02:32:06 +01:00
Christian Semmler
78f0455463
Fix code quirk ( #676 )
2024-03-15 17:05:09 +01:00
MS
331aac73f2
Implement MxMemoryPool ( #671 )
...
* Implement MxMemoryPool
* Naming fix
* Annotations and size asserts
* hex padding
2024-03-13 21:44:07 -04:00
MS
dcc3946a08
Separate MxCore counter ( #663 )
2024-03-12 14:59:39 -04:00
MS
62a3f50287
KeyValueStringParse closer to beta version ( #656 )
...
* KeyValueStringParse closer to beta version
* Line numbers out
2024-03-12 14:27:24 -04:00
MS
e3d7188ec9
Use AUTOLOCK macro ( #660 )
...
* Use AUTOLOCK macro
* MxAutoLock
* Remove semicolon
Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
---------
Co-authored-by: Anonymous Maarten <madebr@users.noreply.github.com>
2024-03-12 15:23:50 +01:00
Christian Semmler
8069923651
Refactor files based on beta debug build ( #645 )
...
* Rename LegoUnkSaveDataWriter -> LegoCharacterManager
* Refactor mxomni into mxomni/mxmisc
* Refactor legoomni into legoomni/misc
* Resolve deps
* Refactor atom
* Refactor mxutil
* Refactor mxio
* Rename/relocate files
* Fix format
2024-03-09 21:07:52 +01:00
Christian Semmler
a93e2ae0d3
Implement/match LegoEntity::SetLocation ( #629 )
...
* Implement/match LegoEntity::SetLocation
* Remove comment
2024-03-05 20:31:57 +01:00
MS
ec1fcce08c
Data comparison tool ( #618 )
...
* Parse cvdump TYPES section. Add datacmp tool.
* Corrections
* Use static
* Revert "Use static"
This reverts commit e0a4324e004e83565a9880e457c588ed0cf71931.
* Handle partially initialized variable
* Shuffle order of legounksavedatawriter
* Revert "Shuffle order of legounksavedatawriter"
This reverts commit 506e06f1174739fdbfade73e29b9ce4eac44b06c.
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-05 09:45:09 +01:00
Misha
068760056a
fix bug in MxPresenter::CreateEntity ( #626 )
...
* fix bug in MxPresenter::CreateEntity
* Match 100%
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
2024-03-04 23:00:38 +01:00
Christian Semmler
fb6eed9bff
Match StartAction functions, remove NextFragment ( #610 )
2024-03-01 19:07:07 +01:00
Christian Semmler
ba8744ef8f
Match MxTickleManager::Tickle ( #609 )
2024-03-01 18:46:07 +01:00
Christian Semmler
e609924e4c
Match MxDisplaySurface::Display ( #607 )
2024-03-01 03:42:50 +01:00