* Some beta addrs and asserts to start
* Create mxdirectxinfo
* include fix
* CONFIG annotations
* Beta matching
* Match format function better, add dead code function
* LegoDeviceEnumerate
* cmake: copy DLL dependencies to output path
This also copies SDL3.dll from an external path when using system
dependencies.
* Only include <SDL3/SDL.h>
* isle: parse cli argument (--ini for custom ini path)
* Use SDL_CreateWIndowWithProperties to create SDL window
Less branching => Clearer code
* Log mxdirectx failure using SDL_Log + E_NOINTERFACE
* Fix d3drm32.def for msvc
* Define D3DRM_WINE when using d3drm from wine
* Ignore failed assertions from d3drm unimplemented functions
* inparser will/should create libiniparser.lib for static libraries and iniparser.lib for a shared library
* 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
* 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
* mxdirectdraw: no need to explicitly add a terminating '\0' in C
* mxstopwatch must include LIMITS.H for ULONG_MAX
* Add Config app
* 88.78%
* style fixes
* Test more CONFIG things
* Add a few assertions on MFC classes
* reformat
* actionSSSSSSSSSSSSSSS
* actions again
* decomplint needed a shebang
* Fix annotations of Message Map entries
* ci: We're building CONFIG.EXE, not CONFIG.DLL
* remove ninja.exe
* Fix CAboutDialog::GetMessageMap annotation
* format reloaded
* Fix global CConfigApp object annotation
* trigger worflows
* ci: request at least python 3
* oops :)
* curl CONFIGPROGRESS-OLD.TXT will fail
* Forget about actions/setup-python (for now)
* Annotation fixes
* Config tweaks and MxDirect3d annotations
* It's important to compare against the correct file
* Introduce common CDialog parent for CAboutDialog and CMainDialog
* format
* Remove CSerializer
---------
Co-authored-by: disinvite <disinvite@users.noreply.github.com>
* Implement MxDeviceEnumerate::SupportsMMX
* Implement MxDeviceEnumerate::EnumerateErrorToString
* fixes
* fixes
* Remove STUB from function
* Fix error messages
* Use return type int
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>
* 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 96c4c65fedbc4102837f4bcbbb9ee83a7d14cba3.
* 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>
* 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>
* Use COMPAT_MODE macro to fix errors with mingw gcc 12.2
* MxOmni::m_timerRunning is a MxBool
* MxDirect3D::m_unk0x88c is a MxBool
* MxBackgroundAudioManager::m_unk0x13c is a MxS32
* Fix warning: deleting 'void*' is undefined [-Wdelete-incomplete]
* Fix inline function 'void TglImpl::RendererImpl::Destroy()' used but never defined
* Fix warning: inline function 'MxStreamerSubClass1::MxStreamerSubClass1(undefined4)' used but never defined
* Use `FALSE` for m_timerRunning
* Format
* Format
* Remove comment
* Limit scope for variables in compat mode
* clang-format
---------
Co-authored-by: Christian Semmler <mail@csemmler.com>