mirror of
https://github.com/isledecomp/isle.git
synced 2024-11-24 08:38:29 -05:00
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>
This commit is contained in:
parent
2bebc09da3
commit
5f413165cc
61 changed files with 730 additions and 379 deletions
4
.github/workflows/analyze.yml
vendored
4
.github/workflows/analyze.yml
vendored
|
@ -8,7 +8,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install python libraries
|
- name: Install python libraries
|
||||||
run: |
|
run: |
|
||||||
|
@ -23,7 +23,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install python libraries
|
- name: Install python libraries
|
||||||
run: |
|
run: |
|
||||||
|
|
8
.github/workflows/build.yml
vendored
8
.github/workflows/build.yml
vendored
|
@ -41,7 +41,7 @@ jobs:
|
||||||
with:
|
with:
|
||||||
arch: amd64_x86 # Use the 64-bit x64-native cross tools to build 32-bit x86 code
|
arch: amd64_x86 # Use the 64-bit x64-native cross tools to build 32-bit x86 code
|
||||||
|
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
|
@ -53,9 +53,9 @@ jobs:
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
repository: 'itsmattkc/msvc420'
|
repository: 'itsmattkc/msvc420'
|
||||||
path: msvc420
|
path: msvc420
|
||||||
|
@ -165,7 +165,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'isledecomp/isle' }}
|
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'isledecomp/isle' }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
repository: 'probonopd/uploadtool'
|
repository: 'probonopd/uploadtool'
|
||||||
|
|
||||||
|
|
4
.github/workflows/format.yml
vendored
4
.github/workflows/format.yml
vendored
|
@ -8,7 +8,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Run clang-format
|
- name: Run clang-format
|
||||||
run: |
|
run: |
|
||||||
|
@ -24,7 +24,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install python libraries
|
- name: Install python libraries
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
2
.github/workflows/naming.yml
vendored
2
.github/workflows/naming.yml
vendored
|
@ -8,7 +8,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install LLVM and Clang
|
- name: Install LLVM and Clang
|
||||||
uses: KyleMayes/install-llvm-action@v1
|
uses: KyleMayes/install-llvm-action@v1
|
||||||
|
|
4
.github/workflows/unittest.yml
vendored
4
.github/workflows/unittest.yml
vendored
|
@ -8,7 +8,7 @@ jobs:
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install python libraries
|
- name: Install python libraries
|
||||||
shell: bash
|
shell: bash
|
||||||
|
@ -25,7 +25,7 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install python libraries
|
- name: Install python libraries
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
396
CMakeLists.txt
396
CMakeLists.txt
|
@ -16,12 +16,201 @@ if (MSVC)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set(lego1_targets)
|
||||||
|
macro(register_lego1_target __target)
|
||||||
|
list(APPEND lego1_targets ${__target})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
message(STATUS "MSVC for decompilation: ${MSVC_FOR_DECOMP}")
|
message(STATUS "MSVC for decompilation: ${MSVC_FOR_DECOMP}")
|
||||||
|
|
||||||
option(ISLE_BUILD_APP "Build ISLE.EXE application" ON)
|
option(ISLE_BUILD_APP "Build ISLE.EXE application" ON)
|
||||||
option(ISLE_USE_SMARTHEAP "Build with SmartHeap" ${MSVC_FOR_DECOMP})
|
option(ISLE_USE_SMARTHEAP "Build with SmartHeap" ${MSVC_FOR_DECOMP})
|
||||||
option(ISLE_USE_DX5 "Build with internal DirectX 5 SDK" ON)
|
option(ISLE_USE_DX5 "Build with internal DirectX 5 SDK" ON)
|
||||||
|
|
||||||
|
add_library(DirectX5::DirectX5 INTERFACE IMPORTED)
|
||||||
|
target_include_directories(DirectX5::DirectX5 INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/inc")
|
||||||
|
target_link_directories(DirectX5::DirectX5 INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/lib")
|
||||||
|
|
||||||
|
add_library(Smacker::Smacker STATIC IMPORTED)
|
||||||
|
set_property(TARGET Smacker::Smacker PROPERTY IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/3rdparty/smacker/smack.lib")
|
||||||
|
set_property(TARGET Smacker::Smacker PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_SOURCE_DIR}/3rdparty/smacker")
|
||||||
|
|
||||||
|
add_library(FLIC::FLIC STATIC IMPORTED)
|
||||||
|
set_property(TARGET FLIC::FLIC PROPERTY IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/3rdparty/flic/flic.lib")
|
||||||
|
set_property(TARGET FLIC::FLIC PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_SOURCE_DIR}/3rdparty/flic")
|
||||||
|
|
||||||
|
add_library(Vec::Vec INTERFACE IMPORTED)
|
||||||
|
target_include_directories(Vec::Vec INTERFACE "${CMAKE_SOURCE_DIR}/3rdparty/vec")
|
||||||
|
|
||||||
|
add_library(SmartHeap::SmartHeap STATIC IMPORTED)
|
||||||
|
set_property(TARGET SmartHeap::SmartHeap PROPERTY IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/3rdparty/smartheap/SHLW32MT.LIB")
|
||||||
|
set_property(TARGET SmartHeap::SmartHeap PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_SOURCE_DIR}/3rdparty/smartheap")
|
||||||
|
set_property(TARGET SmartHeap::SmartHeap PROPERTY INTERFACE_COMPILE_OPTIONS "/FI${CMAKE_SOURCE_DIR}/3rdparty/smartheap/SMRTHEAP.HPP")
|
||||||
|
|
||||||
|
add_library(tglrl STATIC
|
||||||
|
LEGO1/tgl/d3drm/camera.cpp
|
||||||
|
LEGO1/tgl/d3drm/device.cpp
|
||||||
|
LEGO1/tgl/d3drm/group.cpp
|
||||||
|
LEGO1/tgl/d3drm/light.cpp
|
||||||
|
LEGO1/tgl/d3drm/mesh.cpp
|
||||||
|
LEGO1/tgl/d3drm/renderer.cpp
|
||||||
|
LEGO1/tgl/d3drm/texture.cpp
|
||||||
|
LEGO1/tgl/d3drm/unk.cpp
|
||||||
|
LEGO1/tgl/d3drm/view.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(tglrl)
|
||||||
|
set_property(TARGET tglrl PROPERTY ARCHIVE_OUTPUT_NAME "tglrl40$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(tglrl PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(tglrl PRIVATE d3drm)
|
||||||
|
|
||||||
|
add_library(realtime STATIC
|
||||||
|
LEGO1/realtime/matrix.cpp
|
||||||
|
LEGO1/realtime/orientableroi.cpp
|
||||||
|
LEGO1/realtime/realtime.cpp
|
||||||
|
LEGO1/realtime/realtimeview.cpp
|
||||||
|
LEGO1/realtime/vector.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(realtime)
|
||||||
|
set_property(TARGET realtime PROPERTY ARCHIVE_OUTPUT_NAME "realtime$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(realtime PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(realtime PRIVATE Vec::Vec)
|
||||||
|
|
||||||
|
add_library(viewmanager STATIC
|
||||||
|
LEGO1/viewmanager/viewlodlist.cpp
|
||||||
|
LEGO1/viewmanager/viewmanager.cpp
|
||||||
|
LEGO1/viewmanager/viewroi.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(viewmanager)
|
||||||
|
set_property(TARGET viewmanager PROPERTY ARCHIVE_OUTPUT_NAME "viewmanager$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(viewmanager PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(viewmanager PRIVATE Vec::Vec)
|
||||||
|
|
||||||
|
add_library(mxdirectx STATIC
|
||||||
|
LEGO1/mxdirectx/mxdirect3d.cpp
|
||||||
|
LEGO1/mxdirectx/mxdirectdraw.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(mxdirectx)
|
||||||
|
set_property(TARGET mxdirectx PROPERTY ARCHIVE_OUTPUT_NAME "MxDirectX$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(mxdirectx PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(mxdirectx PRIVATE ddraw)
|
||||||
|
|
||||||
|
add_library(roi STATIC
|
||||||
|
LEGO1/lego/sources/roi/legoroi.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(roi)
|
||||||
|
set_property(TARGET roi PROPERTY ARCHIVE_OUTPUT_NAME "roi$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(roi PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(roi PRIVATE)
|
||||||
|
|
||||||
|
add_library(misc STATIC
|
||||||
|
LEGO1/lego/sources/misc/legoimage.cpp
|
||||||
|
LEGO1/lego/sources/misc/legostorage.cpp
|
||||||
|
LEGO1/lego/sources/misc/legotexture.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(misc)
|
||||||
|
set_property(TARGET misc PROPERTY ARCHIVE_OUTPUT_NAME "misc$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(misc PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/omni/include" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(misc PRIVATE)
|
||||||
|
|
||||||
|
add_library(3dmanager STATIC
|
||||||
|
LEGO1/lego/sources/3dmanager/lego3dmanager.cpp
|
||||||
|
LEGO1/lego/sources/3dmanager/lego3dview.cpp
|
||||||
|
LEGO1/lego/sources/3dmanager/legoview1.cpp
|
||||||
|
LEGO1/lego/sources/3dmanager/tglsurface.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(3dmanager)
|
||||||
|
set_property(TARGET 3dmanager PROPERTY ARCHIVE_OUTPUT_NAME "3dmanager$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(3dmanager PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(3dmanager PRIVATE Vec::Vec)
|
||||||
|
|
||||||
|
add_library(omni STATIC
|
||||||
|
LEGO1/omni/src/action/mxdsaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsanim.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsevent.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsmediaaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsmultiaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsobjectaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsobject.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsparallelaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsselectaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsserialaction.cpp
|
||||||
|
LEGO1/omni/src/action/mxdssound.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsstill.cpp
|
||||||
|
LEGO1/omni/src/action/mxdsstreamingaction.cpp
|
||||||
|
LEGO1/omni/src/audio/mxaudiomanager.cpp
|
||||||
|
LEGO1/omni/src/audio/mxaudiopresenter.cpp
|
||||||
|
LEGO1/omni/src/audio/mxloopingmidipresenter.cpp
|
||||||
|
LEGO1/omni/src/audio/mxmidipresenter.cpp
|
||||||
|
LEGO1/omni/src/audio/mxmusicmanager.cpp
|
||||||
|
LEGO1/omni/src/audio/mxmusicpresenter.cpp
|
||||||
|
LEGO1/omni/src/audio/mxsoundmanager.cpp
|
||||||
|
LEGO1/omni/src/audio/mxsoundpresenter.cpp
|
||||||
|
LEGO1/omni/src/audio/mxwavepresenter.cpp
|
||||||
|
LEGO1/omni/src/common/mxatomidcounter.cpp
|
||||||
|
LEGO1/omni/src/common/mxatomid.cpp
|
||||||
|
LEGO1/omni/src/common/mxcompositepresenter.cpp
|
||||||
|
LEGO1/omni/src/common/mxcore.cpp
|
||||||
|
LEGO1/omni/src/common/mxmediamanager.cpp
|
||||||
|
LEGO1/omni/src/common/mxmediapresenter.cpp
|
||||||
|
LEGO1/omni/src/common/mxobjectfactory.cpp
|
||||||
|
LEGO1/omni/src/common/mxpresenter.cpp
|
||||||
|
LEGO1/omni/src/common/mxstring.cpp
|
||||||
|
LEGO1/omni/src/common/mxticklemanager.cpp
|
||||||
|
LEGO1/omni/src/common/mxtimer.cpp
|
||||||
|
LEGO1/omni/src/common/mxutil.cpp
|
||||||
|
LEGO1/omni/src/common/mxvariable.cpp
|
||||||
|
LEGO1/omni/src/common/mxvariabletable.cpp
|
||||||
|
LEGO1/omni/src/entity/mxentity.cpp
|
||||||
|
LEGO1/omni/src/event/mxeventmanager.cpp
|
||||||
|
LEGO1/omni/src/event/mxeventpresenter.cpp
|
||||||
|
LEGO1/omni/src/main/mxomni.cpp
|
||||||
|
LEGO1/omni/src/main/mxomnicreateflags.cpp
|
||||||
|
LEGO1/omni/src/main/mxomnicreateparam.cpp
|
||||||
|
LEGO1/omni/src/notify/mxactionnotificationparam.cpp
|
||||||
|
LEGO1/omni/src/notify/mxnotificationmanager.cpp
|
||||||
|
LEGO1/omni/src/notify/mxnotificationparam.cpp
|
||||||
|
LEGO1/omni/src/notify/mxtype17notificationparam.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdiskstreamcontroller.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdiskstreamprovider.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdsbuffer.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdschunk.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdsfile.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdssource.cpp
|
||||||
|
LEGO1/omni/src/stream/mxdssubscriber.cpp
|
||||||
|
LEGO1/omni/src/stream/mxioinfo.cpp
|
||||||
|
LEGO1/omni/src/stream/mxramstreamcontroller.cpp
|
||||||
|
LEGO1/omni/src/stream/mxramstreamprovider.cpp
|
||||||
|
LEGO1/omni/src/stream/mxstreamchunk.cpp
|
||||||
|
LEGO1/omni/src/stream/mxstreamcontroller.cpp
|
||||||
|
LEGO1/omni/src/stream/mxstreamer.cpp
|
||||||
|
LEGO1/omni/src/stream/mxstreamlist.cpp
|
||||||
|
LEGO1/omni/src/stream/mxstreamprovider.cpp
|
||||||
|
LEGO1/omni/src/system/mxautolocker.cpp
|
||||||
|
LEGO1/omni/src/system/mxcriticalsection.cpp
|
||||||
|
LEGO1/omni/src/system/mxscheduler.cpp
|
||||||
|
LEGO1/omni/src/system/mxsemaphore.cpp
|
||||||
|
LEGO1/omni/src/system/mxthread.cpp
|
||||||
|
LEGO1/omni/src/video/mxbitmap.cpp
|
||||||
|
LEGO1/omni/src/video/mxdisplaysurface.cpp
|
||||||
|
LEGO1/omni/src/video/mxflcpresenter.cpp
|
||||||
|
LEGO1/omni/src/video/mxloopingflcpresenter.cpp
|
||||||
|
LEGO1/omni/src/video/mxloopingsmkpresenter.cpp
|
||||||
|
LEGO1/omni/src/video/mxpalette.cpp
|
||||||
|
LEGO1/omni/src/video/mxregion.cpp
|
||||||
|
LEGO1/omni/src/video/mxregioncursor.cpp
|
||||||
|
LEGO1/omni/src/video/mxsmack.cpp
|
||||||
|
LEGO1/omni/src/video/mxsmkpresenter.cpp
|
||||||
|
LEGO1/omni/src/video/mxstillpresenter.cpp
|
||||||
|
LEGO1/omni/src/video/mxvideomanager.cpp
|
||||||
|
LEGO1/omni/src/video/mxvideoparam.cpp
|
||||||
|
LEGO1/omni/src/video/mxvideoparamflags.cpp
|
||||||
|
LEGO1/omni/src/video/mxvideopresenter.cpp
|
||||||
|
)
|
||||||
|
register_lego1_target(omni)
|
||||||
|
set_property(TARGET omni PROPERTY ARCHIVE_OUTPUT_NAME "omni$<$<CONFIG:Debug>:d>")
|
||||||
|
target_include_directories(omni PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/omni/include" "${CMAKE_SOURCE_DIR}/LEGO1" "${CMAKE_SOURCE_DIR}/util")
|
||||||
|
target_link_libraries(omni PRIVATE dsound winmm FLIC::FLIC Smacker::Smacker)
|
||||||
|
|
||||||
add_library(lego1 SHARED
|
add_library(lego1 SHARED
|
||||||
LEGO1/define.cpp
|
LEGO1/define.cpp
|
||||||
LEGO1/lego/legoomni/src/act1/act1state.cpp
|
LEGO1/lego/legoomni/src/act1/act1state.cpp
|
||||||
|
@ -143,155 +332,37 @@ add_library(lego1 SHARED
|
||||||
LEGO1/lego/legoomni/src/video/legotexturepresenter.cpp
|
LEGO1/lego/legoomni/src/video/legotexturepresenter.cpp
|
||||||
LEGO1/lego/legoomni/src/video/legovideomanager.cpp
|
LEGO1/lego/legoomni/src/video/legovideomanager.cpp
|
||||||
LEGO1/lego/legoomni/src/video/mxtransitionmanager.cpp
|
LEGO1/lego/legoomni/src/video/mxtransitionmanager.cpp
|
||||||
LEGO1/lego/sources/3dmanager/lego3dmanager.cpp
|
|
||||||
LEGO1/lego/sources/3dmanager/lego3dview.cpp
|
|
||||||
LEGO1/lego/sources/3dmanager/legoview1.cpp
|
|
||||||
LEGO1/lego/sources/3dmanager/tglsurface.cpp
|
|
||||||
LEGO1/lego/sources/misc/legoimage.cpp
|
|
||||||
LEGO1/lego/sources/misc/legostorage.cpp
|
|
||||||
LEGO1/lego/sources/misc/legotexture.cpp
|
|
||||||
LEGO1/lego/sources/roi/legoroi.cpp
|
|
||||||
LEGO1/main.cpp
|
LEGO1/main.cpp
|
||||||
LEGO1/mxdirectx/mxdirect3d.cpp
|
|
||||||
LEGO1/mxdirectx/mxdirectdraw.cpp
|
|
||||||
LEGO1/mxgeometry/mxgeometry3d.cpp
|
|
||||||
LEGO1/mxgeometry/mxmatrix.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsanim.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsevent.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsmediaaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsmultiaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsobjectaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsobject.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsparallelaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsselectaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsserialaction.cpp
|
|
||||||
LEGO1/omni/src/action/mxdssound.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsstill.cpp
|
|
||||||
LEGO1/omni/src/action/mxdsstreamingaction.cpp
|
|
||||||
LEGO1/omni/src/audio/mxaudiomanager.cpp
|
|
||||||
LEGO1/omni/src/audio/mxaudiopresenter.cpp
|
|
||||||
LEGO1/omni/src/audio/mxloopingmidipresenter.cpp
|
|
||||||
LEGO1/omni/src/audio/mxmidipresenter.cpp
|
|
||||||
LEGO1/omni/src/audio/mxmusicmanager.cpp
|
|
||||||
LEGO1/omni/src/audio/mxmusicpresenter.cpp
|
|
||||||
LEGO1/omni/src/audio/mxsoundmanager.cpp
|
|
||||||
LEGO1/omni/src/audio/mxsoundpresenter.cpp
|
|
||||||
LEGO1/omni/src/audio/mxwavepresenter.cpp
|
|
||||||
LEGO1/omni/src/common/mxatomidcounter.cpp
|
|
||||||
LEGO1/omni/src/common/mxatomid.cpp
|
|
||||||
LEGO1/omni/src/common/mxcompositepresenter.cpp
|
|
||||||
LEGO1/omni/src/common/mxcore.cpp
|
|
||||||
LEGO1/omni/src/common/mxmediamanager.cpp
|
|
||||||
LEGO1/omni/src/common/mxmediapresenter.cpp
|
|
||||||
LEGO1/omni/src/common/mxobjectfactory.cpp
|
|
||||||
LEGO1/omni/src/common/mxpresenter.cpp
|
|
||||||
LEGO1/omni/src/common/mxstring.cpp
|
|
||||||
LEGO1/omni/src/common/mxticklemanager.cpp
|
|
||||||
LEGO1/omni/src/common/mxtimer.cpp
|
|
||||||
LEGO1/omni/src/common/mxutil.cpp
|
|
||||||
LEGO1/omni/src/common/mxvariable.cpp
|
|
||||||
LEGO1/omni/src/common/mxvariabletable.cpp
|
|
||||||
LEGO1/omni/src/entity/mxentity.cpp
|
|
||||||
LEGO1/omni/src/event/mxeventmanager.cpp
|
|
||||||
LEGO1/omni/src/event/mxeventpresenter.cpp
|
|
||||||
LEGO1/omni/src/main/mxomni.cpp
|
|
||||||
LEGO1/omni/src/main/mxomnicreateflags.cpp
|
|
||||||
LEGO1/omni/src/main/mxomnicreateparam.cpp
|
|
||||||
LEGO1/omni/src/notify/mxactionnotificationparam.cpp
|
|
||||||
LEGO1/omni/src/notify/mxnotificationmanager.cpp
|
|
||||||
LEGO1/omni/src/notify/mxnotificationparam.cpp
|
|
||||||
LEGO1/omni/src/notify/mxtype17notificationparam.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdiskstreamcontroller.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdiskstreamprovider.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdsbuffer.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdschunk.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdsfile.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdssource.cpp
|
|
||||||
LEGO1/omni/src/stream/mxdssubscriber.cpp
|
|
||||||
LEGO1/omni/src/stream/mxioinfo.cpp
|
|
||||||
LEGO1/omni/src/stream/mxramstreamcontroller.cpp
|
|
||||||
LEGO1/omni/src/stream/mxramstreamprovider.cpp
|
|
||||||
LEGO1/omni/src/stream/mxstreamchunk.cpp
|
|
||||||
LEGO1/omni/src/stream/mxstreamcontroller.cpp
|
|
||||||
LEGO1/omni/src/stream/mxstreamer.cpp
|
|
||||||
LEGO1/omni/src/stream/mxstreamlist.cpp
|
|
||||||
LEGO1/omni/src/stream/mxstreamprovider.cpp
|
|
||||||
LEGO1/omni/src/system/mxautolocker.cpp
|
|
||||||
LEGO1/omni/src/system/mxcriticalsection.cpp
|
|
||||||
LEGO1/omni/src/system/mxscheduler.cpp
|
|
||||||
LEGO1/omni/src/system/mxsemaphore.cpp
|
|
||||||
LEGO1/omni/src/system/mxthread.cpp
|
|
||||||
LEGO1/omni/src/video/mxbitmap.cpp
|
|
||||||
LEGO1/omni/src/video/mxdisplaysurface.cpp
|
|
||||||
LEGO1/omni/src/video/mxflcpresenter.cpp
|
|
||||||
LEGO1/omni/src/video/mxloopingflcpresenter.cpp
|
|
||||||
LEGO1/omni/src/video/mxloopingsmkpresenter.cpp
|
|
||||||
LEGO1/omni/src/video/mxpalette.cpp
|
|
||||||
LEGO1/omni/src/video/mxregion.cpp
|
|
||||||
LEGO1/omni/src/video/mxregioncursor.cpp
|
|
||||||
LEGO1/omni/src/video/mxsmack.cpp
|
|
||||||
LEGO1/omni/src/video/mxsmkpresenter.cpp
|
|
||||||
LEGO1/omni/src/video/mxstillpresenter.cpp
|
|
||||||
LEGO1/omni/src/video/mxvideomanager.cpp
|
|
||||||
LEGO1/omni/src/video/mxvideoparam.cpp
|
|
||||||
LEGO1/omni/src/video/mxvideoparamflags.cpp
|
|
||||||
LEGO1/omni/src/video/mxvideopresenter.cpp
|
|
||||||
LEGO1/realtime/matrix.cpp
|
|
||||||
LEGO1/realtime/orientableroi.cpp
|
|
||||||
LEGO1/realtime/realtime.cpp
|
|
||||||
LEGO1/realtime/realtimeview.cpp
|
|
||||||
LEGO1/realtime/vector.cpp
|
|
||||||
LEGO1/tgl/d3drm/camera.cpp
|
|
||||||
LEGO1/tgl/d3drm/device.cpp
|
|
||||||
LEGO1/tgl/d3drm/group.cpp
|
|
||||||
LEGO1/tgl/d3drm/light.cpp
|
|
||||||
LEGO1/tgl/d3drm/mesh.cpp
|
|
||||||
LEGO1/tgl/d3drm/renderer.cpp
|
|
||||||
LEGO1/tgl/d3drm/texture.cpp
|
|
||||||
LEGO1/tgl/d3drm/unk.cpp
|
|
||||||
LEGO1/tgl/d3drm/view.cpp
|
|
||||||
LEGO1/viewmanager/viewlodlist.cpp
|
|
||||||
LEGO1/viewmanager/viewmanager.cpp
|
|
||||||
LEGO1/viewmanager/viewroi.cpp
|
|
||||||
)
|
)
|
||||||
|
register_lego1_target(lego1)
|
||||||
|
|
||||||
if (MINGW)
|
if (MINGW)
|
||||||
target_compile_definitions(lego1 PRIVATE DIRECTINPUT_VERSION=0x0500)
|
target_compile_definitions(lego1 PRIVATE DIRECTINPUT_VERSION=0x0500)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/util")
|
if (MSVC)
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1")
|
target_sources(lego1 PRIVATE LEGO1/LegoOmni.def)
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/omni/include")
|
else()
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/lego/sources")
|
target_sources(lego1 PRIVATE LEGO1/LegoOmni.mingw.def)
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/lego/legoomni/include")
|
|
||||||
|
|
||||||
# Additional include directories
|
|
||||||
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/3rdparty/vec")
|
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/flic")
|
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/smacker")
|
|
||||||
|
|
||||||
if (ISLE_USE_SMARTHEAP)
|
|
||||||
add_library(SmartHeap::SmartHeap STATIC IMPORTED)
|
|
||||||
set_target_properties(SmartHeap::SmartHeap PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/3rdparty/smartheap/SHLW32MT.LIB"
|
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_SOURCE_DIR}/3rdparty/smartheap"
|
|
||||||
INTERFACE_COMPILE_OPTIONS "/FI${CMAKE_SOURCE_DIR}/3rdparty/smartheap/SMRTHEAP.HPP")
|
|
||||||
|
|
||||||
target_link_libraries(lego1 PRIVATE SmartHeap::SmartHeap)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Use internal DirectX 5 if required
|
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/util")
|
||||||
if (ISLE_USE_DX5)
|
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/LEGO1")
|
||||||
target_include_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/inc")
|
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/LEGO1/omni/include")
|
||||||
target_link_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/lib")
|
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/LEGO1/lego/sources")
|
||||||
endif()
|
target_include_directories(lego1 PUBLIC "${CMAKE_SOURCE_DIR}/LEGO1/lego/legoomni/include")
|
||||||
|
|
||||||
target_link_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/smacker")
|
|
||||||
target_link_directories(lego1 PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/flic")
|
|
||||||
|
|
||||||
# Link libraries
|
# Link libraries
|
||||||
target_link_libraries(lego1 PRIVATE ddraw dsound dinput dxguid winmm d3drm smack flic)
|
target_link_libraries(lego1 PRIVATE tglrl viewmanager realtime mxdirectx roi FLIC::FLIC Vec::Vec dinput dxguid misc 3dmanager omni)
|
||||||
|
|
||||||
|
if (ISLE_USE_SMARTHEAP)
|
||||||
|
foreach(tgt IN LISTS lego1_targets)
|
||||||
|
target_link_libraries(${tgt} PRIVATE SmartHeap::SmartHeap)
|
||||||
|
endforeach()
|
||||||
|
endif()
|
||||||
|
foreach(tgt IN LISTS lego1_targets)
|
||||||
|
target_link_libraries(${tgt} PRIVATE $<$<BOOL:${ISLE_USE_DX5}>:DirectX5::DirectX5>)
|
||||||
|
endforeach()
|
||||||
|
|
||||||
# Make sure filenames are ALL CAPS
|
# Make sure filenames are ALL CAPS
|
||||||
set_property(TARGET lego1 PROPERTY OUTPUT_NAME LEGO1)
|
set_property(TARGET lego1 PROPERTY OUTPUT_NAME LEGO1)
|
||||||
|
@ -301,23 +372,12 @@ set_property(TARGET lego1 PROPERTY SUFFIX ".DLL")
|
||||||
if (ISLE_BUILD_APP)
|
if (ISLE_BUILD_APP)
|
||||||
add_executable(isle WIN32
|
add_executable(isle WIN32
|
||||||
ISLE/res/isle.rc
|
ISLE/res/isle.rc
|
||||||
ISLE/define.cpp
|
|
||||||
ISLE/isleapp.cpp
|
ISLE/isleapp.cpp
|
||||||
|
ISLE/define.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_compile_definitions(isle PRIVATE ISLE_APP)
|
|
||||||
|
|
||||||
target_include_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/util")
|
|
||||||
target_include_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1")
|
|
||||||
target_include_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/omni/include")
|
|
||||||
target_include_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/lego/sources")
|
|
||||||
target_include_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/LEGO1/lego/legoomni/include")
|
|
||||||
|
|
||||||
# Use internal DirectX 5 if required
|
# Use internal DirectX 5 if required
|
||||||
if (ISLE_USE_DX5)
|
target_link_libraries(isle PRIVATE $<$<BOOL:${ISLE_USE_DX5}>:DirectX5::DirectX5>)
|
||||||
target_include_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/inc")
|
|
||||||
target_link_directories(isle PRIVATE "${CMAKE_SOURCE_DIR}/3rdparty/dx5/lib")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (ISLE_USE_SMARTHEAP)
|
if (ISLE_USE_SMARTHEAP)
|
||||||
target_link_libraries(isle PRIVATE SmartHeap::SmartHeap)
|
target_link_libraries(isle PRIVATE SmartHeap::SmartHeap)
|
||||||
|
@ -333,15 +393,19 @@ endif()
|
||||||
|
|
||||||
if (MSVC)
|
if (MSVC)
|
||||||
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "15")
|
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "15")
|
||||||
target_compile_definitions(lego1 PRIVATE _CRT_SECURE_NO_WARNINGS)
|
foreach(tgt IN LISTS lego1_targets)
|
||||||
if (ISLE_BUILD_APP)
|
target_compile_definitions(${tgt} PRIVATE _CRT_SECURE_NO_WARNINGS)
|
||||||
|
endforeach()
|
||||||
|
if (TARGET isle)
|
||||||
target_compile_definitions(isle PRIVATE "_CRT_SECURE_NO_WARNINGS")
|
target_compile_definitions(isle PRIVATE "_CRT_SECURE_NO_WARNINGS")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
# Visual Studio 2017 version 15.7 needs "/Zc:__cplusplus" for __cplusplus
|
# Visual Studio 2017 version 15.7 needs "/Zc:__cplusplus" for __cplusplus
|
||||||
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "19.14.26428")
|
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "19.14.26428")
|
||||||
target_compile_options(lego1 PRIVATE "-Zc:__cplusplus")
|
foreach(tgt IN LISTS lego1_targets)
|
||||||
if (ISLE_BUILD_APP)
|
target_compile_options(${tgt} PRIVATE "-Zc:__cplusplus")
|
||||||
|
endforeach()
|
||||||
|
if (TARGET isle)
|
||||||
target_compile_options(isle PRIVATE "-Zc:__cplusplus")
|
target_compile_options(isle PRIVATE "-Zc:__cplusplus")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
@ -364,6 +428,9 @@ if (MSVC_FOR_DECOMP)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_compile_options(lego1 PRIVATE "/MT$<$<CONFIG:Debug>:d>")
|
target_compile_options(lego1 PRIVATE "/MT$<$<CONFIG:Debug>:d>")
|
||||||
|
foreach(tgt IN LISTS lego1_targets)
|
||||||
|
target_compile_options(${tgt} PRIVATE "/MT$<$<CONFIG:Debug>:d>")
|
||||||
|
endforeach()
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "/W3 /GX /D \"WIN32\" /D \"_WINDOWS\"")
|
set(CMAKE_CXX_FLAGS "/W3 /GX /D \"WIN32\" /D \"_WINDOWS\"")
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "/Gm /Zi /Od /D \"_DEBUG\"")
|
set(CMAKE_CXX_FLAGS_DEBUG "/Gm /Zi /Od /D \"_DEBUG\"")
|
||||||
|
@ -377,6 +444,8 @@ if (MSVC_FOR_DECOMP)
|
||||||
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "/incremental:no /debug")
|
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "/incremental:no /debug")
|
||||||
set(CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "/incremental:no")
|
set(CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "/incremental:no")
|
||||||
|
|
||||||
|
set(CMAKE_STATIC_LINKER_FLAGS "/machine:I386")
|
||||||
|
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "/machine:I386")
|
set(CMAKE_SHARED_LINKER_FLAGS "/machine:I386")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "/incremental:yes /debug")
|
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "/incremental:yes /debug")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "/incremental:no")
|
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "/incremental:no")
|
||||||
|
@ -385,12 +454,17 @@ if (MSVC_FOR_DECOMP)
|
||||||
|
|
||||||
# Older MSVC versions don't support building in parallel.
|
# Older MSVC versions don't support building in parallel.
|
||||||
# Force non-parallel builds of isle and lego1 by putting them in a pool with 1 available job.
|
# Force non-parallel builds of isle and lego1 by putting them in a pool with 1 available job.
|
||||||
if(CMAKE_CXX_COMPILER_ID VERSION_LESS 12)
|
if (CMAKE_CXX_COMPILER_ID VERSION_LESS 12)
|
||||||
set_property(GLOBAL PROPERTY JOB_POOLS "msvc_lego=1;msvc_lego1=1")
|
foreach(tgt IN LISTS lego1_taregets)
|
||||||
set_property(TARGET isle PROPERTY JOB_POOL_COMPILE msvc_lego)
|
set_property(GLOBAL APPEND PROPERTY JOB_POOLS "msvc_${tgt}=1;msvc_lego1=1")
|
||||||
set_property(TARGET isle PROPERTY JOB_POOL_LINK msvc_lego)
|
set_property(TARGET ${tgt} PROPERTY JOB_POOL_COMPILE msvc_${tgt})
|
||||||
set_property(TARGET lego1 PROPERTY JOB_POOL_COMPILE msvc_lego1)
|
set_property(TARGET ${tgt} PROPERTY JOB_POOL_LINK msvc_${tgt})
|
||||||
set_property(TARGET lego1 PROPERTY JOB_POOL_LINK msvc_lego1)
|
endforeach()
|
||||||
|
if (TARGET isle)
|
||||||
|
set_property(GLOBAL APPEND PROPERTY JOB_POOLS "msvc_isle=1")
|
||||||
|
set_property(TARGET isle PROPERTY JOB_POOL_COMPILE msvc_isle)
|
||||||
|
set_property(TARGET isle PROPERTY JOB_POOL_LINK msvc_isle)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,15 @@ IsleApp::IsleApp()
|
||||||
m_frameDelta = 10;
|
m_frameDelta = 10;
|
||||||
m_windowActive = 1;
|
m_windowActive = 1;
|
||||||
|
|
||||||
|
#ifdef COMPAT_MODE
|
||||||
|
{
|
||||||
|
MxRect32 r(0, 0, 639, 479);
|
||||||
|
MxVideoParamFlags flags;
|
||||||
|
m_videoParam = MxVideoParam(r, NULL, 1, flags);
|
||||||
|
}
|
||||||
|
#else
|
||||||
m_videoParam = MxVideoParam(MxRect32(0, 0, 639, 479), NULL, 1, MxVideoParamFlags());
|
m_videoParam = MxVideoParam(MxRect32(0, 0, 639, 479), NULL, 1, MxVideoParamFlags());
|
||||||
|
#endif
|
||||||
m_videoParam.Flags().Set16Bit(MxDirectDraw::GetPrimaryBitDepth() == 16);
|
m_videoParam.Flags().Set16Bit(MxDirectDraw::GetPrimaryBitDepth() == 16);
|
||||||
|
|
||||||
m_windowHandle = NULL;
|
m_windowHandle = NULL;
|
||||||
|
|
138
LEGO1/LegoOmni.def
Normal file
138
LEGO1/LegoOmni.def
Normal file
|
@ -0,0 +1,138 @@
|
||||||
|
; LegoOmni.def : Declares the module paarameters for the LEGO1.DLL.
|
||||||
|
|
||||||
|
DESCRIPTION "Lego OMNI Windows Dynamic Link Library"
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
|
||||||
|
; EXPORTs really required only.
|
||||||
|
|
||||||
|
??0LegoBackgroundColor@@QAE@PBD0@Z
|
||||||
|
??0LegoGameState@@QAE@XZ
|
||||||
|
??0LegoWorld@@QAE@XZ
|
||||||
|
??0MxAtomId@@QAE@PBDW4LookupMode@@@Z
|
||||||
|
??0MxBitmap@@QAE@XZ
|
||||||
|
??0MxCore@@QAE@XZ
|
||||||
|
??0MxCriticalSection@@QAE@XZ
|
||||||
|
??0MxDSAction@@QAE@XZ
|
||||||
|
??0MxDSFile@@QAE@PBDK@Z
|
||||||
|
??0MxOmniCreateFlags@@QAE@XZ
|
||||||
|
??0MxOmniCreateParam@@QAE@PBDPAUHWND__@@AAVMxVideoParam@@VMxOmniCreateFlags@@@Z
|
||||||
|
??0MxString@@QAE@ABV0@@Z
|
||||||
|
??0MxVideoParam@@QAE@AAV0@@Z
|
||||||
|
??0MxVideoParam@@QAE@AAVMxRect32@@PAVMxPalette@@KAAVMxVideoParamFlags@@@Z
|
||||||
|
??0MxVideoParam@@QAE@XZ
|
||||||
|
??0MxVideoParamFlags@@QAE@XZ
|
||||||
|
??1LegoEntity@@UAE@XZ
|
||||||
|
??1LegoGameState@@QAE@XZ
|
||||||
|
??1LegoWorld@@UAE@XZ
|
||||||
|
??1MXIOINFO@@QAE@XZ
|
||||||
|
??1MxAtomId@@QAE@XZ
|
||||||
|
??1MxBitmap@@UAE@XZ
|
||||||
|
??1MxCore@@UAE@XZ
|
||||||
|
??1MxCriticalSection@@QAE@XZ
|
||||||
|
??1MxDSAction@@UAE@XZ
|
||||||
|
??1MxDSFile@@UAE@XZ
|
||||||
|
??1MxPresenter@@UAE@XZ
|
||||||
|
??1MxString@@UAE@XZ
|
||||||
|
??1MxVideoParam@@QAE@XZ
|
||||||
|
??4MxAtomId@@QAEAAV0@ABV0@@Z
|
||||||
|
??4MxString@@QAEABV0@PBD@Z
|
||||||
|
??4MxVideoParam@@QAEAAV0@ABV0@@Z
|
||||||
|
??8MxPalette@@QAEEAAV0@@Z
|
||||||
|
?BackgroundAudioManager@@YAPAVMxBackgroundAudioManager@@XZ
|
||||||
|
?Close@MxDSFile@@UAEJXZ
|
||||||
|
?Close@MxStreamer@@QAEJPBD@Z
|
||||||
|
?CreateBackgroundAudio@LegoOmni@@QAEXXZ
|
||||||
|
?CreateInstance@LegoOmni@@SAXXZ
|
||||||
|
?CreatePalette@MxBitmap@@UAEPAVMxPalette@@XZ
|
||||||
|
?CreateStreamObject@@YAPAVMxDSObject@@PAVMxDSFile@@F@Z
|
||||||
|
?DestroyInstance@MxOmni@@SAXXZ
|
||||||
|
?Detach@MxPalette@@QAEXXZ
|
||||||
|
?DisableRMDevice@LegoVideoManager@@QAEHXZ
|
||||||
|
?DoneTickle@MxPresenter@@MAEXXZ
|
||||||
|
?Enable@MxBackgroundAudioManager@@QAEXE@Z
|
||||||
|
?Enable@MxPresenter@@UAEXE@Z
|
||||||
|
?EnableFullScreenMovie@LegoVideoManager@@QAEXEE@Z
|
||||||
|
?EnableRMDevice@LegoVideoManager@@QAEHXZ
|
||||||
|
?EndAction@MxPresenter@@UAEXXZ
|
||||||
|
?EventManager@@YAPAVMxEventManager@@XZ
|
||||||
|
?FlipToGDISurface@MxDirectDraw@@QAEHXZ
|
||||||
|
?GameState@@YAPAVLegoGameState@@XZ
|
||||||
|
?GetBufferSize@MxDSFile@@UAEKXZ
|
||||||
|
?GetCD@MxOmni@@SAPBDXZ
|
||||||
|
?GetCurrPathInfo@LegoOmni@@SAHPAPAVLegoPathBoundary@@AAH@Z
|
||||||
|
?GetDefaults@LegoNavController@@SAXPAHPAM11111111PAE@Z
|
||||||
|
?GetHD@MxOmni@@SAPBDXZ
|
||||||
|
?GetInstance@LegoOmni@@SAPAV1@XZ
|
||||||
|
?GetInstance@MxOmni@@SAPAV1@XZ
|
||||||
|
?GetInstance@MxScheduler@@SAPAV1@XZ
|
||||||
|
?GetNoCD_SourceName@@YAPBDXZ
|
||||||
|
?GetPartsThreshold@RealtimeView@@SAMXZ
|
||||||
|
?GetPrimaryBitDepth@MxDirectDraw@@SAHXZ
|
||||||
|
?GetRealTime@MxTimer@@QAEJXZ
|
||||||
|
?GetStreamBuffersNum@MxDSFile@@UAEKXZ
|
||||||
|
?GetUserMaxLOD@RealtimeView@@SAMXZ
|
||||||
|
?GetVariable@MxVariableTable@@QAEPBDPBD@Z
|
||||||
|
?Init@MxPresenter@@IAEXXZ
|
||||||
|
?InputManager@@YAPAVLegoInputManager@@XZ
|
||||||
|
?InvalidateRect@MxVideoManager@@QAEXAAVMxRect32@@@Z
|
||||||
|
?IsSound3D@MxOmni@@SAEXZ
|
||||||
|
?Lego@@YAPAVLegoOmni@@XZ
|
||||||
|
?Load@LegoGameState@@QAEJK@Z
|
||||||
|
?MSoundManager@@YAPAVMxSoundManager@@XZ
|
||||||
|
?MakeSourceName@@YAXPADPBD@Z
|
||||||
|
?MoveCursor@LegoVideoManager@@QAEXHH@Z
|
||||||
|
?MusicManager@@YAPAVMxMusicManager@@XZ
|
||||||
|
?NotificationManager@@YAPAVMxNotificationManager@@XZ
|
||||||
|
?Notify@MxCore@@UAEJAAVMxParam@@@Z
|
||||||
|
?Open@MxDSFile@@UAEJK@Z
|
||||||
|
?Open@MxStreamer@@QAEPAVMxStreamController@@PBDG@Z
|
||||||
|
?ParseExtra@MxPresenter@@MAEXXZ
|
||||||
|
?Pause@MxDirectDraw@@QAEHH@Z
|
||||||
|
?PickEntity@@YAPAVLegoEntity@@JJ@Z
|
||||||
|
?PickROI@@YAPAVLegoROI@@JJ@Z
|
||||||
|
?QueueEvent@LegoInputManager@@QAEXW4NotificationId@@EJJE@Z
|
||||||
|
?Read@MxBitmap@@UAEJPBD@Z
|
||||||
|
?Read@MxDSFile@@UAEJPAEK@Z
|
||||||
|
?RealizePalette@MxVideoManager@@UAEJPAVMxPalette@@@Z
|
||||||
|
?Register@LegoInputManager@@QAEXPAVMxCore@@@Z
|
||||||
|
?RemoveAll@ViewManager@@QAEXPAVViewROI@@@Z
|
||||||
|
?RemoveWorld@LegoOmni@@QAEXABVMxAtomId@@J@Z
|
||||||
|
?Save@LegoGameState@@QAEJK@Z
|
||||||
|
?Seek@MxDSFile@@UAEJJH@Z
|
||||||
|
?SerializePlayersInfo@LegoGameState@@QAEXF@Z
|
||||||
|
?SerializeScoreHistory@LegoGameState@@QAEXF@Z
|
||||||
|
?SetCD@MxOmni@@SAXPBD@Z
|
||||||
|
?SetDefaults@LegoNavController@@SAXHMMMMMMMMME@Z
|
||||||
|
?SetDeviceName@MxVideoParam@@QAEXPAD@Z
|
||||||
|
?SetDisplayBB@LegoROI@@QAEXH@Z
|
||||||
|
?SetDoMutex@MxCriticalSection@@SAXXZ
|
||||||
|
?SetHD@MxOmni@@SAXPBD@Z
|
||||||
|
?SetObjectName@MxDSObject@@QAEXPBD@Z
|
||||||
|
?SetOmniUserMessage@@YAXP6AXPBDH@Z@Z
|
||||||
|
?SetPartsThreshold@RealtimeView@@SAXM@Z
|
||||||
|
?SetSavePath@LegoGameState@@QAEXPAD@Z
|
||||||
|
?SetSound3D@MxOmni@@SAXE@Z
|
||||||
|
?SetUserMaxLOD@RealtimeView@@SAXM@Z
|
||||||
|
?SetVariable@MxVariableTable@@QAEXPAVMxVariable@@@Z
|
||||||
|
?SetVariable@MxVariableTable@@QAEXPBD0@Z
|
||||||
|
?SetWaitIndicator@MxTransitionManager@@QAEXPAVMxVideoPresenter@@@Z
|
||||||
|
?SoundManager@@YAPAVLegoSoundManager@@XZ
|
||||||
|
?Start@@YAJPAVMxDSAction@@@Z
|
||||||
|
?StartAction@MxPresenter@@UAEJPAVMxStreamController@@PAVMxDSAction@@@Z
|
||||||
|
?StartMultiTasking@MxScheduler@@QAEXK@Z
|
||||||
|
?Streamer@@YAPAVMxStreamer@@XZ
|
||||||
|
?Tickle@MxPresenter@@UAEJXZ
|
||||||
|
?TickleManager@@YAPAVMxTickleManager@@XZ
|
||||||
|
?Timer@@YAPAVMxTimer@@XZ
|
||||||
|
?TransitionManager@@YAPAVMxTransitionManager@@XZ
|
||||||
|
?UnRegister@LegoInputManager@@QAEXPAVMxCore@@@Z
|
||||||
|
?VariableTable@@YAPAVMxVariableTable@@XZ
|
||||||
|
?VideoManager@@YAPAVLegoVideoManager@@XZ
|
||||||
|
?configureLegoAnimationManager@LegoAnimationManager@@SAXH@Z
|
||||||
|
?configureLegoBuildingManager@LegoBuildingManager@@SAXH@Z
|
||||||
|
?configureLegoModelPresenter@LegoModelPresenter@@SAXH@Z
|
||||||
|
?configureLegoPartPresenter@LegoPartPresenter@@SAXHH@Z
|
||||||
|
?configureLegoROI@LegoROI@@SAXH@Z
|
||||||
|
?configureLegoWorldPresenter@LegoWorldPresenter@@SAXH@Z
|
||||||
|
_DllMain@12
|
170
LEGO1/LegoOmni.mingw.def
Normal file
170
LEGO1/LegoOmni.mingw.def
Normal file
|
@ -0,0 +1,170 @@
|
||||||
|
; LegoOmni.def : Declares the module paarameters for the LEGO1.DLL.
|
||||||
|
|
||||||
|
DESCRIPTION " Lego OMNI Windows Dynamic Link Library"
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
|
||||||
|
; EXPORTs really required only.
|
||||||
|
|
||||||
|
_ZN13LegoGameState11SetSavePathEPc
|
||||||
|
_ZN13LegoGameState20SerializePlayersInfoEs
|
||||||
|
_ZN13LegoGameState21SerializeScoreHistoryEs
|
||||||
|
_ZN13LegoGameState4SaveEj
|
||||||
|
_ZN13LegoGameStateC1Ev
|
||||||
|
_ZN13LegoGameStateC2Ev
|
||||||
|
_ZN13LegoGameStateD1Ev
|
||||||
|
_ZN13LegoGameStateD2Ev
|
||||||
|
_ZN9LegoWorldC1Ev
|
||||||
|
_ZN9LegoWorldC2Ev
|
||||||
|
_ZN9LegoWorldD0Ev
|
||||||
|
_ZN9LegoWorldD1Ev
|
||||||
|
_ZN9LegoWorldD2Ev
|
||||||
|
DllMain@12
|
||||||
|
_Z10PickEntityii
|
||||||
|
_Z12EventManagerv
|
||||||
|
_Z12InputManagerv
|
||||||
|
_Z12MusicManagerv
|
||||||
|
_Z12SoundManagerv
|
||||||
|
_Z12VideoManagerv
|
||||||
|
_Z13MSoundManagerv
|
||||||
|
_Z13TickleManagerv
|
||||||
|
_Z13VariableTablev
|
||||||
|
_Z14MakeSourceNamePcPKc
|
||||||
|
_Z17TransitionManagerv
|
||||||
|
_Z18CreateStreamObjectP8MxDSFiles
|
||||||
|
_Z18GetNoCD_SourceNamev
|
||||||
|
_Z18SetOmniUserMessagePFvPKciE
|
||||||
|
_Z19NotificationManagerv
|
||||||
|
_Z22BackgroundAudioManagerv
|
||||||
|
_Z4Legov
|
||||||
|
_Z5StartP10MxDSAction
|
||||||
|
_Z5Timerv
|
||||||
|
_Z7PickROIii
|
||||||
|
_Z8Streamerv
|
||||||
|
_Z9GameStatev
|
||||||
|
_ZN10LegoEntityD0Ev
|
||||||
|
_ZN10LegoEntityD1Ev
|
||||||
|
_ZN10LegoEntityD2Ev
|
||||||
|
_ZN10MxDSActionC1Ev
|
||||||
|
_ZN10MxDSActionC2Ev
|
||||||
|
_ZN10MxDSActionD0Ev
|
||||||
|
_ZN10MxDSActionD1Ev
|
||||||
|
_ZN10MxDSActionD2Ev
|
||||||
|
_ZN10MxDSObject13SetObjectNameEPKc
|
||||||
|
_ZN10MxStreamer4OpenEPKct
|
||||||
|
_ZN10MxStreamer5CloseEPKc
|
||||||
|
_ZN11MxPresenter10DoneTickleEv
|
||||||
|
_ZN11MxPresenter10ParseExtraEv
|
||||||
|
_ZN11MxPresenter11StartActionEP18MxStreamControllerP10MxDSAction
|
||||||
|
_ZN11MxPresenter4InitEv
|
||||||
|
_ZN11MxPresenter6EnableEh
|
||||||
|
_ZN11MxPresenter6TickleEv
|
||||||
|
_ZN11MxPresenter9EndActionEv
|
||||||
|
_ZN11MxPresenterD0Ev
|
||||||
|
_ZN11MxPresenterD1Ev
|
||||||
|
_ZN11MxPresenterD2Ev
|
||||||
|
_ZN11MxScheduler11GetInstanceEv
|
||||||
|
_ZN11MxScheduler17StartMultiTaskingEj
|
||||||
|
_ZN11ViewManager9RemoveAllEP7ViewROI
|
||||||
|
_ZN12MxDirectDraw16FlipToGDISurfaceEv
|
||||||
|
_ZN12MxDirectDraw18GetPrimaryBitDepthEv
|
||||||
|
_ZN12MxDirectDraw5PauseEi
|
||||||
|
_ZN12MxVideoParam13SetDeviceNameEPc
|
||||||
|
_ZN12MxVideoParamC1ERS_
|
||||||
|
_ZN12MxVideoParamC1Ev
|
||||||
|
_ZN12MxVideoParamC2ERS_
|
||||||
|
_ZN12MxVideoParamC2Ev
|
||||||
|
_ZN12MxVideoParamD1Ev
|
||||||
|
_ZN12MxVideoParamD2Ev
|
||||||
|
_ZN12MxVideoParamaSERKS_
|
||||||
|
_ZN12RealtimeView13GetUserMaxLODEv
|
||||||
|
_ZN12RealtimeView13SetUserMaxLODEf
|
||||||
|
_ZN12RealtimeView17GetPartsThresholdEv
|
||||||
|
_ZN12RealtimeView17SetPartsThresholdEf
|
||||||
|
_ZN14MxVideoManager14InvalidateRectER8MxRect32
|
||||||
|
_ZN14MxVideoManager14RealizePaletteEP9MxPalette
|
||||||
|
_ZN15MxVariableTable11GetVariableEPKc
|
||||||
|
_ZN15MxVariableTable11SetVariableEP10MxVariable
|
||||||
|
_ZN15MxVariableTable11SetVariableEPKcS1_ = _ZN15MxVariableTable11SetVariableEPKcS1_
|
||||||
|
;_ZN16LegoInputManager10QueueEventE14NotificationIdhiih
|
||||||
|
_ZN16LegoInputManager10QueueEventE14NotificationIdhiih
|
||||||
|
_ZN16LegoInputManager10UnRegisterEP6MxCore
|
||||||
|
_ZN16LegoInputManager8RegisterEP6MxCore
|
||||||
|
_ZN16LegoVideoManager10MoveCursorEii
|
||||||
|
_ZN16LegoVideoManager14EnableRMDeviceEv
|
||||||
|
_ZN16LegoVideoManager15DisableRMDeviceEv
|
||||||
|
_ZN16LegoVideoManager21EnableFullScreenMovieEhh
|
||||||
|
_ZN17LegoNavController11GetDefaultsEPiPfS1_S1_S1_S1_S1_S1_S1_S1_Ph
|
||||||
|
_ZN17LegoNavController11SetDefaultsEifffffffffh
|
||||||
|
_ZN17LegoPartPresenter26configureLegoPartPresenterEii
|
||||||
|
_ZN17MxCriticalSection10SetDoMutexEv
|
||||||
|
_ZN17MxCriticalSectionC1Ev
|
||||||
|
_ZN17MxCriticalSectionC2Ev
|
||||||
|
_ZN17MxCriticalSectionD1Ev
|
||||||
|
_ZN17MxCriticalSectionD2Ev
|
||||||
|
_ZN17MxOmniCreateFlagsC1Ev
|
||||||
|
_ZN17MxOmniCreateFlagsC2Ev
|
||||||
|
_ZN17MxOmniCreateParamC1EPKcP6HWND__R12MxVideoParam17MxOmniCreateFlags
|
||||||
|
_ZN17MxVideoParamFlagsC1Ev
|
||||||
|
_ZN17MxVideoParamFlagsC2Ev
|
||||||
|
_ZN18LegoModelPresenter27configureLegoModelPresenterEi
|
||||||
|
_ZN18LegoWorldPresenter27configureLegoWorldPresenterEi
|
||||||
|
_ZN19LegoBuildingManager28configureLegoBuildingManagerEi
|
||||||
|
_ZN19MxTransitionManager16SetWaitIndicatorEP16MxVideoPresenter
|
||||||
|
_ZN20LegoAnimationManager29configureLegoAnimationManagerEi
|
||||||
|
_ZN24MxBackgroundAudioManager6EnableEh
|
||||||
|
_ZN6MxCore6NotifyER7MxParam
|
||||||
|
_ZN6MxCoreC1Ev
|
||||||
|
_ZN6MxCoreC2Ev
|
||||||
|
_ZN6MxCoreD0Ev
|
||||||
|
_ZN6MxCoreD1Ev
|
||||||
|
_ZN6MxCoreD2Ev
|
||||||
|
_ZN6MxOmni10SetSound3DEh
|
||||||
|
_ZN6MxOmni11GetInstanceEv
|
||||||
|
_ZN6MxOmni15DestroyInstanceEv
|
||||||
|
_ZN6MxOmni5GetCDEv
|
||||||
|
_ZN6MxOmni5GetHDEv
|
||||||
|
_ZN6MxOmni5SetCDEPKc
|
||||||
|
_ZN6MxOmni5SetHDEPKc
|
||||||
|
_ZN6MxOmni9IsSound3DEv
|
||||||
|
_ZN7LegoROI12SetDisplayBBEi
|
||||||
|
_ZN7LegoROI16configureLegoROIEi
|
||||||
|
_ZN7MxTimer11GetRealTimeEv
|
||||||
|
_ZN8LegoOmni11GetInstanceEv
|
||||||
|
_ZN8LegoOmni11RemoveWorldERK8MxAtomIdi
|
||||||
|
_ZN8LegoOmni14CreateInstanceEv
|
||||||
|
_ZN8LegoOmni15GetCurrPathInfoEPP16LegoPathBoundaryRi
|
||||||
|
_ZN8LegoOmni21CreateBackgroundAudioEv
|
||||||
|
_ZN8MXIOINFOD1Ev
|
||||||
|
_ZN8MXIOINFOD2Ev
|
||||||
|
_ZN8MxAtomIdC1EPKc10LookupMode
|
||||||
|
_ZN8MxAtomIdC2EPKc10LookupMode
|
||||||
|
_ZN8MxAtomIdD1Ev
|
||||||
|
_ZN8MxAtomIdD2Ev
|
||||||
|
_ZN8MxAtomIdaSERKS_
|
||||||
|
_ZN8MxBitmap13CreatePaletteEv
|
||||||
|
_ZN8MxBitmap4ReadEPKc
|
||||||
|
_ZN8MxBitmapC1Ev
|
||||||
|
_ZN8MxBitmapC2Ev
|
||||||
|
_ZN8MxBitmapD0Ev
|
||||||
|
_ZN8MxBitmapD1Ev
|
||||||
|
_ZN8MxBitmapD2Ev
|
||||||
|
_ZN8MxDSFile13GetBufferSizeEv
|
||||||
|
_ZN8MxDSFile19GetStreamBuffersNumEv
|
||||||
|
_ZN8MxDSFile4OpenEj
|
||||||
|
_ZN8MxDSFile4ReadEPhj
|
||||||
|
_ZN8MxDSFile4SeekEii
|
||||||
|
_ZN8MxDSFile5CloseEv
|
||||||
|
_ZN8MxDSFileC1EPKcj
|
||||||
|
_ZN8MxDSFileC2EPKcj
|
||||||
|
_ZN8MxDSFileD0Ev
|
||||||
|
_ZN8MxDSFileD1Ev
|
||||||
|
_ZN8MxDSFileD2Ev
|
||||||
|
_ZN8MxStringC1ERKS_
|
||||||
|
_ZN8MxStringC2ERKS_
|
||||||
|
_ZN8MxStringD0Ev
|
||||||
|
_ZN8MxStringD1Ev
|
||||||
|
_ZN8MxStringD2Ev
|
||||||
|
_ZN8MxStringaSEPKc
|
||||||
|
_ZN9MxPalette6DetachEv
|
||||||
|
_ZN9MxPaletteeqERS_
|
|
@ -32,7 +32,7 @@ class LegoAnimationManager : public MxCore {
|
||||||
void FUN_1005f720(undefined4);
|
void FUN_1005f720(undefined4);
|
||||||
void FUN_10064670(MxBool);
|
void FUN_10064670(MxBool);
|
||||||
|
|
||||||
__declspec(dllexport) static void configureLegoAnimationManager(MxS32 p_legoAnimationManagerConfig);
|
static void configureLegoAnimationManager(MxS32 p_legoAnimationManagerConfig);
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x1005ed10
|
// SYNTHETIC: LEGO1 0x1005ed10
|
||||||
// LegoAnimationManager::`scalar deleting destructor'
|
// LegoAnimationManager::`scalar deleting destructor'
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
// SIZE 0x30
|
// SIZE 0x30
|
||||||
class LegoBackgroundColor : public MxVariable {
|
class LegoBackgroundColor : public MxVariable {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) LegoBackgroundColor(const char* p_key, const char* p_value);
|
LegoBackgroundColor(const char* p_key, const char* p_value);
|
||||||
virtual void SetValue(const char* p_colorString) override;
|
virtual void SetValue(const char* p_colorString) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -19,7 +19,7 @@ class LegoBuildingManager : public MxCore {
|
||||||
return "LegoBuildingManager";
|
return "LegoBuildingManager";
|
||||||
}
|
}
|
||||||
|
|
||||||
__declspec(dllexport) static void configureLegoBuildingManager(MxS32);
|
static void configureLegoBuildingManager(MxS32);
|
||||||
|
|
||||||
void FUN_1002fa00();
|
void FUN_1002fa00();
|
||||||
|
|
||||||
|
|
|
@ -19,12 +19,8 @@ class LegoEntity : public MxEntity {
|
||||||
// Inlined at 0x100853f7
|
// Inlined at 0x100853f7
|
||||||
inline LegoEntity() { Init(); }
|
inline LegoEntity() { Init(); }
|
||||||
|
|
||||||
#ifdef ISLE_APP
|
|
||||||
__declspec(dllexport) virtual ~LegoEntity() override;
|
|
||||||
#else
|
|
||||||
// FUNCTION: LEGO1 0x1000c290
|
// FUNCTION: LEGO1 0x1000c290
|
||||||
__declspec(dllexport) virtual ~LegoEntity() override { Destroy(TRUE); }
|
virtual ~LegoEntity() override { Destroy(TRUE); }
|
||||||
#endif
|
|
||||||
|
|
||||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||||
|
|
||||||
|
|
|
@ -20,13 +20,13 @@ struct ColorStringStruct {
|
||||||
// SIZE 0x430
|
// SIZE 0x430
|
||||||
class LegoGameState {
|
class LegoGameState {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) LegoGameState();
|
LegoGameState();
|
||||||
__declspec(dllexport) ~LegoGameState();
|
~LegoGameState();
|
||||||
__declspec(dllexport) MxResult Load(MxULong);
|
MxResult Load(MxULong);
|
||||||
__declspec(dllexport) MxResult Save(MxULong);
|
MxResult Save(MxULong);
|
||||||
__declspec(dllexport) void SerializePlayersInfo(MxS16);
|
void SerializePlayersInfo(MxS16);
|
||||||
__declspec(dllexport) void SerializeScoreHistory(MxS16 p_flags);
|
void SerializeScoreHistory(MxS16 p_flags);
|
||||||
__declspec(dllexport) void SetSavePath(char*);
|
void SetSavePath(char*);
|
||||||
|
|
||||||
LegoState* GetState(const char* p_stateName);
|
LegoState* GetState(const char* p_stateName);
|
||||||
LegoState* CreateState(const char* p_stateName);
|
LegoState* CreateState(const char* p_stateName);
|
||||||
|
|
|
@ -32,9 +32,9 @@ class LegoInputManager : public MxPresenter {
|
||||||
LegoInputManager();
|
LegoInputManager();
|
||||||
virtual ~LegoInputManager() override;
|
virtual ~LegoInputManager() override;
|
||||||
|
|
||||||
__declspec(dllexport) void QueueEvent(NotificationId p_id, MxU8 p_modifier, MxLong p_x, MxLong p_y, MxU8 p_key);
|
void QueueEvent(NotificationId p_id, MxU8 p_modifier, MxLong p_x, MxLong p_y, MxU8 p_key);
|
||||||
__declspec(dllexport) void Register(MxCore*);
|
void Register(MxCore*);
|
||||||
__declspec(dllexport) void UnRegister(MxCore*);
|
void UnRegister(MxCore*);
|
||||||
|
|
||||||
virtual MxResult Tickle() override; // vtable+0x8
|
virtual MxResult Tickle() override; // vtable+0x8
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ class AutoROI;
|
||||||
// SIZE 0x6c (discovered through inline constructor at 0x10009ae6)
|
// SIZE 0x6c (discovered through inline constructor at 0x10009ae6)
|
||||||
class LegoModelPresenter : public MxVideoPresenter {
|
class LegoModelPresenter : public MxVideoPresenter {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) static void configureLegoModelPresenter(MxS32 p_modelPresenterConfig);
|
static void configureLegoModelPresenter(MxS32 p_modelPresenterConfig);
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1000ccb0
|
// FUNCTION: LEGO1 0x1000ccb0
|
||||||
inline const char* ClassName() const override // vtable+0xc
|
inline const char* ClassName() const override // vtable+0xc
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
// SIZE 0x70
|
// SIZE 0x70
|
||||||
class LegoNavController : public MxCore {
|
class LegoNavController : public MxCore {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) static void GetDefaults(
|
static void GetDefaults(
|
||||||
int* p_mouseDeadzone,
|
int* p_mouseDeadzone,
|
||||||
float* p_movementMaxSpeed,
|
float* p_movementMaxSpeed,
|
||||||
float* p_turnMaxSpeed,
|
float* p_turnMaxSpeed,
|
||||||
|
@ -22,7 +22,7 @@ class LegoNavController : public MxCore {
|
||||||
float* p_rotationSensitivity,
|
float* p_rotationSensitivity,
|
||||||
MxBool* p_turnUseVelocity
|
MxBool* p_turnUseVelocity
|
||||||
);
|
);
|
||||||
__declspec(dllexport) static void SetDefaults(
|
static void SetDefaults(
|
||||||
int p_mouseDeadzone,
|
int p_mouseDeadzone,
|
||||||
float p_movementMaxSpeed,
|
float p_movementMaxSpeed,
|
||||||
float p_turnMaxSpeed,
|
float p_turnMaxSpeed,
|
||||||
|
|
|
@ -68,11 +68,11 @@ class LegoOmni : public MxOmni {
|
||||||
c_clearScreen = 0x04
|
c_clearScreen = 0x04
|
||||||
};
|
};
|
||||||
|
|
||||||
__declspec(dllexport) void CreateBackgroundAudio();
|
void CreateBackgroundAudio();
|
||||||
__declspec(dllexport) void RemoveWorld(const MxAtomId&, MxLong);
|
void RemoveWorld(const MxAtomId&, MxLong);
|
||||||
__declspec(dllexport) static int GetCurrPathInfo(LegoPathBoundary**, MxS32&);
|
static int GetCurrPathInfo(LegoPathBoundary**, MxS32&);
|
||||||
__declspec(dllexport) static void CreateInstance();
|
static void CreateInstance();
|
||||||
__declspec(dllexport) static LegoOmni* GetInstance();
|
static LegoOmni* GetInstance();
|
||||||
|
|
||||||
LegoOmni();
|
LegoOmni();
|
||||||
virtual ~LegoOmni(); // vtable+00
|
virtual ~LegoOmni(); // vtable+00
|
||||||
|
@ -153,16 +153,16 @@ class LegoOmni : public MxOmni {
|
||||||
MxBool m_unk0x13c; // 0x13c
|
MxBool m_unk0x13c; // 0x13c
|
||||||
};
|
};
|
||||||
|
|
||||||
__declspec(dllexport) MxBackgroundAudioManager* BackgroundAudioManager();
|
MxBackgroundAudioManager* BackgroundAudioManager();
|
||||||
__declspec(dllexport) LegoGameState* GameState();
|
LegoGameState* GameState();
|
||||||
__declspec(dllexport) const char* GetNoCD_SourceName();
|
const char* GetNoCD_SourceName();
|
||||||
__declspec(dllexport) LegoInputManager* InputManager();
|
LegoInputManager* InputManager();
|
||||||
__declspec(dllexport) LegoOmni* Lego();
|
LegoOmni* Lego();
|
||||||
__declspec(dllexport) LegoEntity* PickEntity(MxLong, MxLong);
|
LegoEntity* PickEntity(MxLong, MxLong);
|
||||||
__declspec(dllexport) LegoROI* PickROI(MxLong, MxLong);
|
LegoROI* PickROI(MxLong, MxLong);
|
||||||
__declspec(dllexport) LegoSoundManager* SoundManager();
|
LegoSoundManager* SoundManager();
|
||||||
__declspec(dllexport) MxTransitionManager* TransitionManager();
|
MxTransitionManager* TransitionManager();
|
||||||
__declspec(dllexport) LegoVideoManager* VideoManager();
|
LegoVideoManager* VideoManager();
|
||||||
|
|
||||||
LegoAnimationManager* AnimationManager();
|
LegoAnimationManager* AnimationManager();
|
||||||
LegoBuildingManager* BuildingManager();
|
LegoBuildingManager* BuildingManager();
|
||||||
|
|
|
@ -24,7 +24,7 @@ class LegoPartPresenter : public MxMediaPresenter {
|
||||||
virtual MxResult AddToManager() override; // vtable+0x34
|
virtual MxResult AddToManager() override; // vtable+0x34
|
||||||
virtual void Destroy() override; // vtable+0x38
|
virtual void Destroy() override; // vtable+0x38
|
||||||
|
|
||||||
__declspec(dllexport) static void configureLegoPartPresenter(MxS32, MxS32);
|
static void configureLegoPartPresenter(MxS32, MxS32);
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x1000d060
|
// SYNTHETIC: LEGO1 0x1000d060
|
||||||
// LegoPartPresenter::`scalar deleting destructor'
|
// LegoPartPresenter::`scalar deleting destructor'
|
||||||
|
|
|
@ -19,11 +19,11 @@ class LegoVideoManager : public MxVideoManager {
|
||||||
LegoVideoManager();
|
LegoVideoManager();
|
||||||
virtual ~LegoVideoManager() override;
|
virtual ~LegoVideoManager() override;
|
||||||
|
|
||||||
__declspec(dllexport) int EnableRMDevice();
|
int EnableRMDevice();
|
||||||
__declspec(dllexport) int DisableRMDevice();
|
int DisableRMDevice();
|
||||||
void EnableFullScreenMovie(MxBool p_enable);
|
void EnableFullScreenMovie(MxBool p_enable);
|
||||||
__declspec(dllexport) void EnableFullScreenMovie(MxBool p_enable, MxBool p_scale);
|
void EnableFullScreenMovie(MxBool p_enable, MxBool p_scale);
|
||||||
__declspec(dllexport) void MoveCursor(MxS32 p_cursorX, MxS32 p_cursorY);
|
void MoveCursor(MxS32 p_cursorX, MxS32 p_cursorY);
|
||||||
|
|
||||||
virtual MxResult Tickle() override; // vtable+0x8
|
virtual MxResult Tickle() override; // vtable+0x8
|
||||||
virtual void Destroy() override; // vtable+0x18
|
virtual void Destroy() override; // vtable+0x18
|
||||||
|
|
|
@ -22,8 +22,8 @@ typedef set<MxPresenter*, PresenterSetCompare> MxPresenterSet;
|
||||||
// SIZE 0xf8
|
// SIZE 0xf8
|
||||||
class LegoWorld : public LegoEntity {
|
class LegoWorld : public LegoEntity {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) LegoWorld();
|
LegoWorld();
|
||||||
__declspec(dllexport) virtual ~LegoWorld() override; // vtable+0x0
|
virtual ~LegoWorld() override; // vtable+0x0
|
||||||
|
|
||||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||||
virtual MxResult Tickle() override; // vtable+0x8
|
virtual MxResult Tickle() override; // vtable+0x8
|
||||||
|
|
|
@ -10,7 +10,7 @@ class LegoWorldPresenter : public LegoEntityPresenter {
|
||||||
LegoWorldPresenter();
|
LegoWorldPresenter();
|
||||||
virtual ~LegoWorldPresenter() override; // vtable+0x0
|
virtual ~LegoWorldPresenter() override; // vtable+0x0
|
||||||
|
|
||||||
__declspec(dllexport) static void configureLegoWorldPresenter(MxS32 p_legoWorldPresenterQuality);
|
static void configureLegoWorldPresenter(MxS32 p_legoWorldPresenterQuality);
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10066630
|
// FUNCTION: LEGO1 0x10066630
|
||||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||||
|
|
|
@ -39,7 +39,7 @@ class MxBackgroundAudioManager : public MxCore {
|
||||||
void FUN_1007ef40();
|
void FUN_1007ef40();
|
||||||
void FadeInOrFadeOut();
|
void FadeInOrFadeOut();
|
||||||
|
|
||||||
__declspec(dllexport) void Enable(MxBool p_enable);
|
void Enable(MxBool p_enable);
|
||||||
virtual MxResult Create(MxAtomId& p_script, MxU32 p_frequencyMS);
|
virtual MxResult Create(MxAtomId& p_script, MxU32 p_frequencyMS);
|
||||||
|
|
||||||
void Stop();
|
void Stop();
|
||||||
|
|
|
@ -13,7 +13,7 @@ class MxTransitionManager : public MxCore {
|
||||||
MxTransitionManager();
|
MxTransitionManager();
|
||||||
virtual ~MxTransitionManager() override; // vtable+0x0
|
virtual ~MxTransitionManager() override; // vtable+0x0
|
||||||
|
|
||||||
__declspec(dllexport) void SetWaitIndicator(MxVideoPresenter* p_waitIndicator);
|
void SetWaitIndicator(MxVideoPresenter* p_waitIndicator);
|
||||||
|
|
||||||
virtual MxResult Tickle(); // vtable+0x8
|
virtual MxResult Tickle(); // vtable+0x8
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,9 @@
|
||||||
#include "mxtransitionmanager.h"
|
#include "mxtransitionmanager.h"
|
||||||
|
|
||||||
DECOMP_SIZE_ASSERT(Helicopter, 0x230)
|
DECOMP_SIZE_ASSERT(Helicopter, 0x230)
|
||||||
|
DECOMP_SIZE_ASSERT(Mx3DPointFloat, 0x14)
|
||||||
|
DECOMP_SIZE_ASSERT(Mx4DPointFloat, 0x18)
|
||||||
|
DECOMP_SIZE_ASSERT(MxMatrix, 0x48)
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10001e60
|
// FUNCTION: LEGO1 0x10001e60
|
||||||
Helicopter::Helicopter()
|
Helicopter::Helicopter()
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#include "SkateBoard.h"
|
#include "skateboard.h"
|
||||||
|
|
||||||
#include "decomp.h"
|
#include "decomp.h"
|
||||||
#include "mxnotificationmanager.h"
|
#include "mxnotificationmanager.h"
|
||||||
|
|
|
@ -7,10 +7,10 @@ DECOMP_SIZE_ASSERT(LegoROI, 0x10c);
|
||||||
// SIZE 0x14
|
// SIZE 0x14
|
||||||
typedef struct {
|
typedef struct {
|
||||||
const char* m_name;
|
const char* m_name;
|
||||||
MxS32 m_red;
|
int m_red;
|
||||||
MxS32 m_green;
|
int m_green;
|
||||||
MxS32 m_blue;
|
int m_blue;
|
||||||
MxS32 m_unk0x10;
|
int m_unk0x10;
|
||||||
} ROIColorAlias;
|
} ROIColorAlias;
|
||||||
|
|
||||||
// GLOBAL: LEGO1 0x100dbe28
|
// GLOBAL: LEGO1 0x100dbe28
|
||||||
|
@ -32,7 +32,7 @@ ROIColorAlias g_roiColorAliases[22] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
// GLOBAL: LEGO1 0x10101368
|
// GLOBAL: LEGO1 0x10101368
|
||||||
MxS32 g_roiConfig = 100;
|
int g_roiConfig = 100;
|
||||||
|
|
||||||
// GLOBAL: LEGO1 0x101013ac
|
// GLOBAL: LEGO1 0x101013ac
|
||||||
ROIHandler g_someHandlerFunction = NULL;
|
ROIHandler g_someHandlerFunction = NULL;
|
||||||
|
@ -54,24 +54,24 @@ void LegoROI::FUN_100a58f0(Matrix4& p_transform)
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100a81c0
|
// FUNCTION: LEGO1 0x100a81c0
|
||||||
void LegoROI::configureLegoROI(MxS32 p_roiConfig)
|
void LegoROI::configureLegoROI(int p_roiConfig)
|
||||||
{
|
{
|
||||||
g_roiConfig = p_roiConfig;
|
g_roiConfig = p_roiConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x100a9a50
|
// STUB: LEGO1 0x100a9a50
|
||||||
LegoROI::LegoROI(Tgl::Renderer* p_renderer, ViewLODList* p_lodList, MxTime p_time) : ViewROI(p_renderer, p_lodList)
|
LegoROI::LegoROI(Tgl::Renderer* p_renderer, ViewLODList* p_lodList, int p_time) : ViewROI(p_renderer, p_lodList)
|
||||||
{
|
{
|
||||||
m_time = p_time;
|
m_time = p_time;
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100a9bf0
|
// FUNCTION: LEGO1 0x100a9bf0
|
||||||
MxBool LegoROI::CallTheHandlerFunction(
|
unsigned char LegoROI::CallTheHandlerFunction(
|
||||||
char* p_param,
|
char* p_param,
|
||||||
MxFloat& p_red,
|
float& p_red,
|
||||||
MxFloat& p_green,
|
float& p_green,
|
||||||
MxFloat& p_blue,
|
float& p_blue,
|
||||||
MxFloat& p_other
|
float& p_other
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
// TODO
|
// TODO
|
||||||
|
@ -88,11 +88,11 @@ MxBool LegoROI::CallTheHandlerFunction(
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100a9c50
|
// FUNCTION: LEGO1 0x100a9c50
|
||||||
MxBool LegoROI::ColorAliasLookup(char* p_param, MxFloat& p_red, MxFloat& p_green, MxFloat& p_blue, MxFloat& p_other)
|
unsigned char LegoROI::ColorAliasLookup(char* p_param, float& p_red, float& p_green, float& p_blue, float& p_other)
|
||||||
{
|
{
|
||||||
// TODO: this seems awfully hacky for these devs. is there a dynamic way
|
// TODO: this seems awfully hacky for these devs. is there a dynamic way
|
||||||
// to represent `the end of this array` that would improve this?
|
// to represent `the end of this array` that would improve this?
|
||||||
MxU32 i = 0;
|
unsigned int i = 0;
|
||||||
do {
|
do {
|
||||||
if (strcmpi(g_roiColorAliases[i].m_name, p_param) == 0) {
|
if (strcmpi(g_roiColorAliases[i].m_name, p_param) == 0) {
|
||||||
p_red = g_roiColorAliases[i].m_red * g_normalizeByteToFloat;
|
p_red = g_roiColorAliases[i].m_red * g_normalizeByteToFloat;
|
||||||
|
@ -102,7 +102,7 @@ MxBool LegoROI::ColorAliasLookup(char* p_param, MxFloat& p_red, MxFloat& p_green
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
} while ((MxS32*) &g_roiColorAliases[i] < &g_roiConfig);
|
} while ((int*) &g_roiColorAliases[i] < &g_roiConfig);
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
@ -114,7 +114,7 @@ void LegoROI::SetSomeHandlerFunction(ROIHandler p_func)
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100a9e10
|
// FUNCTION: LEGO1 0x100a9e10
|
||||||
void LegoROI::SetDisplayBB(MxS32 p_displayBB)
|
void LegoROI::SetDisplayBB(int p_displayBB)
|
||||||
{
|
{
|
||||||
// Intentionally empty function
|
// Intentionally empty function
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,9 @@
|
||||||
#ifndef LEGOROI_H
|
#ifndef LEGOROI_H
|
||||||
#define LEGOROI_H
|
#define LEGOROI_H
|
||||||
|
|
||||||
#include "mxtypes.h"
|
|
||||||
#include "viewmanager/viewroi.h"
|
#include "viewmanager/viewroi.h"
|
||||||
|
|
||||||
typedef MxBool (*ROIHandler)(char*, char*, MxU32);
|
typedef unsigned char (*ROIHandler)(char*, char*, unsigned int);
|
||||||
|
|
||||||
class LegoEntity;
|
class LegoEntity;
|
||||||
|
|
||||||
|
@ -18,24 +17,24 @@ class AutoROI : public ViewROI {};
|
||||||
// SIZE 0x10c
|
// SIZE 0x10c
|
||||||
class LegoROI : public ViewROI {
|
class LegoROI : public ViewROI {
|
||||||
public:
|
public:
|
||||||
LegoROI(Tgl::Renderer* p_renderer, ViewLODList* p_lodList, MxTime p_time);
|
LegoROI(Tgl::Renderer* p_renderer, ViewLODList* p_lodList, int p_time);
|
||||||
|
|
||||||
virtual float IntrinsicImportance() const override; // vtable+0x4
|
virtual float IntrinsicImportance() const override; // vtable+0x4
|
||||||
// Note: Actually part of parent class (doesn't exist yet)
|
// Note: Actually part of parent class (doesn't exist yet)
|
||||||
virtual void UpdateWorldBoundingVolumes() override; // vtable+0x18
|
virtual void UpdateWorldBoundingVolumes() override; // vtable+0x18
|
||||||
|
|
||||||
__declspec(dllexport) void SetDisplayBB(MxS32 p_displayBB);
|
void SetDisplayBB(int p_displayBB);
|
||||||
__declspec(dllexport) static void configureLegoROI(MxS32 p_roi);
|
static void configureLegoROI(int p_roi);
|
||||||
|
|
||||||
static void SetSomeHandlerFunction(ROIHandler p_func);
|
static void SetSomeHandlerFunction(ROIHandler p_func);
|
||||||
static MxBool CallTheHandlerFunction(
|
static unsigned char CallTheHandlerFunction(
|
||||||
char* p_param,
|
char* p_param,
|
||||||
MxFloat& p_red,
|
float& p_red,
|
||||||
MxFloat& p_green,
|
float& p_green,
|
||||||
MxFloat& p_blue,
|
float& p_blue,
|
||||||
MxFloat& p_other
|
float& p_other
|
||||||
);
|
);
|
||||||
static MxBool ColorAliasLookup(char* p_param, MxFloat& p_red, MxFloat& p_green, MxFloat& p_blue, MxFloat& p_other);
|
static unsigned char ColorAliasLookup(char* p_param, float& p_red, float& p_green, float& p_blue, float& p_other);
|
||||||
|
|
||||||
void WrappedSetLocalTransform(Matrix4& p_transform);
|
void WrappedSetLocalTransform(Matrix4& p_transform);
|
||||||
void FUN_100a46b0(Matrix4& p_transform);
|
void FUN_100a46b0(Matrix4& p_transform);
|
||||||
|
@ -50,7 +49,7 @@ class LegoROI : public ViewROI {
|
||||||
private:
|
private:
|
||||||
undefined m_pad[0x24]; // 0xe0
|
undefined m_pad[0x24]; // 0xe0
|
||||||
LegoEntity* m_unk0x104; // 0x104
|
LegoEntity* m_unk0x104; // 0x104
|
||||||
MxTime m_time; // 0x108
|
int m_time; // 0x108
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // LEGOROI_H
|
#endif // LEGOROI_H
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10091ee0
|
// FUNCTION: LEGO1 0x10091ee0
|
||||||
__declspec(dllexport) BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||||
{
|
{
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,9 +34,9 @@ class MxDirectDraw {
|
||||||
void* m_unk0x178; // 0x178
|
void* m_unk0x178; // 0x178
|
||||||
};
|
};
|
||||||
|
|
||||||
__declspec(dllexport) int FlipToGDISurface();
|
int FlipToGDISurface();
|
||||||
__declspec(dllexport) static int GetPrimaryBitDepth();
|
static int GetPrimaryBitDepth();
|
||||||
__declspec(dllexport) int Pause(int);
|
int Pause(int);
|
||||||
|
|
||||||
MxDirectDraw();
|
MxDirectDraw();
|
||||||
virtual ~MxDirectDraw();
|
virtual ~MxDirectDraw();
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
#include "mxgeometry3d.h"
|
|
||||||
|
|
||||||
#include "decomp.h"
|
|
||||||
|
|
||||||
DECOMP_SIZE_ASSERT(Mx3DPointFloat, 0x14);
|
|
||||||
DECOMP_SIZE_ASSERT(Mx4DPointFloat, 0x18);
|
|
|
@ -1,5 +0,0 @@
|
||||||
#include "mxmatrix.h"
|
|
||||||
|
|
||||||
#include "decomp.h"
|
|
||||||
|
|
||||||
DECOMP_SIZE_ASSERT(MxMatrix, 0x48);
|
|
|
@ -14,9 +14,9 @@ enum LookupMode {
|
||||||
// SIZE 0x04
|
// SIZE 0x04
|
||||||
class MxAtomId {
|
class MxAtomId {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxAtomId(const char*, LookupMode);
|
MxAtomId(const char*, LookupMode);
|
||||||
__declspec(dllexport) MxAtomId& operator=(const MxAtomId& p_atomId);
|
MxAtomId& operator=(const MxAtomId& p_atomId);
|
||||||
__declspec(dllexport) ~MxAtomId();
|
~MxAtomId();
|
||||||
|
|
||||||
MxAtomId() { this->m_internal = 0; }
|
MxAtomId() { this->m_internal = 0; }
|
||||||
|
|
||||||
|
|
|
@ -34,14 +34,14 @@ struct MxBITMAPINFO {
|
||||||
// VTABLE: LEGO1 0x100dc7b0
|
// VTABLE: LEGO1 0x100dc7b0
|
||||||
class MxBitmap : public MxCore {
|
class MxBitmap : public MxCore {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxBitmap();
|
MxBitmap();
|
||||||
__declspec(dllexport) virtual ~MxBitmap(); // vtable+00
|
virtual ~MxBitmap(); // vtable+00
|
||||||
|
|
||||||
virtual MxResult ImportBitmap(MxBitmap* p_bitmap); // vtable+14
|
virtual MxResult ImportBitmap(MxBitmap* p_bitmap); // vtable+14
|
||||||
virtual MxResult ImportBitmapInfo(MxBITMAPINFO* p_info); // vtable+18
|
virtual MxResult ImportBitmapInfo(MxBITMAPINFO* p_info); // vtable+18
|
||||||
virtual MxResult SetSize(MxS32 p_width, MxS32 p_height, MxPalette* p_palette, MxBool); // vtable+1c
|
virtual MxResult SetSize(MxS32 p_width, MxS32 p_height, MxPalette* p_palette, MxBool); // vtable+1c
|
||||||
virtual MxResult LoadFile(HANDLE p_handle); // vtable+20
|
virtual MxResult LoadFile(HANDLE p_handle); // vtable+20
|
||||||
__declspec(dllexport) virtual MxLong Read(const char* p_filename); // vtable+24
|
virtual MxLong Read(const char* p_filename); // vtable+24
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1004e0d0
|
// FUNCTION: LEGO1 0x1004e0d0
|
||||||
virtual int VTable0x28(int) { return -1; }; // vtable+28
|
virtual int VTable0x28(int) { return -1; }; // vtable+28
|
||||||
|
@ -63,10 +63,10 @@ class MxBitmap : public MxCore {
|
||||||
MxS32 p_bottom,
|
MxS32 p_bottom,
|
||||||
MxS32 p_width,
|
MxS32 p_width,
|
||||||
MxS32 p_height
|
MxS32 p_height
|
||||||
); // vtable+30
|
); // vtable+30
|
||||||
__declspec(dllexport) virtual MxPalette* CreatePalette(); // vtable+34
|
virtual MxPalette* CreatePalette(); // vtable+34
|
||||||
virtual void ImportPalette(MxPalette* p_palette); // vtable+38
|
virtual void ImportPalette(MxPalette* p_palette); // vtable+38
|
||||||
virtual MxResult SetBitDepth(MxBool); // vtable+3c
|
virtual MxResult SetBitDepth(MxBool); // vtable+3c
|
||||||
virtual MxResult StretchBits(
|
virtual MxResult StretchBits(
|
||||||
HDC p_hdc,
|
HDC p_hdc,
|
||||||
MxS32 p_xSrc,
|
MxS32 p_xSrc,
|
||||||
|
|
|
@ -12,9 +12,9 @@ class MxParam;
|
||||||
// SIZE 0x8
|
// SIZE 0x8
|
||||||
class MxCore {
|
class MxCore {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxCore();
|
MxCore();
|
||||||
__declspec(dllexport) virtual ~MxCore(); // vtable+00
|
virtual ~MxCore(); // vtable+00
|
||||||
__declspec(dllexport) virtual MxLong Notify(MxParam& p_param); // vtable+04
|
virtual MxLong Notify(MxParam& p_param); // vtable+04
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10001f70
|
// FUNCTION: LEGO1 0x10001f70
|
||||||
virtual MxResult Tickle() { return SUCCESS; }; // vtable+08
|
virtual MxResult Tickle() { return SUCCESS; }; // vtable+08
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
// SIZE 0x1c
|
// SIZE 0x1c
|
||||||
class MxCriticalSection {
|
class MxCriticalSection {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxCriticalSection();
|
MxCriticalSection();
|
||||||
__declspec(dllexport) ~MxCriticalSection();
|
~MxCriticalSection();
|
||||||
__declspec(dllexport) static void SetDoMutex();
|
static void SetDoMutex();
|
||||||
void Enter();
|
void Enter();
|
||||||
void Leave();
|
void Leave();
|
||||||
|
|
||||||
|
|
|
@ -24,8 +24,8 @@ class MxDSAction : public MxDSObject {
|
||||||
c_bit11 = 0x400,
|
c_bit11 = 0x400,
|
||||||
};
|
};
|
||||||
|
|
||||||
__declspec(dllexport) MxDSAction();
|
MxDSAction();
|
||||||
__declspec(dllexport) virtual ~MxDSAction();
|
virtual ~MxDSAction();
|
||||||
|
|
||||||
void CopyFrom(MxDSAction& p_dsAction);
|
void CopyFrom(MxDSAction& p_dsAction);
|
||||||
MxDSAction& operator=(MxDSAction& p_dsAction);
|
MxDSAction& operator=(MxDSAction& p_dsAction);
|
||||||
|
|
|
@ -11,8 +11,8 @@
|
||||||
// VTABLE: LEGO1 0x100dc890
|
// VTABLE: LEGO1 0x100dc890
|
||||||
class MxDSFile : public MxDSSource {
|
class MxDSFile : public MxDSSource {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxDSFile(const char* p_filename, MxULong p_skipReadingChunks);
|
MxDSFile(const char* p_filename, MxULong p_skipReadingChunks);
|
||||||
__declspec(dllexport) virtual ~MxDSFile(); // vtable+0x0
|
virtual ~MxDSFile(); // vtable+0x0
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100c0120
|
// FUNCTION: LEGO1 0x100c0120
|
||||||
inline virtual const char* ClassName() const override // vtable+0x0c
|
inline virtual const char* ClassName() const override // vtable+0x0c
|
||||||
|
@ -27,12 +27,12 @@ class MxDSFile : public MxDSSource {
|
||||||
return !strcmp(p_name, MxDSFile::ClassName()) || MxDSSource::IsA(p_name);
|
return !strcmp(p_name, MxDSFile::ClassName()) || MxDSSource::IsA(p_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
__declspec(dllexport) virtual MxLong Open(MxULong); // vtable+0x14
|
virtual MxLong Open(MxULong); // vtable+0x14
|
||||||
__declspec(dllexport) virtual MxLong Close(); // vtable+0x18
|
virtual MxLong Close(); // vtable+0x18
|
||||||
__declspec(dllexport) virtual MxResult Read(unsigned char*, MxULong); // vtable+0x20
|
virtual MxResult Read(unsigned char*, MxULong); // vtable+0x20
|
||||||
__declspec(dllexport) virtual MxLong Seek(MxLong, int); // vtable+0x24
|
virtual MxLong Seek(MxLong, int); // vtable+0x24
|
||||||
__declspec(dllexport) virtual MxULong GetBufferSize(); // vtable+0x28
|
virtual MxULong GetBufferSize(); // vtable+0x28
|
||||||
__declspec(dllexport) virtual MxULong GetStreamBuffersNum(); // vtable+0x2c
|
virtual MxULong GetStreamBuffersNum(); // vtable+0x2c
|
||||||
|
|
||||||
inline void SetFileName(const char* p_filename) { m_filename = p_filename; }
|
inline void SetFileName(const char* p_filename) { m_filename = p_filename; }
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,7 @@ class MxDSObject : public MxCore {
|
||||||
void CopyFrom(MxDSObject& p_dsObject);
|
void CopyFrom(MxDSObject& p_dsObject);
|
||||||
MxDSObject& operator=(MxDSObject& p_dsObject);
|
MxDSObject& operator=(MxDSObject& p_dsObject);
|
||||||
|
|
||||||
__declspec(dllexport) void SetObjectName(const char* p_objectName);
|
void SetObjectName(const char* p_objectName);
|
||||||
void SetSourceName(const char* p_sourceName);
|
void SetSourceName(const char* p_sourceName);
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100bf730
|
// FUNCTION: LEGO1 0x100bf730
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
class MXIOINFO {
|
class MXIOINFO {
|
||||||
public:
|
public:
|
||||||
MXIOINFO();
|
MXIOINFO();
|
||||||
__declspec(dllexport) ~MXIOINFO();
|
~MXIOINFO();
|
||||||
|
|
||||||
MxU16 Open(const char*, MxULong);
|
MxU16 Open(const char*, MxULong);
|
||||||
MxU16 Close(MxLong);
|
MxU16 Close(MxLong);
|
||||||
|
|
|
@ -28,14 +28,14 @@ class MxStreamController;
|
||||||
// SIZE 0x68
|
// SIZE 0x68
|
||||||
class MxOmni : public MxCore {
|
class MxOmni : public MxCore {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) static void DestroyInstance();
|
static void DestroyInstance();
|
||||||
__declspec(dllexport) static const char* GetCD();
|
static const char* GetCD();
|
||||||
__declspec(dllexport) static const char* GetHD();
|
static const char* GetHD();
|
||||||
__declspec(dllexport) static MxOmni* GetInstance();
|
static MxOmni* GetInstance();
|
||||||
__declspec(dllexport) static MxBool IsSound3D();
|
static MxBool IsSound3D();
|
||||||
__declspec(dllexport) static void SetCD(const char* p_cd);
|
static void SetCD(const char* p_cd);
|
||||||
__declspec(dllexport) static void SetHD(const char* p_hd);
|
static void SetHD(const char* p_hd);
|
||||||
__declspec(dllexport) static void SetSound3D(MxBool p_use3dSound);
|
static void SetSound3D(MxBool p_use3dSound);
|
||||||
|
|
||||||
MxOmni();
|
MxOmni();
|
||||||
virtual ~MxOmni() override;
|
virtual ~MxOmni() override;
|
||||||
|
@ -96,15 +96,15 @@ class MxOmni : public MxCore {
|
||||||
MxBool m_timerRunning; // 0x64
|
MxBool m_timerRunning; // 0x64
|
||||||
};
|
};
|
||||||
|
|
||||||
__declspec(dllexport) MxTickleManager* TickleManager();
|
MxTickleManager* TickleManager();
|
||||||
__declspec(dllexport) MxTimer* Timer();
|
MxTimer* Timer();
|
||||||
__declspec(dllexport) MxStreamer* Streamer();
|
MxStreamer* Streamer();
|
||||||
__declspec(dllexport) MxSoundManager* MSoundManager();
|
MxSoundManager* MSoundManager();
|
||||||
__declspec(dllexport) MxVariableTable* VariableTable();
|
MxVariableTable* VariableTable();
|
||||||
__declspec(dllexport) MxMusicManager* MusicManager();
|
MxMusicManager* MusicManager();
|
||||||
__declspec(dllexport) MxEventManager* EventManager();
|
MxEventManager* EventManager();
|
||||||
__declspec(dllexport) MxResult Start(MxDSAction*);
|
MxResult Start(MxDSAction*);
|
||||||
__declspec(dllexport) MxNotificationManager* NotificationManager();
|
MxNotificationManager* NotificationManager();
|
||||||
|
|
||||||
MxVideoManager* MVideoManager();
|
MxVideoManager* MVideoManager();
|
||||||
MxAtomIdCounterSet* AtomIdCounterSet();
|
MxAtomIdCounterSet* AtomIdCounterSet();
|
||||||
|
|
|
@ -21,7 +21,7 @@ class MxOmniCreateFlags {
|
||||||
c_createStreamer = 0x04
|
c_createStreamer = 0x04
|
||||||
};
|
};
|
||||||
|
|
||||||
__declspec(dllexport) MxOmniCreateFlags();
|
MxOmniCreateFlags();
|
||||||
|
|
||||||
inline const MxBool CreateObjectFactory() const { return this->m_flags1 & c_createObjectFactory; }
|
inline const MxBool CreateObjectFactory() const { return this->m_flags1 & c_createObjectFactory; }
|
||||||
inline const MxBool CreateVariableTable() const { return this->m_flags1 & c_createVariableTable; }
|
inline const MxBool CreateVariableTable() const { return this->m_flags1 & c_createVariableTable; }
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
// VTABLE: LEGO1 0x100dc218
|
// VTABLE: LEGO1 0x100dc218
|
||||||
class MxOmniCreateParam : public MxParam {
|
class MxOmniCreateParam : public MxParam {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxOmniCreateParam(
|
MxOmniCreateParam(
|
||||||
const char* p_mediaPath,
|
const char* p_mediaPath,
|
||||||
struct HWND__* p_windowHandle,
|
struct HWND__* p_windowHandle,
|
||||||
MxVideoParam& p_vparam,
|
MxVideoParam& p_vparam,
|
||||||
|
|
|
@ -10,8 +10,8 @@
|
||||||
// SIZE 0x414
|
// SIZE 0x414
|
||||||
class MxPalette : public MxCore {
|
class MxPalette : public MxCore {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxBool operator==(MxPalette& p_other);
|
MxBool operator==(MxPalette& p_other);
|
||||||
__declspec(dllexport) void Detach();
|
void Detach();
|
||||||
|
|
||||||
MxPalette();
|
MxPalette();
|
||||||
MxPalette(const RGBQUAD*);
|
MxPalette(const RGBQUAD*);
|
||||||
|
|
|
@ -28,14 +28,10 @@ class MxPresenter : public MxCore {
|
||||||
|
|
||||||
MxPresenter() { Init(); }
|
MxPresenter() { Init(); }
|
||||||
|
|
||||||
#ifdef ISLE_APP
|
|
||||||
__declspec(dllexport) virtual ~MxPresenter() override; // vtable+0x00
|
|
||||||
#else
|
|
||||||
// FUNCTION: LEGO1 0x1000bf00
|
// FUNCTION: LEGO1 0x1000bf00
|
||||||
__declspec(dllexport) virtual ~MxPresenter() override{}; // vtable+0x00
|
virtual ~MxPresenter() override{}; // vtable+0x00
|
||||||
#endif
|
|
||||||
|
|
||||||
__declspec(dllexport) virtual MxResult Tickle() override; // vtable+0x08
|
virtual MxResult Tickle() override; // vtable+0x08
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1000bfe0
|
// FUNCTION: LEGO1 0x1000bfe0
|
||||||
inline virtual const char* ClassName() const override // vtable+0xc
|
inline virtual const char* ClassName() const override // vtable+0xc
|
||||||
|
@ -73,14 +69,10 @@ class MxPresenter : public MxCore {
|
||||||
virtual void Unk5Tickle() { ProgressTickleState(e_done); }; // vtable+0x28
|
virtual void Unk5Tickle() { ProgressTickleState(e_done); }; // vtable+0x28
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
#ifdef ISLE_APP
|
|
||||||
__declspec(dllexport) virtual void DoneTickle(); // vtable+0x2c
|
|
||||||
#else
|
|
||||||
// FUNCTION: LEGO1 0x1000bee0
|
// FUNCTION: LEGO1 0x1000bee0
|
||||||
__declspec(dllexport) virtual void DoneTickle() { ProgressTickleState(e_idle); }; // vtable+0x2c
|
virtual void DoneTickle() { ProgressTickleState(e_idle); }; // vtable+0x2c
|
||||||
#endif
|
|
||||||
|
|
||||||
__declspec(dllexport) virtual void ParseExtra(); // vtable+0x30
|
virtual void ParseExtra(); // vtable+0x30
|
||||||
|
|
||||||
inline void ProgressTickleState(TickleState p_tickleState)
|
inline void ProgressTickleState(TickleState p_tickleState)
|
||||||
{
|
{
|
||||||
|
@ -95,8 +87,8 @@ class MxPresenter : public MxCore {
|
||||||
// FUNCTION: LEGO1 0x1000bf80
|
// FUNCTION: LEGO1 0x1000bf80
|
||||||
virtual void Destroy() { Init(); }; // vtable+0x38
|
virtual void Destroy() { Init(); }; // vtable+0x38
|
||||||
|
|
||||||
__declspec(dllexport) virtual MxResult StartAction(MxStreamController*, MxDSAction*); // vtable+0x3c
|
virtual MxResult StartAction(MxStreamController*, MxDSAction*); // vtable+0x3c
|
||||||
__declspec(dllexport) virtual void EndAction(); // vtable+0x40
|
virtual void EndAction(); // vtable+0x40
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1000bf90
|
// FUNCTION: LEGO1 0x1000bf90
|
||||||
virtual void SetTickleState(TickleState p_tickleState) { ProgressTickleState(p_tickleState); } // vtable+0x44
|
virtual void SetTickleState(TickleState p_tickleState) { ProgressTickleState(p_tickleState); } // vtable+0x44
|
||||||
|
@ -113,7 +105,7 @@ class MxPresenter : public MxCore {
|
||||||
// FUNCTION: LEGO1 0x1000bfd0
|
// FUNCTION: LEGO1 0x1000bfd0
|
||||||
virtual MxBool IsHit(MxS32 p_x, MxS32 p_y) { return FALSE; }; // vtable+0x50
|
virtual MxBool IsHit(MxS32 p_x, MxS32 p_y) { return FALSE; }; // vtable+0x50
|
||||||
|
|
||||||
__declspec(dllexport) virtual void Enable(MxBool p_enable); // vtable+0x54
|
virtual void Enable(MxBool p_enable); // vtable+0x54
|
||||||
|
|
||||||
MxEntity* CreateEntity(const char* p_name);
|
MxEntity* CreateEntity(const char* p_name);
|
||||||
void SendToCompositePresenter(MxOmni*);
|
void SendToCompositePresenter(MxOmni*);
|
||||||
|
@ -133,7 +125,7 @@ class MxPresenter : public MxCore {
|
||||||
// MxPresenter::`scalar deleting destructor'
|
// MxPresenter::`scalar deleting destructor'
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
__declspec(dllexport) void Init();
|
void Init();
|
||||||
|
|
||||||
TickleState m_currentTickleState; // 0x8
|
TickleState m_currentTickleState; // 0x8
|
||||||
MxU32 m_previousTickleStates; // 0x0c
|
MxU32 m_previousTickleStates; // 0x0c
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
|
|
||||||
class MxScheduler {
|
class MxScheduler {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) static MxScheduler* GetInstance();
|
static MxScheduler* GetInstance();
|
||||||
__declspec(dllexport) void StartMultiTasking(MxULong);
|
void StartMultiTasking(MxULong);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MXSCHEDULER_H
|
#endif // MXSCHEDULER_H
|
||||||
|
|
|
@ -78,8 +78,8 @@ class MxStreamer : public MxCore {
|
||||||
MxStreamer();
|
MxStreamer();
|
||||||
virtual ~MxStreamer() override; // vtable+0x0
|
virtual ~MxStreamer() override; // vtable+0x0
|
||||||
|
|
||||||
__declspec(dllexport) MxStreamController* Open(const char* p_name, MxU16 p_openMode);
|
MxStreamController* Open(const char* p_name, MxU16 p_openMode);
|
||||||
__declspec(dllexport) MxLong Close(const char* p_name);
|
MxLong Close(const char* p_name);
|
||||||
|
|
||||||
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
|
||||||
|
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
// SIZE 0x10
|
// SIZE 0x10
|
||||||
class MxString : public MxCore {
|
class MxString : public MxCore {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxString(const MxString& p_str);
|
MxString(const MxString& p_str);
|
||||||
__declspec(dllexport) virtual ~MxString();
|
virtual ~MxString();
|
||||||
__declspec(dllexport) const MxString& operator=(const char* p_data);
|
const MxString& operator=(const char* p_data);
|
||||||
|
|
||||||
MxString();
|
MxString();
|
||||||
MxString(const char*);
|
MxString(const char*);
|
||||||
|
|
|
@ -12,7 +12,7 @@ class MxTimer : public MxCore {
|
||||||
void Start();
|
void Start();
|
||||||
void Stop();
|
void Stop();
|
||||||
|
|
||||||
__declspec(dllexport) MxLong GetRealTime();
|
MxLong GetRealTime();
|
||||||
|
|
||||||
inline MxLong GetTime()
|
inline MxLong GetTime()
|
||||||
{
|
{
|
||||||
|
|
|
@ -69,10 +69,10 @@ MxBool GetRectIntersection(
|
||||||
MxS32* p_height
|
MxS32* p_height
|
||||||
);
|
);
|
||||||
|
|
||||||
__declspec(dllexport) void MakeSourceName(char*, const char*);
|
void MakeSourceName(char*, const char*);
|
||||||
__declspec(dllexport) void SetOmniUserMessage(void (*)(const char*, int));
|
void SetOmniUserMessage(void (*)(const char*, int));
|
||||||
void FUN_100b7220(MxDSAction* p_action, MxU32 p_newFlags, MxBool p_setFlags);
|
void FUN_100b7220(MxDSAction* p_action, MxU32 p_newFlags, MxBool p_setFlags);
|
||||||
__declspec(dllexport) MxDSObject* CreateStreamObject(MxDSFile*, MxS16);
|
MxDSObject* CreateStreamObject(MxDSFile*, MxS16);
|
||||||
|
|
||||||
MxBool KeyValueStringParse(char*, const char*, const char*);
|
MxBool KeyValueStringParse(char*, const char*, const char*);
|
||||||
|
|
||||||
|
|
|
@ -10,9 +10,9 @@
|
||||||
class MxVariableTable : public MxHashTable<MxVariable*> {
|
class MxVariableTable : public MxHashTable<MxVariable*> {
|
||||||
public:
|
public:
|
||||||
MxVariableTable() { m_customDestructor = Destroy; }
|
MxVariableTable() { m_customDestructor = Destroy; }
|
||||||
__declspec(dllexport) void SetVariable(const char* p_key, const char* p_value);
|
void SetVariable(const char* p_key, const char* p_value);
|
||||||
__declspec(dllexport) void SetVariable(MxVariable* p_var);
|
void SetVariable(MxVariable* p_var);
|
||||||
__declspec(dllexport) const char* GetVariable(const char* p_key);
|
const char* GetVariable(const char* p_key);
|
||||||
|
|
||||||
static void Destroy(MxVariable* p_obj) { p_obj->Destroy(); }
|
static void Destroy(MxVariable* p_obj) { p_obj->Destroy(); }
|
||||||
|
|
||||||
|
|
|
@ -30,8 +30,8 @@ class MxVideoManager : public MxMediaManager {
|
||||||
); // vtable+0x28
|
); // vtable+0x28
|
||||||
virtual MxResult Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread); // vtable+0x2c
|
virtual MxResult Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread); // vtable+0x2c
|
||||||
|
|
||||||
__declspec(dllexport) void InvalidateRect(MxRect32&);
|
void InvalidateRect(MxRect32&);
|
||||||
__declspec(dllexport) virtual MxResult RealizePalette(MxPalette*); // vtable+0x30
|
virtual MxResult RealizePalette(MxPalette*); // vtable+0x30
|
||||||
virtual void UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height); // vtable+0x34
|
virtual void UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height); // vtable+0x34
|
||||||
|
|
||||||
MxResult Init();
|
MxResult Init();
|
||||||
|
|
|
@ -13,17 +13,13 @@
|
||||||
// SIZE 0x24
|
// SIZE 0x24
|
||||||
class MxVideoParam {
|
class MxVideoParam {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxVideoParam();
|
MxVideoParam();
|
||||||
__declspec(dllexport) MxVideoParam(MxVideoParam& p_videoParam);
|
MxVideoParam(MxVideoParam& p_videoParam);
|
||||||
__declspec(dllexport) MxVideoParam(
|
__declspec(dllexport)
|
||||||
COMPAT_CONST MxRect32& p_rect,
|
MxVideoParam(MxRect32& p_rect, MxPalette* p_palette, MxULong p_backBuffers, MxVideoParamFlags& p_flags);
|
||||||
MxPalette* p_palette,
|
MxVideoParam& operator=(const MxVideoParam& p_videoParam);
|
||||||
MxULong p_backBuffers,
|
~MxVideoParam();
|
||||||
COMPAT_CONST MxVideoParamFlags& p_flags
|
void SetDeviceName(char* p_deviceId);
|
||||||
);
|
|
||||||
__declspec(dllexport) MxVideoParam& operator=(const MxVideoParam& p_videoParam);
|
|
||||||
__declspec(dllexport) ~MxVideoParam();
|
|
||||||
__declspec(dllexport) void SetDeviceName(char* p_deviceId);
|
|
||||||
|
|
||||||
inline MxVideoParamFlags& Flags() { return m_flags; }
|
inline MxVideoParamFlags& Flags() { return m_flags; }
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
class MxVideoParamFlags {
|
class MxVideoParamFlags {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxVideoParamFlags();
|
MxVideoParamFlags();
|
||||||
|
|
||||||
inline void SetFullScreen(BOOL p_e) { m_flags1.m_bit0 = p_e; }
|
inline void SetFullScreen(BOOL p_e) { m_flags1.m_bit0 = p_e; }
|
||||||
inline void SetFlipSurfaces(BOOL p_e) { m_flags1.m_bit1 = p_e; }
|
inline void SetFlipSurfaces(BOOL p_e) { m_flags1.m_bit1 = p_e; }
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
#include "mxthread.h"
|
#include "mxthread.h"
|
||||||
|
|
||||||
#include "decomp.h"
|
#include "decomp.h"
|
||||||
|
|
|
@ -21,12 +21,7 @@ MxVideoParam::MxVideoParam()
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x100beca0
|
// FUNCTION: LEGO1 0x100beca0
|
||||||
MxVideoParam::MxVideoParam(
|
MxVideoParam::MxVideoParam(MxRect32& p_rect, MxPalette* p_palette, MxULong p_backBuffers, MxVideoParamFlags& p_flags)
|
||||||
COMPAT_CONST MxRect32& p_rect,
|
|
||||||
MxPalette* p_palette,
|
|
||||||
MxULong p_backBuffers,
|
|
||||||
COMPAT_CONST MxVideoParamFlags& p_flags
|
|
||||||
)
|
|
||||||
{
|
{
|
||||||
this->m_rect = p_rect;
|
this->m_rect = p_rect;
|
||||||
this->m_palette = p_palette;
|
this->m_palette = p_palette;
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
|
|
||||||
class RealtimeView {
|
class RealtimeView {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) static float GetPartsThreshold();
|
static float GetPartsThreshold();
|
||||||
__declspec(dllexport) static float GetUserMaxLOD();
|
static float GetUserMaxLOD();
|
||||||
__declspec(dllexport) static void SetPartsThreshold(float);
|
static void SetPartsThreshold(float);
|
||||||
static void UpdateMaxLOD();
|
static void UpdateMaxLOD();
|
||||||
__declspec(dllexport) static void SetUserMaxLOD(float);
|
static void SetUserMaxLOD(float);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // REALTIMEVIEW_H
|
#endif // REALTIMEVIEW_H
|
||||||
|
|
|
@ -10,7 +10,7 @@ class ViewManager {
|
||||||
ViewManager(Tgl::Renderer* pRenderer, Tgl::Group* scene, const OrientableROI* point_of_view);
|
ViewManager(Tgl::Renderer* pRenderer, Tgl::Group* scene, const OrientableROI* point_of_view);
|
||||||
virtual ~ViewManager();
|
virtual ~ViewManager();
|
||||||
|
|
||||||
__declspec(dllexport) void RemoveAll(ViewROI*);
|
void RemoveAll(ViewROI*);
|
||||||
|
|
||||||
void SetPOVSource(const OrientableROI* point_of_view);
|
void SetPOVSource(const OrientableROI* point_of_view);
|
||||||
void SetResolution(int width, int height);
|
void SetResolution(int width, int height);
|
||||||
|
|
|
@ -109,9 +109,9 @@ Classes should be annotated using the `SIZE` marker to indicate their size. If y
|
||||||
// SIZE 0x1c
|
// SIZE 0x1c
|
||||||
class MxCriticalSection {
|
class MxCriticalSection {
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxCriticalSection();
|
MxCriticalSection();
|
||||||
__declspec(dllexport) ~MxCriticalSection();
|
~MxCriticalSection();
|
||||||
__declspec(dllexport) static void SetDoMutex();
|
static void SetDoMutex();
|
||||||
```
|
```
|
||||||
|
|
||||||
## Member variables (**WIP**)
|
## Member variables (**WIP**)
|
||||||
|
|
|
@ -2,7 +2,7 @@ configureLegoAnimationManager(MxS32): 'DLL exported function'
|
||||||
configureLegoBuildingManager(MxS32): 'DLL exported function'
|
configureLegoBuildingManager(MxS32): 'DLL exported function'
|
||||||
configureLegoModelPresenter(MxS32): 'DLL exported function'
|
configureLegoModelPresenter(MxS32): 'DLL exported function'
|
||||||
configureLegoPartPresenter(MxS32, MxS32): 'DLL exported function'
|
configureLegoPartPresenter(MxS32, MxS32): 'DLL exported function'
|
||||||
configureLegoROI(MxS32): 'DLL exported function'
|
configureLegoROI(int): 'DLL exported function'
|
||||||
configureLegoWorldPresenter(MxS32): 'DLL exported function'
|
configureLegoWorldPresenter(MxS32): 'DLL exported function'
|
||||||
GetNoCD_SourceName(): 'DLL exported function'
|
GetNoCD_SourceName(): 'DLL exported function'
|
||||||
m_3dView: 'Allow this variable name'
|
m_3dView: 'Allow this variable name'
|
||||||
|
|
|
@ -7,14 +7,6 @@
|
||||||
#define COMPAT_MODE
|
#define COMPAT_MODE
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Use `COMPAT_CONST` where something ought to be 'const', and a newer compiler would complain if it
|
|
||||||
// wasn't, but we know it isn't 'const' in the original code.
|
|
||||||
#if defined(__MINGW32__) || (defined(_MSC_VER) && _MSC_VER >= 1100)
|
|
||||||
#define COMPAT_CONST const
|
|
||||||
#else
|
|
||||||
#define COMPAT_CONST
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Disable "identifier was truncated to '255' characters" warning.
|
// Disable "identifier was truncated to '255' characters" warning.
|
||||||
// Impossible to avoid this if using STL map or set.
|
// Impossible to avoid this if using STL map or set.
|
||||||
// This removes most (but not all) occurrences of the warning.
|
// This removes most (but not all) occurrences of the warning.
|
||||||
|
|
Loading…
Reference in a new issue