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
Ramen2X
fb2e9fb5ec
rename MxSmack to MxSmk ( #1288 )
...
* rename MxSmack to MxSmk
* format
2024-12-27 13:00:56 -05: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
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
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
MS
9c951c4974
Implement MxDisplaySurface::DrawTransparentRLE ( #1236 )
...
* Implement MxDisplaySurface::DrawTransparentRLE
* ncc fix
2024-12-17 01:07:39 -07:00
MS
5e0dc1a160
Beta match progress for flic.cpp ( #1162 )
2024-11-22 01:07:40 +01: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
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
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
MS
51d4dead1a
MxSmack::LoadHeader ( #1080 )
2024-08-07 20:19:12 -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
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
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
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
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
Christian Semmler
91d043a9ae
Implement/match LegoAnimMMPresenter::FUN_1004b450 ( #827 )
2024-04-20 17:18:19 +02: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
46362a0f6e
Fix some issues with annotations ( #808 )
2024-04-15 14:42:25 -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
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
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
e609924e4c
Match MxDisplaySurface::Display ( #607 )
2024-03-01 03:42:50 +01:00
Christian Semmler
79713698cf
Improve match of MxVideoPresenter::PutFrame ( #606 )
...
* Improve match of PutFrame
* Fix
* Fix
* Fix
2024-03-01 02:45:30 +01:00
Christian Semmler
49d6c88912
Match ParseExtra functions ( #605 )
...
* Match ParseExtra functions
* Match MxStillPresenter::ParseExtra
* Match remaining ParseExtra functions
2024-02-29 19:15:20 +01:00
Nathan M Gilbert
ff04b0ba5a
Implement FLIC ( #481 )
...
* Implement FLIC
* Refactor/style
* Remove library_flic.h
* Exclude flic.cpp from naming
* Temporary workaround
* Fix type
* Fix bugs in FLC decoding, and cleanup
* Fix braces
* Match ClampLine
* Fix struct type
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-02-29 18:00:57 +01:00
Christian Semmler
9d8820ee06
Implement TextureData::Create ( #586 )
...
* Implement TextureData::Create
* Fix names
* Rename
* Fix name
* Fix annotation
* Add missing annotation
* Fix annotation
* More annotation fixes
* Compat template type ambiguity
* Fix
2024-02-22 16:59:44 -05:00
Nathan M Gilbert
cc1bc148d0
Implement HistoryBook::ReadyWorld ( #579 )
...
* Implement HistoryBook::ReadyWorld
* Fix names and annotations
* WIP improvements
* Remove unnecessary padding/pack
* Remove packing
* Style
* Use countof
* Fix signed
* Fixes
* Remove duplicate annotation
* Rename
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-02-19 15:24:30 +01:00
Christian Semmler
1d189b013d
Rename MxDSSubscriber functions ( #573 )
2024-02-17 16:35:10 +01:00
Anonymous Maarten
9e686e2a87
cmake+ci: run clang-tidy ( #512 )
...
* cmake+ci: run clang-tidy
* Remove DESCRIPTION from LEGO1/LegoOmni.mingw.def
* Add initial .clang-tidy and fixes
* fix file perms
* Comment out DESCRIPTION
* Remove LegoEntity::~LegoEntity and MxPresenter::~MxPresenter from mingw's LEGO1.def
* Looks like clang is allergic to the libs in the directx5 SDK
* Update .clang-tidy
* Fix typo in .clang-tidy
* Attempt to generate an action error
* Revert "Attempt to generate an action error"
This reverts commit 96c4c65fed .
* cmake: test with -Wparentheses + optionally with -Werror
* ci: -k0 is a Ninja argument
* Use -Werror only for msys2 builds
* cmake: only emit warnings for specific warnings
* cmake: and don't do -Werror/-WX anymore
* Fix warnings
* Fix mingw warnings
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-02-01 21:42:10 +01:00
Christian Semmler
bcdddd4c7e
Pad all single-digit hexadecimal values with zero ( #504 )
...
* Pad all single-digit hexadecimal values with zero
* One more fix
2024-01-29 22:17:17 +01:00
Christian Semmler
96234ddc23
Implement/match MxStillPresenter::Clone ( #502 )
...
* Implement/match MxStillPresenter::Clone
* Fix
2024-01-29 11:29:12 -05:00
Anonymous Maarten
5f413165cc
Spinoff some sources to static libraries ( #484 )
...
* cmake: use imported targets for 3rd party libs
* Fix casing of skateboard.h include
* cmake: tglrl realtime viewmanager mxgeometry
* cmake: spin off some source in static libraries
* dx5 for everyone
* ci: bump actions/checkout to v4
* move LEGO1/realtime/realtimeview.cpp to lego1 because it exports symbols
* add misc library
* Add omni library
* Return of the .def's
* Remove COMPAT_CONST in MxVideoParam::MxVideoParam
* Run clang-format
* move LEGO1/realtime/realtimeview.cpp to realtime lib
* Add 3dmanager library
* Rename .def files
* Remove incorrect deps to Omni
* Remove DLL expor decls
* Remove unnecessary library dep from ROI
* Remove COMPAT_CONST
* Move 3dmanager lib before Omni
* Remove mxgeometry lib (`geom` is actually `lego/sources/geom`, which we don't have in our decomp yet)
* viewmanager has a dependency on realtime + fix mingw's def
* Remove Smacker::Smacker from lego1 link libraries
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-01-24 21:16:29 -05:00
Christian Semmler
43c692c9d7
Minor fixes
2024-01-20 10:46:49 -05:00
Misha
93012b62f4
Implement MxDisplaySurface::CreateCursorSurface ( #471 )
...
* Update mxdisplaysurface.cpp
* Fixes
* Update legovideomanager.cpp
* Match to 100%
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-01-20 22:12:35 +01:00
Misha
ea5f9b4886
Implement MxDisplaySurface::VTable0x44 ( #467 )
...
* Update mxdisplaysurface.cpp
* add arguments to header
* Fix glitched bitmaps
* WIP fixes
* Match
* Fix
* Changes
* Fixes
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-01-20 20:31:07 +01:00
Christian Semmler
35e5a62ff7
Implement/match MxLoopingFlcPresenter remaining functions ( #459 )
...
* Implement/match MxLoopingFlcPresenter remaining functions
* Remove include
* Change to long
2024-01-19 16:33:04 +01:00
Christian Semmler
dbfe28db51
Fix type
2024-01-18 21:24:12 -05:00
Christian Semmler
8007c5e483
Match MxFlcPresenter::LoadFrame to 100%
2024-01-18 21:23:07 -05:00
Nathan M Gilbert
d5658efe02
Finish Bitmap ( #458 )
...
* Finish Bitmap
* Add missing vtable annotations
* Fixes
---------
Co-authored-by: Christian Semmler <mail@csemmler.com >
2024-01-19 15:38:06 +01:00