Updated libOpenMPT to version 0.8.0
And reordered all the source files in the projects according to name sort. And removed all the deleted files, including some which were forgotten in previous updates, but left as 0 byte files. Finally, updated the project to use C23 / C++23 language standards. Signed-off-by: Christopher Snowhill <kode54@gmail.com>
This commit is contained in:
parent
dd55d4a9e1
commit
bc8538cdd4
365 changed files with 21111 additions and 11131 deletions
File diff suppressed because it is too large
Load diff
|
@ -7,40 +7,40 @@ include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := openmpt
|
LOCAL_MODULE := openmpt
|
||||||
|
|
||||||
ifeq ($(NDK_MAJOR),)
|
ifeq ($(NDK_MAJOR),)
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++17
|
LOCAL_CPPFLAGS += -std=c++17
|
||||||
else
|
else
|
||||||
ifeq ($(NDK_MAJOR),21)
|
ifeq ($(NDK_MAJOR),21)
|
||||||
# clang 9
|
# clang 9
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++17
|
LOCAL_CPPFLAGS += -std=c++17
|
||||||
else ifeq ($(NDK_MAJOR),22)
|
else ifeq ($(NDK_MAJOR),22)
|
||||||
# clang 11
|
# clang 11
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++20
|
||||||
else ifeq ($(NDK_MAJOR),23)
|
else ifeq ($(NDK_MAJOR),23)
|
||||||
# clang 12
|
# clang 12
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++20
|
||||||
else ifeq ($(NDK_MAJOR),24)
|
else ifeq ($(NDK_MAJOR),24)
|
||||||
# clang 14
|
# clang 14
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++20
|
||||||
else ifeq ($(NDK_MAJOR),25)
|
else ifeq ($(NDK_MAJOR),25)
|
||||||
# clang 14
|
# clang 14
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++20
|
||||||
else ifeq ($(NDK_MAJOR),26)
|
else ifeq ($(NDK_MAJOR),26)
|
||||||
# clang 17
|
# clang 17
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c18
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++20
|
||||||
else ifeq ($(NDK_MAJOR),27)
|
else ifeq ($(NDK_MAJOR),27)
|
||||||
# clang 18
|
# clang 18
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c23
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++23
|
||||||
else
|
else
|
||||||
LOCAL_CFLAGS += -std=c17
|
LOCAL_CFLAGS += -std=c23
|
||||||
LOCAL_CPPFLAGS += -std=c++20
|
LOCAL_CPPFLAGS += -std=c++23
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -124,8 +124,6 @@ endif
|
||||||
LOCAL_SRC_FILES += \
|
LOCAL_SRC_FILES += \
|
||||||
common/ComponentManager.cpp \
|
common/ComponentManager.cpp \
|
||||||
common/Logging.cpp \
|
common/Logging.cpp \
|
||||||
common/mptFileIO.cpp \
|
|
||||||
common/mptFileTemporary.cpp \
|
|
||||||
common/mptFileType.cpp \
|
common/mptFileType.cpp \
|
||||||
common/mptPathString.cpp \
|
common/mptPathString.cpp \
|
||||||
common/mptRandom.cpp \
|
common/mptRandom.cpp \
|
||||||
|
@ -146,6 +144,7 @@ LOCAL_SRC_FILES += \
|
||||||
soundlib/Dlsbank.cpp \
|
soundlib/Dlsbank.cpp \
|
||||||
soundlib/Fastmix.cpp \
|
soundlib/Fastmix.cpp \
|
||||||
soundlib/InstrumentExtensions.cpp \
|
soundlib/InstrumentExtensions.cpp \
|
||||||
|
soundlib/InstrumentSynth.cpp \
|
||||||
soundlib/ITCompression.cpp \
|
soundlib/ITCompression.cpp \
|
||||||
soundlib/ITTools.cpp \
|
soundlib/ITTools.cpp \
|
||||||
soundlib/Load_667.cpp \
|
soundlib/Load_667.cpp \
|
||||||
|
@ -153,20 +152,28 @@ LOCAL_SRC_FILES += \
|
||||||
soundlib/Load_amf.cpp \
|
soundlib/Load_amf.cpp \
|
||||||
soundlib/Load_ams.cpp \
|
soundlib/Load_ams.cpp \
|
||||||
soundlib/Load_c67.cpp \
|
soundlib/Load_c67.cpp \
|
||||||
|
soundlib/Load_cba.cpp \
|
||||||
soundlib/Load_dbm.cpp \
|
soundlib/Load_dbm.cpp \
|
||||||
soundlib/Load_digi.cpp \
|
soundlib/Load_digi.cpp \
|
||||||
soundlib/Load_dmf.cpp \
|
soundlib/Load_dmf.cpp \
|
||||||
soundlib/Load_dsm.cpp \
|
soundlib/Load_dsm.cpp \
|
||||||
soundlib/Load_dsym.cpp \
|
soundlib/Load_dsym.cpp \
|
||||||
soundlib/Load_dtm.cpp \
|
soundlib/Load_dtm.cpp \
|
||||||
|
soundlib/Load_etx.cpp \
|
||||||
soundlib/Load_far.cpp \
|
soundlib/Load_far.cpp \
|
||||||
|
soundlib/Load_fc.cpp \
|
||||||
soundlib/Load_fmt.cpp \
|
soundlib/Load_fmt.cpp \
|
||||||
|
soundlib/Load_ftm.cpp \
|
||||||
soundlib/Load_gdm.cpp \
|
soundlib/Load_gdm.cpp \
|
||||||
|
soundlib/Load_gmc.cpp \
|
||||||
soundlib/Load_gt2.cpp \
|
soundlib/Load_gt2.cpp \
|
||||||
|
soundlib/Load_ice.cpp \
|
||||||
soundlib/Load_imf.cpp \
|
soundlib/Load_imf.cpp \
|
||||||
|
soundlib/Load_ims.cpp \
|
||||||
soundlib/Load_it.cpp \
|
soundlib/Load_it.cpp \
|
||||||
soundlib/Load_itp.cpp \
|
soundlib/Load_itp.cpp \
|
||||||
soundlib/load_j2b.cpp \
|
soundlib/load_j2b.cpp \
|
||||||
|
soundlib/Load_kris.cpp \
|
||||||
soundlib/Load_mdl.cpp \
|
soundlib/Load_mdl.cpp \
|
||||||
soundlib/Load_med.cpp \
|
soundlib/Load_med.cpp \
|
||||||
soundlib/Load_mid.cpp \
|
soundlib/Load_mid.cpp \
|
||||||
|
@ -178,19 +185,26 @@ LOCAL_SRC_FILES += \
|
||||||
soundlib/Load_okt.cpp \
|
soundlib/Load_okt.cpp \
|
||||||
soundlib/Load_plm.cpp \
|
soundlib/Load_plm.cpp \
|
||||||
soundlib/Load_psm.cpp \
|
soundlib/Load_psm.cpp \
|
||||||
|
soundlib/Load_pt36.cpp \
|
||||||
soundlib/Load_ptm.cpp \
|
soundlib/Load_ptm.cpp \
|
||||||
|
soundlib/Load_puma.cpp \
|
||||||
|
soundlib/Load_rtm.cpp \
|
||||||
soundlib/Load_s3m.cpp \
|
soundlib/Load_s3m.cpp \
|
||||||
soundlib/Load_sfx.cpp \
|
soundlib/Load_sfx.cpp \
|
||||||
|
soundlib/Load_stk.cpp \
|
||||||
soundlib/Load_stm.cpp \
|
soundlib/Load_stm.cpp \
|
||||||
soundlib/Load_stp.cpp \
|
soundlib/Load_stp.cpp \
|
||||||
soundlib/Load_symmod.cpp \
|
soundlib/Load_symmod.cpp \
|
||||||
soundlib/Load_ult.cpp \
|
soundlib/Load_tcb.cpp \
|
||||||
soundlib/Load_uax.cpp \
|
soundlib/Load_uax.cpp \
|
||||||
|
soundlib/Load_ult.cpp \
|
||||||
|
soundlib/Load_unic.cpp \
|
||||||
soundlib/Load_wav.cpp \
|
soundlib/Load_wav.cpp \
|
||||||
soundlib/Load_xm.cpp \
|
soundlib/Load_xm.cpp \
|
||||||
soundlib/Load_xmf.cpp \
|
soundlib/Load_xmf.cpp \
|
||||||
soundlib/Message.cpp \
|
soundlib/Message.cpp \
|
||||||
soundlib/MIDIEvents.cpp \
|
soundlib/MIDIEvents.cpp \
|
||||||
|
soundlib/MIDIMacroParser.cpp \
|
||||||
soundlib/MIDIMacros.cpp \
|
soundlib/MIDIMacros.cpp \
|
||||||
soundlib/MixerLoops.cpp \
|
soundlib/MixerLoops.cpp \
|
||||||
soundlib/MixerSettings.cpp \
|
soundlib/MixerSettings.cpp \
|
||||||
|
@ -202,12 +216,15 @@ LOCAL_SRC_FILES += \
|
||||||
soundlib/ModSequence.cpp \
|
soundlib/ModSequence.cpp \
|
||||||
soundlib/modsmp_ctrl.cpp \
|
soundlib/modsmp_ctrl.cpp \
|
||||||
soundlib/mod_specifications.cpp \
|
soundlib/mod_specifications.cpp \
|
||||||
|
soundlib/MODTools.cpp \
|
||||||
soundlib/MPEGFrame.cpp \
|
soundlib/MPEGFrame.cpp \
|
||||||
soundlib/OggStream.cpp \
|
soundlib/OggStream.cpp \
|
||||||
soundlib/OPL.cpp \
|
soundlib/OPL.cpp \
|
||||||
soundlib/Paula.cpp \
|
soundlib/Paula.cpp \
|
||||||
soundlib/patternContainer.cpp \
|
soundlib/patternContainer.cpp \
|
||||||
soundlib/pattern.cpp \
|
soundlib/pattern.cpp \
|
||||||
|
soundlib/PlaybackTest.cpp \
|
||||||
|
soundlib/PlayState.cpp \
|
||||||
soundlib/RowVisitor.cpp \
|
soundlib/RowVisitor.cpp \
|
||||||
soundlib/S3MTools.cpp \
|
soundlib/S3MTools.cpp \
|
||||||
soundlib/SampleFormats.cpp \
|
soundlib/SampleFormats.cpp \
|
||||||
|
|
|
@ -1,39 +1,39 @@
|
||||||
|
|
||||||
ifeq ($(NDK_MAJOR),)
|
ifeq ($(NDK_MAJOR),)
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++17 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++17 -fexceptions -frtti
|
||||||
else
|
else
|
||||||
ifeq ($(NDK_MAJOR),21)
|
ifeq ($(NDK_MAJOR),21)
|
||||||
# clang 9
|
# clang 9
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++17 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++17 -fexceptions -frtti
|
||||||
else ifeq ($(NDK_MAJOR),22)
|
else ifeq ($(NDK_MAJOR),22)
|
||||||
# clang 11
|
# clang 11
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
||||||
else ifeq ($(NDK_MAJOR),23)
|
else ifeq ($(NDK_MAJOR),23)
|
||||||
# clang 12
|
# clang 12
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
||||||
else ifeq ($(NDK_MAJOR),24)
|
else ifeq ($(NDK_MAJOR),24)
|
||||||
# clang 14
|
# clang 14
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
||||||
else ifeq ($(NDK_MAJOR),25)
|
else ifeq ($(NDK_MAJOR),25)
|
||||||
# clang 14
|
# clang 14
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
||||||
else ifeq ($(NDK_MAJOR),26)
|
else ifeq ($(NDK_MAJOR),26)
|
||||||
# clang 17
|
# clang 17
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c18
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
||||||
else ifeq ($(NDK_MAJOR),27)
|
else ifeq ($(NDK_MAJOR),27)
|
||||||
# clang 18
|
# clang 18
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c23
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++23 -fexceptions -frtti
|
||||||
else
|
else
|
||||||
APP_CFLAGS := -std=c17
|
APP_CFLAGS := -std=c23
|
||||||
APP_CPPFLAGS := -std=c++20 -fexceptions -frtti
|
APP_CPPFLAGS := -std=c++23 -fexceptions -frtti
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
|
|
||||||
MPT_SVNVERSION=22826
|
MPT_SVNVERSION=23245
|
||||||
MPT_SVNURL=https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.7.13
|
MPT_SVNURL=https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.8.0
|
||||||
MPT_SVNDATE=2025-01-06T13:49:43.586768Z
|
MPT_SVNDATE=2025-05-31T13:56:14.548439Z
|
||||||
|
|
2
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3gen
Normal file
2
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3gen
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
exec i386-pc-msdosdjgpp-dxe3gen "$@"
|
3
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3gen.sh
Normal file
3
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3gen.sh
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
echo "$@"
|
||||||
|
exec i386-pc-msdosdjgpp-dxe3gen "$@"
|
2
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3res
Normal file
2
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3res
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
exec i386-pc-msdosdjgpp-dxe3res "$@"
|
2
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3res.sh
Normal file
2
Frameworks/OpenMPT/OpenMPT/build/djgpp/bin/dxe3res.sh
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
exec i386-pc-msdosdjgpp-dxe3res "$@"
|
|
@ -12,7 +12,9 @@ function download () {
|
||||||
MPT_GET_FILE_NAME="$1"
|
MPT_GET_FILE_NAME="$1"
|
||||||
MPT_GET_FILE_SIZE="$2"
|
MPT_GET_FILE_SIZE="$2"
|
||||||
MPT_GET_FILE_CHECKSUM="$3"
|
MPT_GET_FILE_CHECKSUM="$3"
|
||||||
MPT_GET_URLS="$4"
|
shift
|
||||||
|
shift
|
||||||
|
shift
|
||||||
echo "Checking '$MPT_GET_FILE_NAME' ..."
|
echo "Checking '$MPT_GET_FILE_NAME' ..."
|
||||||
if [ -f "$MPT_GET_FILE_NAME" ]; then
|
if [ -f "$MPT_GET_FILE_NAME" ]; then
|
||||||
FILE_SIZE=$(find "$MPT_GET_FILE_NAME" -printf '%s')
|
FILE_SIZE=$(find "$MPT_GET_FILE_NAME" -printf '%s')
|
||||||
|
@ -28,10 +30,15 @@ function download () {
|
||||||
rm -f "$MPT_GET_FILE_NAME"
|
rm -f "$MPT_GET_FILE_NAME"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
for URL in $MPT_GET_URLS; do
|
while (( "$#" )); do
|
||||||
|
URL="$(echo ""$1"" | sed 's/ /%20/g')"
|
||||||
if [ ! -f "$MPT_GET_FILE_NAME" ]; then
|
if [ ! -f "$MPT_GET_FILE_NAME" ]; then
|
||||||
echo "Downloading '$MPT_GET_FILE_NAME' from '$URL' ..."
|
echo "Downloading '$MPT_GET_FILE_NAME' from '$URL' ..."
|
||||||
curl -o "$MPT_GET_FILE_NAME" "$URL"
|
if command -v curl &> /dev/null ; then
|
||||||
|
curl --location -o "$MPT_GET_FILE_NAME" "$URL" || true
|
||||||
|
elif command -v wget &> /dev/null ; then
|
||||||
|
wget -O "$MPT_GET_FILE_NAME" "$URL" || true
|
||||||
|
fi
|
||||||
echo "Verifying '$URL' ..."
|
echo "Verifying '$URL' ..."
|
||||||
if [ -f "$MPT_GET_FILE_NAME" ]; then
|
if [ -f "$MPT_GET_FILE_NAME" ]; then
|
||||||
FILE_SIZE=$(find "$MPT_GET_FILE_NAME" -printf '%s')
|
FILE_SIZE=$(find "$MPT_GET_FILE_NAME" -printf '%s')
|
||||||
|
@ -48,6 +55,7 @@ function download () {
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
shift
|
||||||
done
|
done
|
||||||
if [ ! -f "$MPT_GET_FILE_NAME" ]; then
|
if [ ! -f "$MPT_GET_FILE_NAME" ]; then
|
||||||
echo "Failed to download '$MPT_GET_FILE_NAME'."
|
echo "Failed to download '$MPT_GET_FILE_NAME'."
|
||||||
|
@ -95,11 +103,12 @@ if [ ! -d "build/tools" ]; then
|
||||||
mkdir build/tools
|
mkdir build/tools
|
||||||
fi
|
fi
|
||||||
|
|
||||||
download "build/externals/allegro-4.2.3.1-hg.8+r8500.zip" 3872466 46cd8d4d7138b795dbc66994e953d0abc578c6d3c00615e3580237458529d33d7ad9d269a9778918d4b3719d75750d5cca74ff6bf38ad357a766472799ee9e7b "https://lib.openmpt.org/files/libopenmpt/contrib/allegro/allegro-4.2.3.1-hg.8+r8500.zip"
|
# download
|
||||||
download "build/externals/csdpmi7b.zip" 71339 58c24691d27cead1cec92d334af551f37a3ba31de25a687d99399c28d822ec9f6ffccc9332bfce35e65dae4dd1210b54e54b223a4de17f5adcb11e2da004b834 "https://lib.openmpt.org/files/libopenmpt/contrib/djgpp/cwsdpmi/csdpmi7b.zip https://djgpp.mirror.garr.it/current/v2misc/csdpmi7b.zip"
|
cat build/download_externals.txt | (
|
||||||
download "build/externals/csdpmi7s.zip" 89872 ea5652d31850d8eb0d15a919de0b51849f58efea0d16ad2aa4687fac4abd223d0ca34a2d1b616b02fafe84651dbef3e506df9262cfb399eb6d9909bffc89bfd3 "https://lib.openmpt.org/files/libopenmpt/contrib/djgpp/cwsdpmi/csdpmi7s.zip https://djgpp.mirror.garr.it/current/v2misc/csdpmi7s.zip"
|
while IFS=$'\n' read -r URL; do
|
||||||
download "build/externals/WA5.55_SDK.exe" 336166 394375db8a16bf155b5de9376f6290488ab339e503dbdfdc4e2f5bede967799e625c559cca363bc988324f1a8e86e5fd28a9f697422abd7bb3dcde4a766607b5 "http://download.nullsoft.com/winamp/plugin-dev/WA5.55_SDK.exe https://web.archive.org/web/20131217072017id_/http://download.nullsoft.com/winamp/plugin-dev/WA5.55_SDK.exe"
|
eval download $URL
|
||||||
download "build/externals/xmp-sdk.zip" 322903 67b96c6e6aa794e9de4f446d23f969e3591457196fd100c5475f5df52308de861a0c411db54fcb2bf46a12e9136ddda9d2974a5167432a979a701ef2c4679ef9 "https://www.un4seen.com/files/xmp-sdk.zip"
|
done
|
||||||
|
)
|
||||||
|
|
||||||
unpack "include/allegro42" "build/externals/allegro-4.2.3.1-hg.8+r8500.zip" "."
|
unpack "include/allegro42" "build/externals/allegro-4.2.3.1-hg.8+r8500.zip" "."
|
||||||
unpack "include/cwsdpmi" "build/externals/csdpmi7b.zip" "."
|
unpack "include/cwsdpmi" "build/externals/csdpmi7b.zip" "."
|
||||||
|
@ -108,3 +117,6 @@ unpack "include/xmplay" "build/externals/xmp-sdk.zip" "."
|
||||||
|
|
||||||
ln -s OUT.H include/winamp/Winamp/out.h
|
ln -s OUT.H include/winamp/Winamp/out.h
|
||||||
|
|
||||||
|
mkdir -p build/tools/svn_apply_autoprops
|
||||||
|
cp "build/externals/svn_apply_autoprops.py" "build/tools/svn_apply_autoprops/"
|
||||||
|
chmod u+x "build/tools/svn_apply_autoprops/svn_apply_autoprops.py"
|
||||||
|
|
|
@ -14,9 +14,12 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
||||||
# We do not enable C++20 for fuzzer builds, because it prevents detecting
|
# We do not enable C++20 or C++23 for fuzzer builds, because it prevents
|
||||||
# shifting of signed values which changed from undefined to defined behaviour
|
# detecting shifting of signed values which changed from undefined to defined
|
||||||
# in C++20. As we still support C+ü+17, we need to catch these problem cases.
|
# behaviour in C++20 and C++23. As we still support C++17, we need to catch
|
||||||
|
# these problem cases.
|
||||||
|
#else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
#CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti -pthread
|
||||||
#else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
#else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
#CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
#CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
||||||
else
|
else
|
||||||
|
@ -24,6 +27,10 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti -pthread
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC) -pthread
|
CFLAGS_STDC = -std=$(STDC) -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23 -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17 -pthread
|
CFLAGS_STDC = -std=c17 -pthread
|
||||||
else
|
else
|
||||||
|
|
|
@ -12,8 +12,12 @@ ifeq ($(origin AR),default)
|
||||||
AR = $(TOOLCHAIN_PREFIX)ar$(TOOLCHAIN_SUFFIX)
|
AR = $(TOOLCHAIN_PREFIX)ar$(TOOLCHAIN_SUFFIX)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
STDCXX?=c++20
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
||||||
else
|
else
|
||||||
|
@ -21,6 +25,10 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti -pthread
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC) -pthread
|
CFLAGS_STDC = -std=$(STDC) -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23 -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17 -pthread
|
CFLAGS_STDC = -std=c17 -pthread
|
||||||
else
|
else
|
||||||
|
|
|
@ -14,6 +14,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
||||||
else
|
else
|
||||||
|
@ -21,6 +23,10 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti -pthread
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC) -pthread
|
CFLAGS_STDC = -std=$(STDC) -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23 -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17 -pthread
|
CFLAGS_STDC = -std=c17 -pthread
|
||||||
else
|
else
|
||||||
|
@ -55,11 +61,13 @@ endif
|
||||||
ifeq ($(CHECKED_ADDRESS),1)
|
ifeq ($(CHECKED_ADDRESS),1)
|
||||||
CXXFLAGS += -fsanitize=address
|
CXXFLAGS += -fsanitize=address
|
||||||
CFLAGS += -fsanitize=address
|
CFLAGS += -fsanitize=address
|
||||||
|
NO_NO_UNDEFINED_LINKER_FLAG=1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CHECKED_UNDEFINED),1)
|
ifeq ($(CHECKED_UNDEFINED),1)
|
||||||
CXXFLAGS += -fsanitize=undefined
|
CXXFLAGS += -fsanitize=undefined
|
||||||
CFLAGS += -fsanitize=undefined
|
CFLAGS += -fsanitize=undefined
|
||||||
|
NO_NO_UNDEFINED_LINKER_FLAG=1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
include build/make/warnings-clang.mk
|
include build/make/warnings-clang.mk
|
||||||
|
|
|
@ -14,6 +14,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
||||||
else
|
else
|
||||||
|
@ -21,6 +23,8 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti -pthread
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC) -pthread
|
CFLAGS_STDC = -std=$(STDC) -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
CFLAGS_STDC = -std=c18 -pthread
|
CFLAGS_STDC = -std=c18 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
|
|
|
@ -49,6 +49,7 @@ else ifeq ($(HOST_FLAVOUR),OPENBSD)
|
||||||
|
|
||||||
NO_PORTAUDIOCPP?=1
|
NO_PORTAUDIOCPP?=1
|
||||||
NO_PULSEAUDIO?=1
|
NO_PULSEAUDIO?=1
|
||||||
|
LDLIBS_PLATFORM=-lc++ -lc
|
||||||
include build/make/config-clang.mk
|
include build/make/config-clang.mk
|
||||||
MPT_COMPILER_NOALLOCAH=1
|
MPT_COMPILER_NOALLOCAH=1
|
||||||
|
|
||||||
|
|
|
@ -12,10 +12,15 @@ ifeq ($(origin AR),default)
|
||||||
AR = i386-pc-msdosdjgpp-ar
|
AR = i386-pc-msdosdjgpp-ar
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
DXE3GEN = i386-pc-msdosdjgpp-dxe3gen
|
||||||
|
DXE3RES = i386-pc-msdosdjgpp-dxe3res
|
||||||
|
|
||||||
# Note that we are using GNU extensions instead of 100% standards-compliant
|
# Note that we are using GNU extensions instead of 100% standards-compliant
|
||||||
# mode, because otherwise DJGPP-specific headers/functions are unavailable.
|
# mode, because otherwise DJGPP-specific headers/functions are unavailable.
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -fpermissive
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -fpermissive
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=gnu++23 -fexceptions -frtti -fpermissive
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=gnu++20 -fexceptions -frtti -fpermissive
|
CXXFLAGS_STDCXX = -std=gnu++20 -fexceptions -frtti -fpermissive
|
||||||
else
|
else
|
||||||
|
@ -23,15 +28,21 @@ CXXFLAGS_STDCXX = -std=gnu++17 -fexceptions -frtti -fpermissive
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC)
|
CFLAGS_STDC = -std=$(STDC)
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=gnu23
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu20 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c20' ; fi ), c20)
|
||||||
|
CFLAGS_STDC = -std=gnu20
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=gnu17
|
CFLAGS_STDC = -std=gnu17
|
||||||
else
|
else
|
||||||
CFLAGS_STDC = -std=gnu11
|
CFLAGS_STDC = -std=gnu11
|
||||||
endif
|
endif
|
||||||
CXXFLAGS += $(CXXFLAGS_STDCXX) -fallow-store-data-races -fno-threadsafe-statics
|
CXXFLAGS += $(CXXFLAGS_STDCXX)
|
||||||
CFLAGS += $(CFLAGS_STDC) -fallow-store-data-races
|
CFLAGS += $(CFLAGS_STDC)
|
||||||
|
OVERWRITE_CXXFLAGS += -fallow-store-data-races -fno-threadsafe-statics
|
||||||
|
OVERWRITE_CFLAGS += -fallow-store-data-races
|
||||||
|
|
||||||
CPU?=generic/common
|
CPU?=generic/compatible
|
||||||
|
|
||||||
# Enable 128bit SSE registers.
|
# Enable 128bit SSE registers.
|
||||||
# This requires pure DOS with only CWSDPMI as DOS extender.
|
# This requires pure DOS with only CWSDPMI as DOS extender.
|
||||||
|
@ -46,7 +57,10 @@ ifneq ($(SSE),0)
|
||||||
FPU_MMX := -m80387 -mmmx -mfpmath=387
|
FPU_MMX := -m80387 -mmmx -mfpmath=387
|
||||||
FPU_3DNOW := -m80387 -mmmx -m3dnow -mfpmath=387
|
FPU_3DNOW := -m80387 -mmmx -m3dnow -mfpmath=387
|
||||||
FPU_3DNOWA := -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
FPU_3DNOWA := -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
||||||
FPU_3DASSE := -m80387 -mmmx -m3dnow -m3dnowa -mfxsr -msse -mfpmath=sse,387
|
FPU_3DSSE := -m80387 -mmmx -m3dnow -m3dnowa -mfxsr -msse -mfpmath=sse,387
|
||||||
|
FPU_3DSSE2 := -m80387 -mmmx -m3dnow -m3dnowa -mfxsr -msse -msse2 -mfpmath=sse
|
||||||
|
FPU_3DSSE3 := -m80387 -mmmx -m3dnow -m3dnowa -mfxsr -msse -msse2 -msse3 -mfpmath=sse
|
||||||
|
FPU_3DSSE4 := -m80387 -mmmx -m3dnow -m3dnowa -mfxsr -msse -msse2 -msse3 -msse4a -mfpmath=sse
|
||||||
FPU_SSE := -m80387 -mmmx -mfxsr -msse -mfpmath=sse,387
|
FPU_SSE := -m80387 -mmmx -mfxsr -msse -mfpmath=sse,387
|
||||||
FPU_SSE2 := -m80387 -mmmx -mfxsr -msse -msse2 -mfpmath=sse
|
FPU_SSE2 := -m80387 -mmmx -mfxsr -msse -msse2 -mfpmath=sse
|
||||||
FPU_SSE3 := -m80387 -mmmx -mfxsr -msse -msse2 -msse3 -mfpmath=sse
|
FPU_SSE3 := -m80387 -mmmx -mfxsr -msse -msse2 -msse3 -mfpmath=sse
|
||||||
|
@ -62,7 +76,10 @@ else
|
||||||
FPU_MMX := -m80387 -mmmx -mfpmath=387
|
FPU_MMX := -m80387 -mmmx -mfpmath=387
|
||||||
FPU_3DNOW := -m80387 -mmmx -m3dnow -mfpmath=387
|
FPU_3DNOW := -m80387 -mmmx -m3dnow -mfpmath=387
|
||||||
FPU_3DNOWA := -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
FPU_3DNOWA := -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
||||||
FPU_3DASSE := -mno-sse -mno-fxsr -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
FPU_3DSSE := -mno-sse -mno-fxsr -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
||||||
|
FPU_3DSSE2 := -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
||||||
|
FPU_3DSSE3 := -mno-sse3 -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
||||||
|
FPU_3DSSE4 := -mno-sse4a -mno-sse3 -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -m3dnow -m3dnowa -mfpmath=387
|
||||||
FPU_SSE := -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
FPU_SSE := -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
||||||
FPU_SSE2 := -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
FPU_SSE2 := -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
||||||
FPU_SSE3 := -mno-sse3 -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
FPU_SSE3 := -mno-sse3 -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
||||||
|
@ -73,12 +90,56 @@ else
|
||||||
FPU_SSSE4A := -mno-sse4a -mno-ssse3 -mno-sse3 -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
FPU_SSSE4A := -mno-sse4a -mno-ssse3 -mno-sse3 -mno-sse2 -mno-sse -mno-fxsr -m80387 -mmmx -mfpmath=387
|
||||||
endif
|
endif
|
||||||
|
|
||||||
OPT_DEF := -Os
|
|
||||||
OPT_SIMD := -O3
|
|
||||||
|
ifeq ($(OPTIMIZE),default)
|
||||||
|
|
||||||
|
OPT_UARCH_EMUL := -Os # interpreter
|
||||||
|
OPT_UARCH_CISC := -Os # non-pipelined, scalar, in-order, optimize for size i386 am386
|
||||||
|
OPT_UARCH_PIPE := -Os # pipelined, scalar, in-order, optimize for size i486 am486 cx486slc
|
||||||
|
OPT_UARCH_SCAL := -O2 # pipelined, super-scalar, in-order, optimize for speed pentium cx5x86
|
||||||
|
OPT_UARCH_OOOE := -O2 # pipelined, super-scalar, out-of-order, optimize for speed pentiumpro k5 cx6x86
|
||||||
|
OPT_UARCH_COMP := -O2 # recompiler
|
||||||
|
|
||||||
|
# vectorize for MMX/3DNOW (64bit wide) (unsupported by GCC)
|
||||||
|
OPT_UARCH_EMUL_64 := -Os # interpreter
|
||||||
|
OPT_UARCH_CISC_64 := -Os # non-pipelined, scalar, in-order, optimize for size
|
||||||
|
OPT_UARCH_PIPE_64 := -Os # pipelined, scalar, in-order, optimize for size
|
||||||
|
OPT_UARCH_SCAL_64 := -O2 # pipelined, super-scalar, in-order, optimize for speed pentium-mmx
|
||||||
|
OPT_UARCH_OOOE_64 := -O2 # pipelined, super-scalar, out-of-order, optimize for speed pentium2 k6 m2
|
||||||
|
OPT_UARCH_COMP_64 := -O2 # recompiler
|
||||||
|
|
||||||
|
# vectorize for SSE (128bit wide)
|
||||||
|
ifeq ($(SSE),0)
|
||||||
|
OPT_UARCH_EMUL_128 := -Os # interpreter
|
||||||
|
OPT_UARCH_CISC_128 := -Os # non-pipelined, scalar, in-order, optimize for size
|
||||||
|
OPT_UARCH_PIPE_128 := -Os # pipelined, scalar, in-order, optimize for size
|
||||||
|
OPT_UARCH_SCAL_128 := -O2 # pipelined, super-scalar, in-order, optimize for speed
|
||||||
|
OPT_UARCH_OOOE_128 := -O2 # pipelined, super-scalar, out-of-order, optimize for speed
|
||||||
|
OPT_UARCH_COMP_128 := -O2 # recompiler
|
||||||
|
else
|
||||||
|
OPT_UARCH_EMUL_128 := -O3 # interpreter
|
||||||
|
OPT_UARCH_CISC_128 := -O3 # non-pipelined, scalar, in-order, optimize for size
|
||||||
|
OPT_UARCH_PIPE_128 := -O3 # pipelined, scalar, in-order, optimize for size
|
||||||
|
OPT_UARCH_SCAL_128 := -O3 # pipelined, super-scalar, in-order, optimize for speed
|
||||||
|
OPT_UARCH_OOOE_128 := -O3 # pipelined, super-scalar, out-of-order, optimize for speed
|
||||||
|
OPT_UARCH_COMP_128 := -O3 # recompiler
|
||||||
|
endif
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
OPT_UARCH_EMUL :=
|
||||||
|
OPT_UARCH_CISC :=
|
||||||
|
OPT_UARCH_PIPE :=
|
||||||
|
OPT_UARCH_SCAL :=
|
||||||
|
OPT_UARCH_OOOE :=
|
||||||
|
OPT_UARCH_COMP :=
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CACHE_386 :=64 # 0/64/128
|
CACHE_386 :=64 # 0/32/64/128
|
||||||
CACHE_486 :=128 # 0/64/128/256
|
CACHE_486 :=128 # 0/64/128/256
|
||||||
CACHE_S7 :=256 # 128/256/512
|
CACHE_S7 :=256 # 128/256/512
|
||||||
CACHE_SS7 :=512 # 256/512/1024
|
CACHE_SS7 :=512 # 256/512/1024
|
||||||
|
@ -97,7 +158,6 @@ CACHE_PENTIUMM :=1024 # 1024/2048
|
||||||
CACHE_ATOM :=512 # 512
|
CACHE_ATOM :=512 # 512
|
||||||
|
|
||||||
|
|
||||||
CACHE_K63 :=256 # 128/256
|
|
||||||
CACHE_ATHLON :=512 # 512
|
CACHE_ATHLON :=512 # 512
|
||||||
CACHE_ATHLONXP :=256 # 256/512
|
CACHE_ATHLONXP :=256 # 256/512
|
||||||
CACHE_ATHLON64 :=512 # 256/512/1024
|
CACHE_ATHLON64 :=512 # 256/512/1024
|
||||||
|
@ -110,187 +170,234 @@ CACHE_SEMPRON64 :=128 # 128/256/512
|
||||||
|
|
||||||
TUNE_586 :=-mtune=pentium
|
TUNE_586 :=-mtune=pentium
|
||||||
TUNE_586MMX :=-mtune=pentium-mmx
|
TUNE_586MMX :=-mtune=pentium-mmx
|
||||||
|
TUNE_5863DN :=-mtune=k6-2
|
||||||
TUNE_686 :=-mtune=pentiumpro
|
TUNE_686 :=-mtune=pentiumpro
|
||||||
TUNE_686MMX :=-mtune=pentium2
|
TUNE_686MMX :=-mtune=pentium2
|
||||||
|
TUNE_6863DN :=-mtune=athlon
|
||||||
TUNE_686SSE :=-mtune=pentium3
|
TUNE_686SSE :=-mtune=pentium3
|
||||||
TUNE_686SSE2:=-mtune=pentium-m
|
TUNE_686SSE2:=-mtune=pentium-m
|
||||||
TUNE_686SSE3:=-mtune=pentium-m
|
TUNE_686SSE3:=-mtune=pentium-m
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
generic/early := $(XXX) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF)
|
generic/early := $(XXX) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC)
|
||||||
|
|
||||||
generic/common := $(XXX) -march=i386 $(FPU_387) -mtune=pentium $(OPT_DEF)
|
generic/compatible := $(XXX) -march=i386 $(FPU_387) -mtune=pentium $(OPT_UARCH_CISC)
|
||||||
generic/late := $(XXX) -march=i686 $(FPU_SSSE3) -mtune=generic $(OPT_SIMD)
|
generic/common := $(XXX) -march=i486 $(FPU_387) -mtune=pentium $(OPT_UARCH_CISC)
|
||||||
|
|
||||||
|
generic/late := $(XXX) -march=i686 $(FPU_SSE2) -mtune=generic $(OPT_UARCH_OOOE_128)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
generic/nofpu := $(X__) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) # 386SX, 386DX, 486SX, Cyrix Cx486SLC..Cx486S, NexGen Nx586
|
virtual/ibmulator := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_EMUL)
|
||||||
|
|
||||||
generic/386 := $(X__) -march=i386 $(FPU_387) -mtune=i386 $(OPT_DEF) # 386+387
|
virtual/ao486 := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE)
|
||||||
|
|
||||||
generic/486 := $(XX_) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) # 486DX, AMD Am5x86, Cyrix Cx4x86DX..6x86L, NexGen Nx586-PF
|
virtual/bochs := $(___) -march=i686 $(FPU_387) -mtune=generic $(OPT_UARCH_EMUL)
|
||||||
generic/486-mmx := $(___) -march=i486 $(FPU_MMX) -mtune=winchip-c6 $(OPT_SIMD) # IDT WinChip-C6, Rise mP6
|
|
||||||
generic/486-3dnow := $(___) -march=i486 $(FPU_3DNOW) -mtune=winchip2 $(OPT_SIMD) # IDT WinChip-2
|
|
||||||
|
|
||||||
generic/586 := $(XX_) -march=i586 $(FPU_387) -mtune=pentium $(OPT_DEF) # Intel Pentium, AMD K5
|
virtual/qemu := $(___) -march=i686 $(FPU_SSE2) -mtune=generic $(OPT_UARCH_COMP_128)
|
||||||
generic/586-mmx := $(XX_) -march=pentium-mmx $(FPU_MMX) -mtune=pentium-mmx $(OPT_SIMD) # Intel Pentium-MMX, AMD K6
|
|
||||||
generic/586-3dnow := $(XX_) -march=k6-2 $(FPU_3DNOW) -mtune=k6-2 $(OPT_SIMD) # AMD K6-2..K6-3
|
|
||||||
|
|
||||||
generic/686 := $(___) -march=pentiumpro $(FPU_387) -mtune=pentiumpro $(OPT_DEF) # Intel Pentium-Pro
|
virtual/varcem := $(___) -march=i686 $(FPU_387) -mtune=generic $(OPT_UARCH_COMP)
|
||||||
generic/686-mmx := $(XXX) -march=i686 $(FPU_MMX) -mtune=pentium2 $(OPT_SIMD) # Intel Pentium-2.., AMD Bulldozer.., VIA C3-Nehemiah.., Cyrix 6x86MX.., Transmeta Crusoe.., NSC Geode-GX1..
|
virtual/pcem := $(___) -march=i686 $(FPU_3DNOW) -mtune=generic $(OPT_UARCH_COMP_64)
|
||||||
generic/686-3dnow := $(___) -march=i686 $(FPU_3DNOW) -mtune=c3 $(OPT_SIMD) # VIA Cyrix-3..C3-Ezra
|
virtual/86box := $(___) -march=i686 $(FPU_3DNOW) -mtune=generic $(OPT_UARCH_COMP_64)
|
||||||
generic/686-3dnowa:= $(XX_) -march=athlon $(FPU_3DNOWA) -mtune=athlon $(OPT_SIMD) # AMD Athlon..K10
|
virtual/pcbox := $(___) -march=i686 $(FPU_SSE2) -mtune=generic $(OPT_UARCH_COMP_128)
|
||||||
|
|
||||||
|
virtual/unipcemu := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_EMUL)
|
||||||
|
|
||||||
generic/sse := $(X__) -march=i686 $(FPU_SSE) -mtune=pentium3 $(OPT_SIMD) # Intel Pentium-3.., AMD Athlon-XP.., VIA C3-Nehemiah.., Transmeta Efficeon.., DM&P Vortex86DX3..
|
virtual/dosbox := $(___) -march=i486 $(FPU_387) -mtune=i386 $(OPT_UARCH_EMUL)
|
||||||
generic/sse2 := $(XX_) -march=i686 $(FPU_SSE2) -mtune=generic $(OPT_SIMD) # Intel Pentium-4.., AMD Athlon-64.., VIA C7-Esther.., Transmeta Efficeon..
|
virtual/dosbox-svn := $(___) -march=i486 $(FPU_387) -mtune=i386 $(OPT_UARCH_EMUL)
|
||||||
generic/sse3 := $(___) -march=i686 $(FPU_SSE3) -mtune=generic $(OPT_SIMD) # Intel Core.., AMD Athlon-64-X2.., VIA C7-Esther.., Transmeta Efficeon-88xx..
|
virtual/dosbox-ece := $(___) -march=i486 $(FPU_387) -mtune=i386 $(OPT_UARCH_EMUL)
|
||||||
generic/ssse3 := $(___) -march=i686 $(FPU_SSSE3) -mtune=generic $(OPT_SIMD) # Intel Core-2.., AMD Bobcat.., Via Nano-1000..
|
virtual/dosbox-sta := $(___) -march=i486 $(FPU_387) -mtune=i386 $(OPT_UARCH_COMP)
|
||||||
generic/sse4_1 := $(___) -march=i686 $(FPU_SSE4_1) -mtune=generic $(OPT_SIMD) # Intel Core-1st, AMD Bulldozer.., Via Nano-3000..
|
virtual/dosbox-x := $(___) -march=i686 $(FPU_SSE) -mtune=generic $(OPT_UARCH_EMUL_128)
|
||||||
generic/sse4_2 := $(___) -march=i686 $(FPU_SSE4_2) -mtune=generic $(OPT_SIMD) # Intel Core-1st, AMD Bulldozer.., Via Nano-C..
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
intel/i386 := $(XX_) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
generic/nofpu := $(X__) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) # 386SX, 386DX, 486SX, Cyrix Cx486SLC..Cx486S, NexGen Nx586
|
||||||
intel/i486sx := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
|
||||||
intel/i386+80287 := $(___) -march=i386 $(FPU_287) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
|
||||||
|
|
||||||
intel/i386+80387 := $(XX_) -march=i386 $(FPU_387) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
generic/386 := $(X__) -march=i386 $(FPU_387) -mtune=i386 $(OPT_UARCH_CISC) # 386+387
|
||||||
intel/i486dx := $(XXX) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
|
||||||
intel/pentium := $(XXX) -march=pentium $(FPU_387) -mtune=pentium $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
|
||||||
intel/pentium-mmx := $(XXX) -march=pentium-mmx $(FPU_MMX) -mtune=pentium-mmx $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_S7)
|
|
||||||
intel/pentium-pro := $(___) -march=pentiumpro $(FPU_387) -mtune=pentiumpro $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_PENTIUMPRO)
|
|
||||||
intel/pentium2 := $(___) -march=pentium2 $(FPU_MMX) -mtune=pentium2 $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_PENTIUM2)
|
|
||||||
intel/pentium3 := $(___) -march=pentium3 $(FPU_SSE) -mtune=pentium3 $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_PENTIUM3)
|
|
||||||
intel/pentium4 := $(___) -march=pentium4 $(FPU_SSE2) -mtune=pentium4 $(OPT_SIMD) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_PENTIUM4)
|
|
||||||
intel/pentium4.1 := $(___) -march=prescott $(FPU_SSE3) -mtune=prescott $(OPT_SIMD) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_PENTIUM41)
|
|
||||||
intel/core2 := $(___) -march=core2 $(FPU_SSSE3) -mtune=core2 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_CORE2)
|
|
||||||
|
|
||||||
intel/celeron := $(___) -march=pentium2 $(FPU_MMX) -mtune=pentium2 $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_CELERON)
|
generic/486 := $(XX_) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) # 486DX, AMD Am5x86, Cyrix Cx4x86DX..6x86L, NexGen Nx586-PF
|
||||||
intel/pentium-m := $(___) -march=pentium-m $(FPU_SSE2) -mtune=pentium-m $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_PENTIUMM)
|
|
||||||
intel/core := $(___) -march=pentium-m $(FPU_SSE3) -mtune=core2 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_CORE)
|
|
||||||
intel/atom := $(___) -march=bonnell $(FPU_SSSE3) -mtune=bonnell $(OPT_SIMD) --param l1-cache-size=24 --param l2-cache-size=$(CACHE_ATOM)
|
|
||||||
|
|
||||||
intel/late := $(XX_) -march=i686 $(FPU_SSSE3) -mtune=intel $(OPT_SIMD)
|
generic/586 := $(XXX) -march=i586 $(FPU_387) -mtune=pentium $(OPT_UARCH_SCAL) # Intel Pentium, AMD K5
|
||||||
|
generic/586-mmx := $(XX_) -march=pentium-mmx $(FPU_MMX) -mtune=pentium-mmx $(OPT_UARCH_SCAL_64) # Intel Pentium-MMX, AMD K6, IDT WinChip-C6, Rise mP6
|
||||||
|
generic/586-3dnow := $(XX_) -march=k6-2 $(FPU_3DNOW) -mtune=k6-2 $(OPT_UARCH_SCAL_64) # AMD K6-2..K6-3+, IDT WinChip-2, VIA-C3-Samuel..VIA C3-Ezra
|
||||||
|
|
||||||
|
generic/686 := $(___) -march=pentiumpro $(FPU_387) -mtune=pentiumpro $(OPT_UARCH_OOOE) # Intel Pentium-Pro
|
||||||
|
generic/686-mmx := $(XX_) -march=i686 $(FPU_MMX) -mtune=pentium2 $(OPT_UARCH_OOOE_64) # Intel Pentium-2.., AMD Bulldozer.., VIA C3-Nehemiah.., Cyrix 6x86MX.., Transmeta Crusoe.., NSC Geode-GX1..
|
||||||
|
generic/686-3dnow := $(___) -march=i686 $(FPU_3DNOW) -mtune=athlon $(OPT_UARCH_OOOE_64) # VIA Cyrix-3-Joshua
|
||||||
|
generic/686-3dnowa := $(XX_) -march=athlon $(FPU_3DNOWA) -mtune=athlon $(OPT_UARCH_OOOE_64) # AMD Athlon..K10
|
||||||
|
|
||||||
|
generic/sse := $(___) -march=i686 $(FPU_SSE) -mtune=pentium3 $(OPT_UARCH_OOOE_128) # Intel Pentium-3, AMD Athlon-XP, VIA C3-Nehemiah, DM&P Vortex86DX3..
|
||||||
|
|
||||||
|
generic/sse2 := $(X__) -march=i686 $(FPU_SSE2) -mtune=generic $(OPT_UARCH_OOOE_128) # Intel Pentium-4.., AMD Athlon-64.., VIA C7-Esther.., Transmeta Efficeon..
|
||||||
|
generic/sse3 := $(___) -march=i686 $(FPU_SSE3) -mtune=generic $(OPT_UARCH_OOOE_128) # Intel Core.., AMD Athlon-64-X2.., VIA C7-Esther.., Transmeta Efficeon-88xx..
|
||||||
|
generic/ssse3 := $(___) -march=i686 $(FPU_SSSE3) -mtune=generic $(OPT_UARCH_OOOE_128) # Intel Core-2.., AMD Bobcat.., Via Nano-1000..
|
||||||
|
generic/sse4_1 := $(___) -march=i686 $(FPU_SSE4_1) -mtune=generic $(OPT_UARCH_OOOE_128) # Intel Core-1st, AMD Bulldozer.., Via Nano-3000..
|
||||||
|
generic/sse4_2 := $(___) -march=i686 $(FPU_SSE4_2) -mtune=generic $(OPT_UARCH_OOOE_128) # Intel Core-1st, AMD Bulldozer.., Via Nano-C..
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
amd/am386 := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
intel/i386 := $(X__) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
amd/am486sx := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
intel/i486sx := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
intel/i386+80287 := $(___) -march=i386 $(FPU_287) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
|
|
||||||
amd/am386+80387 := $(___) -march=i386 $(FPU_387) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
intel/i386+80387 := $(X__) -march=i386 $(FPU_387) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
amd/am486dx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
intel/i486sx+i487sx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
amd/am486dxe := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
intel/i486dx := $(XXX) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
amd/am5x86 := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
intel/pentium := $(XXX) -march=pentium $(FPU_387) -mtune=pentium $(OPT_UARCH_SCAL) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
||||||
amd/k5 := $(XXX) -march=i586 $(FPU_387) -mtune=i586 $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
intel/pentium-mmx := $(XXX) -march=pentium-mmx $(FPU_MMX) -mtune=pentium-mmx $(OPT_UARCH_SCAL_64) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_S7)
|
||||||
amd/k5-pentium := $(XXX) -march=i586 $(FPU_387) -mtune=pentium $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
intel/pentium-pro := $(___) -march=pentiumpro $(FPU_387) -mtune=pentiumpro $(OPT_UARCH_OOOE) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_PENTIUMPRO)
|
||||||
amd/k5-pentiumpro := $(XXX) -march=i586 $(FPU_387) -mtune=pentiumpro $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
intel/pentium2 := $(XX_) -march=pentium2 $(FPU_MMX) -mtune=pentium2 $(OPT_UARCH_OOOE_64) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_PENTIUM2)
|
||||||
amd/k5-pentium2 := $(XXX) -march=i586 $(FPU_387) -mtune=pentium2 $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
intel/pentium3 := $(X__) -march=pentium3 $(FPU_SSE) -mtune=pentium3 $(OPT_UARCH_OOOE_128) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_PENTIUM3)
|
||||||
amd/k5-k6 := $(XXX) -march=i586 $(FPU_387) -mtune=k6 $(OPT_DEF) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
intel/pentium4 := $(XX_) -march=pentium4 $(FPU_SSE2) -mtune=pentium4 $(OPT_UARCH_OOOE_128) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_PENTIUM4)
|
||||||
amd/k6 := $(XXX) -march=k6 $(FPU_MMX) -mtune=k6 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_S7)
|
intel/pentium4.1 := $(___) -march=prescott $(FPU_SSE3) -mtune=prescott $(OPT_UARCH_OOOE_128) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_PENTIUM41)
|
||||||
amd/k6-2 := $(XXX) -march=k6-2 $(FPU_3DNOW) -mtune=k6-2 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_SS7)
|
intel/core2 := $(___) -march=core2 $(FPU_SSSE3) -mtune=core2 $(OPT_UARCH_OOOE_128) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_CORE2)
|
||||||
amd/k6-3 := $(___) -march=k6-3 $(FPU_3DNOW) -mtune=k6-3 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_K63)
|
|
||||||
amd/athlon := $(XX_) -march=athlon $(FPU_3DNOWA) -mtune=athlon $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLON)
|
|
||||||
amd/athlon-xp := $(XX_) -march=athlon-xp $(FPU_3DASSE) -mtune=athlon-xp $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLONXP)
|
|
||||||
amd/athlon64 := $(X__) -march=k8 $(FPU_SSE2) -mtune=k8 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLON64)
|
|
||||||
amd/athlon64-sse3 := $(___) -march=k8-sse3 $(FPU_SSE3) -mtune=k8-sse3 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLON64)
|
|
||||||
amd/k10 := $(___) -march=amdfam10 $(FPU_SSE4A) -mtune=amdfam10 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=512
|
|
||||||
|
|
||||||
amd/duron := $(XX_) -march=athlon $(FPU_3DNOWA) -mtune=athlon $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_DURON)
|
intel/celeron := $(___) -march=pentium2 $(FPU_MMX) -mtune=pentium2 $(OPT_UARCH_OOOE_64) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_CELERON)
|
||||||
amd/duron-xp := $(___) -march=athlon-xp $(FPU_3DASSE) -mtune=athlon-xp $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_DURONXP)
|
intel/pentium-m := $(___) -march=pentium-m $(FPU_SSE2) -mtune=pentium-m $(OPT_UARCH_OOOE_128) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_PENTIUMM)
|
||||||
amd/sempron64 := $(___) -march=k8 $(FPU_SSE2) -mtune=k8 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_SEMPRON64)
|
intel/core := $(___) -march=pentium-m $(FPU_SSE3) -mtune=core2 $(OPT_UARCH_OOOE_128) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_CORE)
|
||||||
|
intel/atom := $(___) -march=bonnell $(FPU_SSSE3) -mtune=bonnell $(OPT_UARCH_SCAL_128) --param l1-cache-size=24 --param l2-cache-size=$(CACHE_ATOM)
|
||||||
|
|
||||||
amd/geode-gx := $(___) -march=geode $(FPU_3DNOW) -mtune=geode $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=0
|
intel/late := $(XX_) -march=i686 $(FPU_SSSE3) -mtune=intel $(OPT_UARCH_OOOE_128)
|
||||||
amd/geode-lx := $(___) -march=geode $(FPU_3DNOW) -mtune=geode $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=128
|
|
||||||
amd/geode-nx := $(___) -march=athlon-xp $(FPU_3DASSE) -mtune=athlon-xp $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=256
|
|
||||||
amd/bobcat := $(___) -march=btver1 $(FPU_SSSE4A) -mtune=btver1 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=512
|
|
||||||
amd/jaguar := $(___) -march=btver2 $(FPU_SSSE4A) -mtune=btver2 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=1024
|
|
||||||
|
|
||||||
amd/late-3dnow := $(XX_) -march=athlon-xp $(FPU_3DASSE) -mtune=athlon-xp $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=512
|
|
||||||
amd/late := $(XX_) -march=i686 $(FPU_SSSE4A) -mtune=generic $(OPT_SIMD)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
nexgen/nx586 := $(___) -march=i486 $(FPU_NONE) $(TUNE_586) $(OPT_DEF) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_486)
|
amd/am386 := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
|
amd/am486sx := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
|
||||||
nexgen/nx586pf := $(___) -march=i486 $(FPU_387) $(TUNE_586) $(OPT_DEF) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_486)
|
amd/am386+80387 := $(___) -march=i386 $(FPU_387) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
|
amd/am486sx+am487sx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
amd/am486dx := $(XX_) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
amd/am486dxe := $(XX_) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
||||||
|
amd/am5x86 := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
||||||
|
amd/k5 := $(X__) -march=i586 $(FPU_387) -mtune=i586 $(OPT_UARCH_OOOE) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_S7)
|
||||||
|
amd/k6 := $(XX_) -march=k6 $(FPU_MMX) -mtune=k6 $(OPT_UARCH_OOOE_64) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_S7)
|
||||||
|
amd/k6-2 := $(XXX) -march=k6-2 $(FPU_3DNOW) -mtune=k6-2 $(OPT_UARCH_OOOE_64) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_SS7)
|
||||||
|
amd/k6-3 := $(___) -march=k6-3 $(FPU_3DNOW) -mtune=k6-3 $(OPT_UARCH_OOOE_64) --param l1-cache-size=32 --param l2-cache-size=256
|
||||||
|
amd/k6-2+ := $(___) -march=k6-3 $(FPU_3DNOW) -mtune=k6-3 $(OPT_UARCH_OOOE_64) --param l1-cache-size=32 --param l2-cache-size=128
|
||||||
|
amd/k6-3+ := $(___) -march=k6-3 $(FPU_3DNOW) -mtune=k6-3 $(OPT_UARCH_OOOE_64) --param l1-cache-size=32 --param l2-cache-size=256
|
||||||
|
amd/athlon := $(XX_) -march=athlon $(FPU_3DNOWA) -mtune=athlon $(OPT_UARCH_OOOE_64) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLON)
|
||||||
|
amd/athlon-xp := $(XXX) -march=athlon-xp $(FPU_3DSSE) -mtune=athlon-xp $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLONXP)
|
||||||
|
amd/athlon64 := $(X__) -march=k8 $(FPU_3DSSE2) -mtune=k8 $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLON64)
|
||||||
|
amd/athlon64-sse3 := $(___) -march=k8-sse3 $(FPU_3DSSE3) -mtune=k8-sse3 $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_ATHLON64)
|
||||||
|
amd/k10 := $(___) -march=amdfam10 $(FPU_3DSSE4) -mtune=amdfam10 $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=512
|
||||||
|
|
||||||
|
amd/duron := $(X__) -march=athlon $(FPU_3DNOWA) -mtune=athlon $(OPT_UARCH_OOOE_64) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_DURON)
|
||||||
|
amd/duron-xp := $(___) -march=athlon-xp $(FPU_3DSSE) -mtune=athlon-xp $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_DURONXP)
|
||||||
|
amd/sempron64 := $(___) -march=k8 $(FPU_3DSSE2) -mtune=k8 $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=$(CACHE_SEMPRON64)
|
||||||
|
|
||||||
|
amd/geode-gx := $(___) -march=geode $(FPU_3DNOWA) -mtune=geode $(OPT_UARCH_OOOE_64) --param l1-cache-size=16 --param l2-cache-size=0
|
||||||
|
amd/geode-lx := $(___) -march=geode $(FPU_3DNOWA) -mtune=geode $(OPT_UARCH_OOOE_64) --param l1-cache-size=64 --param l2-cache-size=128
|
||||||
|
amd/geode-nx := $(___) -march=athlon-xp $(FPU_3DSSE) -mtune=athlon-xp $(OPT_UARCH_OOOE_128) --param l1-cache-size=64 --param l2-cache-size=256
|
||||||
|
amd/bobcat := $(X__) -march=btver1 $(FPU_SSSE4A) -mtune=btver1 $(OPT_UARCH_OOOE_128) --param l1-cache-size=32 --param l2-cache-size=512
|
||||||
|
amd/jaguar := $(___) -march=btver2 $(FPU_SSSE4A) -mtune=btver2 $(OPT_UARCH_OOOE_128) --param l1-cache-size=32 --param l2-cache-size=1024
|
||||||
|
|
||||||
|
amd/late := $(XX_) -march=i686 $(FPU_SSSE4A) -mtune=generic $(OPT_UARCH_OOOE_128)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ibm/386slc := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_386)
|
ct/38600 := $(___) -march=i386 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
ibm/486slc := $(___) -march=i486 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_386)
|
ct/38605 := $(___) -march=i386 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
||||||
ibm/486bl := $(___) -march=i486 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
cyrix/cx486slc := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_DEF) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
nexgen/nx586 := $(___) -march=i486 $(FPU_NONE) $(TUNE_586) $(OPT_UARCH_OOOE) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_486)
|
||||||
cyrix/cx486dlc := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_DEF) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
|
||||||
cyrix/cx4x86s := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_DEF) --param l1-cache-size=2 --param l2-cache-size=$(CACHE_486)
|
|
||||||
|
|
||||||
cyrix/cx4x86dx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
nexgen/nx586pf := $(___) -march=i486 $(FPU_387) $(TUNE_586) $(OPT_UARCH_OOOE) --param l1-cache-size=16 --param l2-cache-size=$(CACHE_486)
|
||||||
cyrix/cx5x86 := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
|
||||||
cyrix/6x86 := $(XXX) -march=i486 $(FPU_387) $(TUNE_586) $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_S7)
|
|
||||||
cyrix/6x86l := $(___) -march=i486 $(FPU_387) $(TUNE_586) $(OPT_DEF) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_S7)
|
|
||||||
cyrix/6x86mx := $(___) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_SIMD) --param l1-cache-size=48 --param l2-cache-size=$(CACHE_SS7)
|
|
||||||
|
|
||||||
cyrix/mediagx-gx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=9 --param l2-cache-size=0
|
|
||||||
cyrix/mediagx-gxm := $(___) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_SIMD) --param l1-cache-size=9 --param l2-cache-size=0
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
nsc/geode-gx1 := $(___) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_SIMD) --param l1-cache-size=9 --param l2-cache-size=0
|
ibm/386slc := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_386)
|
||||||
nsc/geode-gx2 := $(___) -march=geode $(FPU_3DNOW) -mtune=geode $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=0
|
ibm/486slc := $(___) -march=i486 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_386)
|
||||||
|
ibm/486bl := $(___) -march=i486 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
||||||
|
|
||||||
|
ibm/386slc+fasmath := $(___) -march=i386 $(FPU_387) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_386)
|
||||||
|
ibm/486slc+fasmath := $(___) -march=i486 $(FPU_387) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_386)
|
||||||
|
ibm/486bl+fasmath := $(___) -march=i486 $(FPU_387) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
idt/winchip-c6 := $(XX_) -march=winchip-c6 $(FPU_MMX) -mtune=winchip-c6 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_S7)
|
cyrix/cx486slc := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
||||||
idt/winchip2 := $(XX_) -march=winchip2 $(FPU_3DNOW) -mtune=winchip2 $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_SS7)
|
cyrix/cx486dlc := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
||||||
|
cyrix/cx4x86s := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=2 --param l2-cache-size=$(CACHE_486)
|
||||||
|
|
||||||
|
cyrix/cx486slc+80387 := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
||||||
|
cyrix/cx486dlc+80387 := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=1 --param l2-cache-size=$(CACHE_386)
|
||||||
|
cyrix/cx4x86s+cx487s := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=2 --param l2-cache-size=$(CACHE_486)
|
||||||
|
cyrix/cx4x86dx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
cyrix/cx5x86 := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_SCAL) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_486)
|
||||||
|
cyrix/6x86 := $(XXX) -march=i486 $(FPU_387) $(TUNE_586) $(OPT_UARCH_OOOE) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_S7)
|
||||||
|
cyrix/6x86l := $(___) -march=i486 $(FPU_387) $(TUNE_586) $(OPT_UARCH_OOOE) --param l1-cache-size=12 --param l2-cache-size=$(CACHE_S7)
|
||||||
|
cyrix/6x86mx := $(XX_) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_UARCH_OOOE_64) --param l1-cache-size=48 --param l2-cache-size=$(CACHE_SS7)
|
||||||
|
|
||||||
|
cyrix/mediagx-gx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_SCAL) --param l1-cache-size=9 --param l2-cache-size=0
|
||||||
|
cyrix/mediagx-gxm := $(___) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_UARCH_SCAL_64) --param l1-cache-size=9 --param l2-cache-size=0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
via/cyrix3-joshua := $(XX_) -march=i686 $(FPU_3DNOW) $(TUNE_686MMX) $(OPT_SIMD) --param l1-cache-size=48 --param l2-cache-size=256
|
nsc/geode-gx1 := $(___) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_UARCH_SCAL_64) --param l1-cache-size=9 --param l2-cache-size=0
|
||||||
via/cyrix3-samuel := $(___) -march=c3 $(FPU_3DNOW) -mtune=c3 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=0
|
nsc/geode-gx2 := $(___) -march=geode $(FPU_3DNOWA) -mtune=geode $(OPT_UARCH_OOOE_64) --param l1-cache-size=16 --param l2-cache-size=0
|
||||||
via/c3-samuel2 := $(___) -march=samuel-2 $(FPU_3DNOW) -mtune=samuel-2 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=64
|
|
||||||
via/c3-ezra := $(___) -march=samuel-2 $(FPU_3DNOW) -mtune=samuel-2 $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=64
|
|
||||||
via/c3-nehemiah := $(XX_) -march=nehemiah $(FPU_SSE) -mtune=nehemiah $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=64
|
|
||||||
via/c7-esther := $(XX_) -march=esther $(FPU_SSE3) -mtune=esther $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=128
|
|
||||||
|
|
||||||
via/late := $(XX_) -march=i686 $(FPU_SSE3) -mtune=esther $(OPT_SIMD)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
umc/u5s := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
idt/winchip-c6 := $(X__) -march=i586 $(FPU_MMX) -mtune=winchip-c6 $(OPT_UARCH_PIPE_64) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_S7)
|
||||||
umc/u5d := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
idt/winchip2 := $(X__) -march=i586 $(FPU_3DNOW) -mtune=winchip2 $(OPT_UARCH_SCAL_64) --param l1-cache-size=32 --param l2-cache-size=$(CACHE_SS7)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
transmeta/crusoe := $(___) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=256
|
via/cyrix3-joshua := $(___) -march=i686 $(FPU_3DNOW) $(TUNE_6863DN) $(OPT_UARCH_OOOE_64) --param l1-cache-size=48 --param l2-cache-size=256
|
||||||
transmeta/efficeon:= $(___) -march=i686 $(FPU_SSE2) $(TUNE_686SSE2) $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=1024
|
via/c3-samuel := $(___) -march=c3 $(FPU_3DNOW) -mtune=c3 $(OPT_UARCH_SCAL_64) --param l1-cache-size=64 --param l2-cache-size=0
|
||||||
transmeta/tm8800 := $(___) -march=i686 $(FPU_SSE3) $(TUNE_686SSE3) $(OPT_SIMD) --param l1-cache-size=64 --param l2-cache-size=1024
|
via/c3-samuel2 := $(___) -march=samuel-2 $(FPU_3DNOW) -mtune=samuel-2 $(OPT_UARCH_SCAL_64) --param l1-cache-size=64 --param l2-cache-size=64
|
||||||
|
via/c3-ezra := $(___) -march=samuel-2 $(FPU_3DNOW) -mtune=samuel-2 $(OPT_UARCH_SCAL_64) --param l1-cache-size=64 --param l2-cache-size=64
|
||||||
|
via/c3-nehemiah := $(___) -march=nehemiah $(FPU_SSE) -mtune=nehemiah $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=64
|
||||||
|
via/c7-esther := $(XX_) -march=esther $(FPU_SSE3) -mtune=esther $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=128
|
||||||
|
via/eden-x2 := $(___) -march=eden-x2 $(FPU_SSE3) -mtune=eden-x2 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=64
|
||||||
|
via/nano := $(___) -march=nano $(FPU_SSSE3) -mtune=nano $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/nano-1000 := $(___) -march=nano-1000 $(FPU_SSSE3) -mtune=nano-1000 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/nano-2000 := $(___) -march=nano-2000 $(FPU_SSSE3) -mtune=nano-2000 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/nano-3000 := $(___) -march=nano-3000 $(FPU_SSE4_1) -mtune=nano-3000 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/nano-4000 := $(___) -march=nano-4000 $(FPU_SSE4_1) -mtune=nano-4000 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/nano-x2 := $(___) -march=nano-x2 $(FPU_SSE4_1) -mtune=nano-x2 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/nano-x4 := $(___) -march=nano-x4 $(FPU_SSE4_1) -mtune=nano-x4 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
via/eden-x4 := $(___) -march=eden-x4 $(FPU_SSE4_2) -mtune=eden-x4 $(OPT_UARCH_SCAL_128) --param l1-cache-size=64 --param l2-cache-size=2048
|
||||||
|
|
||||||
|
via/late := $(XX_) -march=eden-x4 $(FPU_SSE4_2) -mtune=eden-x4 $(OPT_UARCH_SCAL_128)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
uli/m6117c := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
umc/u5s := $(___) -march=i486 $(FPU_NONE) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
umc/u5d := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_UARCH_PIPE) --param l1-cache-size=6 --param l2-cache-size=$(CACHE_486)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
rise/mp6 := $(XX_) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_SIMD) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_SS7)
|
transmeta/crusoe := $(X__) -march=i686 $(FPU_MMX) $(TUNE_686MMX) $(OPT_UARCH_COMP) --param l1-cache-size=64 --param l2-cache-size=256
|
||||||
|
transmeta/efficeon := $(___) -march=i686 $(FPU_SSE2) $(TUNE_686SSE2) $(OPT_UARCH_COMP) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
transmeta/tm8800 := $(___) -march=i686 $(FPU_SSE3) $(TUNE_686SSE3) $(OPT_UARCH_COMP) --param l1-cache-size=64 --param l2-cache-size=1024
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
sis/55x := $(___) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_SIMD) --param l1-cache-size=8 --param l2-cache-size=0
|
uli/m6117c := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
dmnp/m6117d := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
rise/mp6 := $(X__) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_UARCH_SCAL_64) --param l1-cache-size=8 --param l2-cache-size=$(CACHE_SS7)
|
||||||
dmnp/vortex86sx := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_DEF) --param l1-cache-size=16 --param l2-cache-size=0
|
|
||||||
|
|
||||||
dmnp/vortex86dx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=16 --param l2-cache-size=256
|
|
||||||
dmnp/vortex86mx := $(___) -march=i486 $(FPU_387) -mtune=i486 $(OPT_DEF) --param l1-cache-size=16 --param l2-cache-size=256
|
|
||||||
dmnp/vortex86 := $(___) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_SIMD) --param l1-cache-size=8 --param l2-cache-size=0
|
sis/55x := $(___) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_UARCH_SCAL_64) --param l1-cache-size=8 --param l2-cache-size=0
|
||||||
dmnp/vortex86dx2 := $(___) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_SIMD) --param l1-cache-size=16 --param l2-cache-size=256
|
|
||||||
dmnp/vortex86dx3 := $(___) -march=i686 $(FPU_SSE) $(TUNE_686SSE) $(OPT_SIMD) --param l1-cache-size=32 --param l2-cache-size=512
|
|
||||||
|
|
||||||
|
dmnp/m6117d := $(___) -march=i386 $(FPU_NONE) -mtune=i386 $(OPT_UARCH_CISC) --param l1-cache-size=0 --param l2-cache-size=$(CACHE_386)
|
||||||
|
dmnp/vortex86 := $(___) -march=i586 $(FPU_MMX) $(TUNE_586MMX) $(OPT_UARCH_SCAL_64) --param l1-cache-size=8 --param l2-cache-size=0
|
||||||
|
dmnp/vortex86sx := $(___) -march=i586 $(FPU_NONE) $(TUNE_586) $(OPT_UARCH_SCAL) --param l1-cache-size=16 --param l2-cache-size=0
|
||||||
|
dmnp/vortex86dx := $(___) -march=i586 $(FPU_387) $(TUNE_586) $(OPT_UARCH_SCAL) --param l1-cache-size=16 --param l2-cache-size=256
|
||||||
|
dmnp/vortex86mx := $(___) -march=i586 $(FPU_387) $(TUNE_586) $(OPT_UARCH_SCAL) --param l1-cache-size=16 --param l2-cache-size=256
|
||||||
|
dmnp/vortex86mxp := $(___) -march=i586 $(FPU_387) $(TUNE_586) $(OPT_UARCH_SCAL) --param l1-cache-size=16 --param l2-cache-size=256
|
||||||
|
dmnp/vortex86dx2 := $(___) -march=i586 $(FPU_387) $(TUNE_586) $(OPT_UARCH_SCAL) --param l1-cache-size=16 --param l2-cache-size=256
|
||||||
|
dmnp/vortex86ex := $(___) -march=i586 $(FPU_387) $(TUNE_586) $(OPT_UARCH_SCAL) --param l1-cache-size=16 --param l2-cache-size=128
|
||||||
|
dmnp/vortex86dx3 := $(___) -march=i686 $(FPU_SSE) $(TUNE_686SSE) $(OPT_UARCH_SCAL_128) --param l1-cache-size=32 --param l2-cache-size=256
|
||||||
|
dmnp/vortex86ex2 := $(___) -march=i686 $(FPU_SSE) $(TUNE_686SSE) $(OPT_UARCH_SCAL_128) --param l1-cache-size=32 --param l2-cache-size=128
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -301,12 +408,25 @@ CPUFLAGS := $($(CPU))
|
||||||
|
|
||||||
# parse CPU optimization options
|
# parse CPU optimization options
|
||||||
ifeq ($(findstring -O3,$(CPUFLAGS)),-O3)
|
ifeq ($(findstring -O3,$(CPUFLAGS)),-O3)
|
||||||
OPTIMIZE=vectorize
|
MPT_COMPILER_NO_O=1
|
||||||
CPUFLAGS := $(filter-out -O3,$(CPUFLAGS))
|
endif
|
||||||
|
ifeq ($(findstring -O2,$(CPUFLAGS)),-O2)
|
||||||
|
MPT_COMPILER_NO_O=1
|
||||||
endif
|
endif
|
||||||
ifeq ($(findstring -Os,$(CPUFLAGS)),-Os)
|
ifeq ($(findstring -Os,$(CPUFLAGS)),-Os)
|
||||||
OPTIMIZE=size
|
MPT_COMPILER_NO_O=1
|
||||||
CPUFLAGS := $(filter-out -Os,$(CPUFLAGS))
|
endif
|
||||||
|
ifeq ($(findstring -Oz,$(CPUFLAGS)),-Oz)
|
||||||
|
MPT_COMPILER_NO_O=1
|
||||||
|
endif
|
||||||
|
ifeq ($(findstring -O1,$(CPUFLAGS)),-O1)
|
||||||
|
MPT_COMPILER_NO_O=1
|
||||||
|
endif
|
||||||
|
ifeq ($(findstring -O0,$(CPUFLAGS)),-O0)
|
||||||
|
MPT_COMPILER_NO_O=1
|
||||||
|
endif
|
||||||
|
ifeq ($(findstring -Og,$(CPUFLAGS)),-Og)
|
||||||
|
MPT_COMPILER_NO_O=1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Handle the no-FPU case by linking DJGPP's own emulator.
|
# Handle the no-FPU case by linking DJGPP's own emulator.
|
||||||
|
@ -328,6 +448,7 @@ endif
|
||||||
ifeq ($(FLAVOURED_DIR),1)
|
ifeq ($(FLAVOURED_DIR),1)
|
||||||
|
|
||||||
EXESUFFIX=.exe
|
EXESUFFIX=.exe
|
||||||
|
SOSUFFIX=.dxe
|
||||||
ifeq ($(findstring -msse,$(CPUFLAGS)),-msse)
|
ifeq ($(findstring -msse,$(CPUFLAGS)),-msse)
|
||||||
FLAVOUR_DIR=$(CPU)-sse/
|
FLAVOUR_DIR=$(CPU)-sse/
|
||||||
FLAVOUR_O=.$(subst /,-,$(CPU)-sse)
|
FLAVOUR_O=.$(subst /,-,$(CPU)-sse)
|
||||||
|
@ -341,19 +462,32 @@ else ifeq ($(FLAVOURED_EXE),1)
|
||||||
|
|
||||||
ifeq ($(CPU),generic/common)
|
ifeq ($(CPU),generic/common)
|
||||||
EXESUFFIX=.exe
|
EXESUFFIX=.exe
|
||||||
|
SOSUFFIX=.dxe
|
||||||
else
|
else
|
||||||
EXESUFFIX:=.exe
|
EXESUFFIX:=.exe
|
||||||
|
SOSUFFIX=.dxe
|
||||||
ifeq ($(findstring -msse,$(CPUFLAGS)),-msse)
|
ifeq ($(findstring -msse,$(CPUFLAGS)),-msse)
|
||||||
EXESUFFIX:=-SSE$(EXESUFFIX)
|
EXESUFFIX:=-SSE$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-SSE$(SOSUFFIX)
|
||||||
endif
|
endif
|
||||||
ifeq ($(OPTIMIZE),size)
|
ifeq ($(OPTIMIZE),some)
|
||||||
|
EXESUFFIX:=-O1$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-O1$(SOSUFFIX)
|
||||||
|
else ifeq ($(OPTIMIZE),extrasize)
|
||||||
|
EXESUFFIX:=-Oz$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-Oz$(SOSUFFIX)
|
||||||
|
else ifeq ($(OPTIMIZE),size)
|
||||||
EXESUFFIX:=-Os$(EXESUFFIX)
|
EXESUFFIX:=-Os$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-Os$(SOSUFFIX)
|
||||||
else ifeq ($(OPTIMIZE),speed)
|
else ifeq ($(OPTIMIZE),speed)
|
||||||
EXESUFFIX:=-O2$(EXESUFFIX)
|
EXESUFFIX:=-O2$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-O2$(SOSUFFIX)
|
||||||
else ifeq ($(OPTIMIZE),vectorize)
|
else ifeq ($(OPTIMIZE),vectorize)
|
||||||
EXESUFFIX:=-O3$(EXESUFFIX)
|
EXESUFFIX:=-O3$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-O3$(SOSUFFIX)
|
||||||
endif
|
endif
|
||||||
EXESUFFIX:=-$(subst /,-,$(CPU))$(EXESUFFIX)
|
EXESUFFIX:=-$(subst /,-,$(CPU))$(EXESUFFIX)
|
||||||
|
SOSUFFIX:=-$(subst /,-,$(CPU))$(SOSUFFIX)
|
||||||
endif
|
endif
|
||||||
ifeq ($(findstring -msse,$(CPUFLAGS)),-msse)
|
ifeq ($(findstring -msse,$(CPUFLAGS)),-msse)
|
||||||
FLAVOUR_O=.$(subst /,-,$(CPU)-sse)
|
FLAVOUR_O=.$(subst /,-,$(CPU)-sse)
|
||||||
|
@ -364,12 +498,13 @@ endif
|
||||||
else
|
else
|
||||||
|
|
||||||
EXESUFFIX=.exe
|
EXESUFFIX=.exe
|
||||||
|
SOSUFFIX=.dxe
|
||||||
FLAVOUR_DIR=
|
FLAVOUR_DIR=
|
||||||
FLAVOUR_O=
|
FLAVOUR_O=
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CPPFLAGS +=
|
CPPFLAGS +=
|
||||||
CXXFLAGS += $(CPU_CFLAGS)
|
CXXFLAGS += $(CPU_CFLAGS)
|
||||||
CFLAGS += $(CPU_CFLAGS)
|
CFLAGS += $(CPU_CFLAGS)
|
||||||
LDFLAGS += $(CPU_LDFLAGS)
|
LDFLAGS += $(CPU_LDFLAGS)
|
||||||
|
@ -383,6 +518,7 @@ MPT_COMPILER_NOIPARA=1
|
||||||
|
|
||||||
include build/make/warnings-gcc.mk
|
include build/make/warnings-gcc.mk
|
||||||
|
|
||||||
|
ALLOW_LGPL=1
|
||||||
DYNLINK=0
|
DYNLINK=0
|
||||||
SHARED_LIB=0
|
SHARED_LIB=0
|
||||||
STATIC_LIB=1
|
STATIC_LIB=1
|
||||||
|
@ -396,10 +532,15 @@ IS_CROSS=1
|
||||||
MPT_COMPILER_NOVISIBILITY=1
|
MPT_COMPILER_NOVISIBILITY=1
|
||||||
|
|
||||||
# causes crashes on process shutdown with liballegro
|
# causes crashes on process shutdown with liballegro
|
||||||
|
MPT_COMPILER_NOSECTIONS=1
|
||||||
MPT_COMPILER_NOGCSECTIONS=1
|
MPT_COMPILER_NOGCSECTIONS=1
|
||||||
|
|
||||||
MPT_COMPILER_NOALLOCAH=1
|
MPT_COMPILER_NOALLOCAH=1
|
||||||
|
|
||||||
|
NO_SHARED_LINKER_FLAG=1
|
||||||
|
|
||||||
|
ENABLE_DXE=1
|
||||||
|
|
||||||
ifeq ($(OPTIMIZE_LTO),1)
|
ifeq ($(OPTIMIZE_LTO),1)
|
||||||
CXXFLAGS += -flto=auto -Wno-attributes
|
CXXFLAGS += -flto=auto -Wno-attributes
|
||||||
CFLAGS += -flto=auto -Wno-attributes
|
CFLAGS += -flto=auto -Wno-attributes
|
||||||
|
|
|
@ -19,6 +19,8 @@ EMSCRIPTEN_PORTS?=0
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX)
|
CXXFLAGS_STDCXX = -std=$(STDCXX)
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20
|
CXXFLAGS_STDCXX = -std=c++20
|
||||||
else
|
else
|
||||||
|
@ -26,6 +28,10 @@ CXXFLAGS_STDCXX = -std=c++17
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC)
|
CFLAGS_STDC = -std=$(STDC)
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17
|
CFLAGS_STDC = -std=c17
|
||||||
else
|
else
|
||||||
|
@ -48,9 +54,15 @@ LDFLAGS += -pthread
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(EMSCRIPTEN_PORTS),1)
|
ifeq ($(EMSCRIPTEN_PORTS),1)
|
||||||
|
ifeq ($(ANCIENT),1)
|
||||||
CXXFLAGS += -s USE_ZLIB=1 -sUSE_MPG123=1 -sUSE_OGG=1 -sUSE_VORBIS=1 -DMPT_WITH_ZLIB -DMPT_WITH_MPG123 -DMPT_WITH_VORBIS -DMPT_WITH_VORBISFILE -DMPT_WITH_OGG
|
CXXFLAGS += -s USE_ZLIB=1 -sUSE_MPG123=1 -sUSE_OGG=1 -sUSE_VORBIS=1 -DMPT_WITH_ZLIB -DMPT_WITH_MPG123 -DMPT_WITH_VORBIS -DMPT_WITH_VORBISFILE -DMPT_WITH_OGG
|
||||||
CFLAGS += -s USE_ZLIB=1 -sUSE_MPG123=1 -sUSE_OGG=1 -sUSE_VORBIS=1 -DMPT_WITH_ZLIB -DMPT_WITH_MPG123 -DMPT_WITH_VORBIS -DMPT_WITH_VORBISFILE -DMPT_WITH_OGG
|
CFLAGS += -s USE_ZLIB=1 -sUSE_MPG123=1 -sUSE_OGG=1 -sUSE_VORBIS=1 -DMPT_WITH_ZLIB -DMPT_WITH_MPG123 -DMPT_WITH_VORBIS -DMPT_WITH_VORBISFILE -DMPT_WITH_OGG
|
||||||
LDFLAGS += -s USE_ZLIB=1 -sUSE_MPG123=1 -sUSE_OGG=1 -sUSE_VORBIS=1
|
LDFLAGS += -s USE_ZLIB=1 -sUSE_MPG123=1 -sUSE_OGG=1 -sUSE_VORBIS=1
|
||||||
|
else
|
||||||
|
CXXFLAGS += --use-port=zlib --use-port=mpg123 --use-port=vorbis --use-port=ogg -DMPT_WITH_ZLIB -DMPT_WITH_MPG123 -DMPT_WITH_VORBIS -DMPT_WITH_VORBISFILE -DMPT_WITH_OGG
|
||||||
|
CFLAGS += --use-port=zlib --use-port=mpg123 --use-port=vorbis --use-port=ogg -DMPT_WITH_ZLIB -DMPT_WITH_MPG123 -DMPT_WITH_VORBIS -DMPT_WITH_VORBISFILE -DMPT_WITH_OGG
|
||||||
|
LDFLAGS += --use-port=zlib --use-port=mpg123 --use-port=vorbis --use-port=ogg
|
||||||
|
endif
|
||||||
NO_MINIZ=1
|
NO_MINIZ=1
|
||||||
NO_MINIMP3=1
|
NO_MINIMP3=1
|
||||||
NO_STBVORBIS=1
|
NO_STBVORBIS=1
|
||||||
|
@ -70,15 +82,9 @@ CXXFLAGS += -flto
|
||||||
CFLAGS += -flto
|
CFLAGS += -flto
|
||||||
LDFLAGS += -flto
|
LDFLAGS += -flto
|
||||||
|
|
||||||
# Work-around <https://github.com/emscripten-core/emscripten/issues/20810>.
|
|
||||||
# The warning with emscripten 3.1.50 sounds very dangerous,
|
|
||||||
# and since it is apparently caused by removing whitespace,
|
|
||||||
# additional whitespace is a small price to pay for correctness.
|
|
||||||
LDFLAGS += -g1
|
|
||||||
|
|
||||||
ifeq ($(EMSCRIPTEN_TARGET),default)
|
ifeq ($(EMSCRIPTEN_TARGET),default)
|
||||||
# emits whatever is emscripten's default, currently (1.38.8) this is the same as "wasm" below.
|
# emits whatever is emscripten's default, currently (13.1.51) this is the same as "wasm" below.
|
||||||
CPPFLAGS += -DMPT_BUILD_WASM
|
CPPFLAGS +=
|
||||||
CXXFLAGS +=
|
CXXFLAGS +=
|
||||||
CFLAGS +=
|
CFLAGS +=
|
||||||
LDFLAGS +=
|
LDFLAGS +=
|
||||||
|
@ -87,10 +93,10 @@ LDFLAGS += -s ALLOW_MEMORY_GROWTH=1
|
||||||
|
|
||||||
else ifeq ($(EMSCRIPTEN_TARGET),all)
|
else ifeq ($(EMSCRIPTEN_TARGET),all)
|
||||||
# emits native wasm AND javascript with full wasm optimizations.
|
# emits native wasm AND javascript with full wasm optimizations.
|
||||||
CPPFLAGS += -DMPT_BUILD_WASM
|
CPPFLAGS +=
|
||||||
CXXFLAGS +=
|
CXXFLAGS +=
|
||||||
CFLAGS +=
|
CFLAGS +=
|
||||||
LDFLAGS += -s WASM=2 -s LEGACY_VM_SUPPORT=1 -Wno-transpile
|
LDFLAGS += -s WASM=2 -s LEGACY_VM_SUPPORT=1
|
||||||
|
|
||||||
# work-around <https://github.com/emscripten-core/emscripten/issues/17897>.
|
# work-around <https://github.com/emscripten-core/emscripten/issues/17897>.
|
||||||
CXXFLAGS += -fno-inline-functions
|
CXXFLAGS += -fno-inline-functions
|
||||||
|
@ -101,7 +107,7 @@ LDFLAGS += -s ALLOW_MEMORY_GROWTH=1
|
||||||
|
|
||||||
else ifeq ($(EMSCRIPTEN_TARGET),audioworkletprocessor)
|
else ifeq ($(EMSCRIPTEN_TARGET),audioworkletprocessor)
|
||||||
# emits an es6 module in a single file suitable for use in an AudioWorkletProcessor
|
# emits an es6 module in a single file suitable for use in an AudioWorkletProcessor
|
||||||
CPPFLAGS += -DMPT_BUILD_WASM -DMPT_BUILD_AUDIOWORKLETPROCESSOR
|
CPPFLAGS += -DMPT_BUILD_AUDIOWORKLETPROCESSOR
|
||||||
CXXFLAGS +=
|
CXXFLAGS +=
|
||||||
CFLAGS +=
|
CFLAGS +=
|
||||||
LDFLAGS += -s WASM=1 -s WASM_ASYNC_COMPILATION=0 -s MODULARIZE=1 -s EXPORT_ES6=1 -s SINGLE_FILE=1
|
LDFLAGS += -s WASM=1 -s WASM_ASYNC_COMPILATION=0 -s MODULARIZE=1 -s EXPORT_ES6=1 -s SINGLE_FILE=1
|
||||||
|
@ -110,7 +116,7 @@ LDFLAGS += -s ALLOW_MEMORY_GROWTH=1
|
||||||
|
|
||||||
else ifeq ($(EMSCRIPTEN_TARGET),wasm)
|
else ifeq ($(EMSCRIPTEN_TARGET),wasm)
|
||||||
# emits native wasm.
|
# emits native wasm.
|
||||||
CPPFLAGS += -DMPT_BUILD_WASM
|
CPPFLAGS +=
|
||||||
CXXFLAGS +=
|
CXXFLAGS +=
|
||||||
CFLAGS +=
|
CFLAGS +=
|
||||||
LDFLAGS += -s WASM=1
|
LDFLAGS += -s WASM=1
|
||||||
|
@ -119,10 +125,10 @@ LDFLAGS += -s ALLOW_MEMORY_GROWTH=1
|
||||||
|
|
||||||
else ifeq ($(EMSCRIPTEN_TARGET),js)
|
else ifeq ($(EMSCRIPTEN_TARGET),js)
|
||||||
# emits only plain javascript with plain javascript focused optimizations.
|
# emits only plain javascript with plain javascript focused optimizations.
|
||||||
CPPFLAGS += -DMPT_BUILD_ASMJS
|
CPPFLAGS +=
|
||||||
CXXFLAGS +=
|
CXXFLAGS +=
|
||||||
CFLAGS +=
|
CFLAGS +=
|
||||||
LDFLAGS += -s WASM=0 -s LEGACY_VM_SUPPORT=1 -Wno-transpile
|
LDFLAGS += -s WASM=0 -s LEGACY_VM_SUPPORT=1
|
||||||
|
|
||||||
# work-around <https://github.com/emscripten-core/emscripten/issues/17897>.
|
# work-around <https://github.com/emscripten-core/emscripten/issues/17897>.
|
||||||
CXXFLAGS += -fno-inline-functions
|
CXXFLAGS += -fno-inline-functions
|
||||||
|
@ -138,6 +144,8 @@ CFLAGS += -s DISABLE_EXCEPTION_CATCHING=0 -fno-strict-aliasing
|
||||||
LDFLAGS += -s DISABLE_EXCEPTION_CATCHING=0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s ERROR_ON_MISSING_LIBRARIES=1 -s EXPORT_NAME="'libopenmpt'"
|
LDFLAGS += -s DISABLE_EXCEPTION_CATCHING=0 -s ERROR_ON_UNDEFINED_SYMBOLS=1 -s ERROR_ON_MISSING_LIBRARIES=1 -s EXPORT_NAME="'libopenmpt'"
|
||||||
SO_LDFLAGS += -s EXPORTED_FUNCTIONS="['_malloc','_free']"
|
SO_LDFLAGS += -s EXPORTED_FUNCTIONS="['_malloc','_free']"
|
||||||
|
|
||||||
|
NO_NO_UNDEFINED_LINKER_FLAG=1
|
||||||
|
|
||||||
include build/make/warnings-clang.mk
|
include build/make/warnings-clang.mk
|
||||||
|
|
||||||
REQUIRES_RUNPREFIX=1
|
REQUIRES_RUNPREFIX=1
|
||||||
|
@ -145,7 +153,7 @@ REQUIRES_RUNPREFIX=1
|
||||||
EXESUFFIX=.js
|
EXESUFFIX=.js
|
||||||
SOSUFFIX=.js
|
SOSUFFIX=.js
|
||||||
RUNPREFIX=node
|
RUNPREFIX=node
|
||||||
TEST_LDFLAGS= --pre-js build/make/test-pre.js -lnodefs.js
|
TEST_LDFLAGS= -lnodefs.js
|
||||||
|
|
||||||
ifeq ($(EMSCRIPTEN_THREADS),1)
|
ifeq ($(EMSCRIPTEN_THREADS),1)
|
||||||
RUNPREFIX+=--experimental-wasm-threads --experimental-wasm-bulk-memory
|
RUNPREFIX+=--experimental-wasm-threads --experimental-wasm-bulk-memory
|
||||||
|
|
|
@ -14,6 +14,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
||||||
else
|
else
|
||||||
|
@ -21,6 +23,10 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti -pthread
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC) -pthread
|
CFLAGS_STDC = -std=$(STDC) -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23 -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17 -pthread
|
CFLAGS_STDC = -std=c17 -pthread
|
||||||
else
|
else
|
||||||
|
|
|
@ -14,6 +14,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti -pthread
|
||||||
else
|
else
|
||||||
|
@ -21,6 +23,10 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti -pthread
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC) -pthread
|
CFLAGS_STDC = -std=$(STDC) -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23 -pthread
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18 -pthread
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17 -pthread
|
CFLAGS_STDC = -std=c17 -pthread
|
||||||
else
|
else
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
|
|
||||||
|
NO_NO_UNDEFINED_LINKER_FLAG=1
|
||||||
NO_PULSEAUDIO?=1
|
NO_PULSEAUDIO?=1
|
||||||
include build/make/config-clang.mk
|
include build/make/config-clang.mk
|
||||||
# Mac OS X overrides
|
# Mac OS X overrides
|
||||||
|
|
|
@ -38,6 +38,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=c++23 -fexceptions -frtti
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=c++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti
|
CXXFLAGS_STDCXX = -std=c++20 -fexceptions -frtti
|
||||||
else
|
else
|
||||||
|
@ -45,6 +47,10 @@ CXXFLAGS_STDCXX = -std=c++17 -fexceptions -frtti
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC)
|
CFLAGS_STDC = -std=$(STDC)
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=c23
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=c18
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=c17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=c17
|
CFLAGS_STDC = -std=c17
|
||||||
else
|
else
|
||||||
|
@ -119,6 +125,8 @@ else
|
||||||
$(error unknown WINDOWS_VERSION)
|
$(error unknown WINDOWS_VERSION)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
MPT_COMPILER_NOALLOCAH=1
|
||||||
|
|
||||||
ifneq ($(MINGW_COMPILER),clang)
|
ifneq ($(MINGW_COMPILER),clang)
|
||||||
# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>.
|
# See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115049>.
|
||||||
MPT_COMPILER_NOIPARA=1
|
MPT_COMPILER_NOIPARA=1
|
||||||
|
@ -134,22 +142,34 @@ EXESUFFIX=.exe
|
||||||
SOSUFFIX=.dll
|
SOSUFFIX=.dll
|
||||||
SOSUFFIXWINDOWS=1
|
SOSUFFIXWINDOWS=1
|
||||||
|
|
||||||
|
ALLOW_LGPL=0
|
||||||
|
|
||||||
DYNLINK=0
|
DYNLINK=0
|
||||||
SHARED_LIB=1
|
SHARED_LIB=1
|
||||||
STATIC_LIB=0
|
STATIC_LIB=0
|
||||||
SHARED_SONAME=0
|
SHARED_SONAME=0
|
||||||
|
|
||||||
|
ENABLE_DLL=1
|
||||||
|
|
||||||
ifeq ($(HOST_FLAVOUR),MSYS2)
|
ifeq ($(HOST_FLAVOUR),MSYS2)
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
IS_CROSS=1
|
IS_CROSS=1
|
||||||
|
|
||||||
|
ifeq ($(ALLOW_LGPL),1)
|
||||||
|
LOCAL_ZLIB=1
|
||||||
|
LOCAL_MPG123=1
|
||||||
|
LOCAL_OGG=1
|
||||||
|
LOCAL_VORBIS=1
|
||||||
|
else
|
||||||
NO_ZLIB=1
|
NO_ZLIB=1
|
||||||
NO_MPG123=1
|
NO_MPG123=1
|
||||||
NO_OGG=1
|
NO_OGG=1
|
||||||
NO_VORBIS=1
|
NO_VORBIS=1
|
||||||
NO_VORBISFILE=1
|
NO_VORBISFILE=1
|
||||||
|
endif
|
||||||
|
|
||||||
NO_PORTAUDIO=1
|
NO_PORTAUDIO=1
|
||||||
NO_PORTAUDIOCPP=1
|
NO_PORTAUDIOCPP=1
|
||||||
NO_PULSEAUDIO=1
|
NO_PULSEAUDIO=1
|
||||||
|
|
|
@ -14,6 +14,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=gnu++23 -fexceptions -frtti
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=gnu++20 -fexceptions -frtti
|
CXXFLAGS_STDCXX = -std=gnu++20 -fexceptions -frtti
|
||||||
else
|
else
|
||||||
|
@ -21,6 +23,10 @@ CXXFLAGS_STDCXX = -std=gnu++17 -fexceptions -frtti
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC)
|
CFLAGS_STDC = -std=$(STDC)
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=gnu23
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=gnu18
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=gnu17
|
CFLAGS_STDC = -std=gnu17
|
||||||
else
|
else
|
||||||
|
@ -68,6 +74,8 @@ CXXFLAGS += -ffunction-sections -fdata-sections
|
||||||
CFLAGS += -ffunction-sections -fdata-sections
|
CFLAGS += -ffunction-sections -fdata-sections
|
||||||
LDFLAGS += -Wl,--gc-sections
|
LDFLAGS += -Wl,--gc-sections
|
||||||
|
|
||||||
|
MPT_COMPILER_NOALLOCAH=1
|
||||||
|
|
||||||
CXXFLAGS += -march=i586 -m80387 -mtune=pentium
|
CXXFLAGS += -march=i586 -m80387 -mtune=pentium
|
||||||
CFLAGS += -march=i586 -m80387 -mtune=pentium
|
CFLAGS += -march=i586 -m80387 -mtune=pentium
|
||||||
|
|
||||||
|
@ -96,11 +104,19 @@ XMP_OPENMPT=1
|
||||||
|
|
||||||
IS_CROSS=1
|
IS_CROSS=1
|
||||||
|
|
||||||
|
ifeq ($(ALLOW_LGPL),1)
|
||||||
|
LOCAL_ZLIB=1
|
||||||
|
LOCAL_MPG123=1
|
||||||
|
LOCAL_OGG=1
|
||||||
|
LOCAL_VORBIS=1
|
||||||
|
else
|
||||||
NO_ZLIB=1
|
NO_ZLIB=1
|
||||||
NO_MPG123=1
|
NO_MPG123=1
|
||||||
NO_OGG=1
|
NO_OGG=1
|
||||||
NO_VORBIS=1
|
NO_VORBIS=1
|
||||||
NO_VORBISFILE=1
|
NO_VORBISFILE=1
|
||||||
|
endif
|
||||||
|
|
||||||
NO_PORTAUDIO=1
|
NO_PORTAUDIO=1
|
||||||
NO_PORTAUDIOCPP=1
|
NO_PORTAUDIOCPP=1
|
||||||
NO_PULSEAUDIO=1
|
NO_PULSEAUDIO=1
|
||||||
|
|
|
@ -14,6 +14,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(STDCXX),)
|
ifneq ($(STDCXX),)
|
||||||
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti
|
CXXFLAGS_STDCXX = -std=$(STDCXX) -fexceptions -frtti
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++23 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++23' ; fi ), c++23)
|
||||||
|
CXXFLAGS_STDCXX = -std=gnu++23 -fexceptions -frtti
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
else ifeq ($(shell printf '\n' > bin/empty.cpp ; if $(CXX) -std=gnu++20 -c bin/empty.cpp -o bin/empty.out > /dev/null 2>&1 ; then echo 'c++20' ; fi ), c++20)
|
||||||
CXXFLAGS_STDCXX = -std=gnu++20 -fexceptions -frtti
|
CXXFLAGS_STDCXX = -std=gnu++20 -fexceptions -frtti
|
||||||
else
|
else
|
||||||
|
@ -21,6 +23,10 @@ CXXFLAGS_STDCXX = -std=gnu++17 -fexceptions -frtti
|
||||||
endif
|
endif
|
||||||
ifneq ($(STDC),)
|
ifneq ($(STDC),)
|
||||||
CFLAGS_STDC = -std=$(STDC)
|
CFLAGS_STDC = -std=$(STDC)
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu23 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c23' ; fi ), c23)
|
||||||
|
CFLAGS_STDC = -std=gnu23
|
||||||
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu18 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c18' ; fi ), c18)
|
||||||
|
CFLAGS_STDC = -std=gnu18
|
||||||
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
else ifeq ($(shell printf '\n' > bin/empty.c ; if $(CC) -std=gnu17 -c bin/empty.c -o bin/empty.out > /dev/null 2>&1 ; then echo 'c17' ; fi ), c17)
|
||||||
CFLAGS_STDC = -std=gnu17
|
CFLAGS_STDC = -std=gnu17
|
||||||
else
|
else
|
||||||
|
@ -68,6 +74,8 @@ CXXFLAGS += -ffunction-sections -fdata-sections
|
||||||
CFLAGS += -ffunction-sections -fdata-sections
|
CFLAGS += -ffunction-sections -fdata-sections
|
||||||
LDFLAGS += -Wl,--gc-sections
|
LDFLAGS += -Wl,--gc-sections
|
||||||
|
|
||||||
|
MPT_COMPILER_NOALLOCAH=1
|
||||||
|
|
||||||
CXXFLAGS += -march=i386 -m80387 -mtune=i486
|
CXXFLAGS += -march=i386 -m80387 -mtune=i486
|
||||||
CFLAGS += -march=i386 -m80387 -mtune=i486
|
CFLAGS += -march=i386 -m80387 -mtune=i486
|
||||||
|
|
||||||
|
@ -97,11 +105,19 @@ XMP_OPENMPT=0
|
||||||
|
|
||||||
IS_CROSS=1
|
IS_CROSS=1
|
||||||
|
|
||||||
|
ifeq ($(ALLOW_LGPL),1)
|
||||||
|
LOCAL_ZLIB=1
|
||||||
|
LOCAL_MPG123=1
|
||||||
|
LOCAL_OGG=1
|
||||||
|
LOCAL_VORBIS=1
|
||||||
|
else
|
||||||
NO_ZLIB=1
|
NO_ZLIB=1
|
||||||
NO_MPG123=1
|
NO_MPG123=1
|
||||||
NO_OGG=1
|
NO_OGG=1
|
||||||
NO_VORBIS=1
|
NO_VORBIS=1
|
||||||
NO_VORBISFILE=1
|
NO_VORBISFILE=1
|
||||||
|
endif
|
||||||
|
|
||||||
NO_PORTAUDIO=1
|
NO_PORTAUDIO=1
|
||||||
NO_PORTAUDIOCPP=1
|
NO_PORTAUDIOCPP=1
|
||||||
NO_PULSEAUDIO=1
|
NO_PULSEAUDIO=1
|
||||||
|
|
|
@ -12,7 +12,11 @@ ifeq ($(origin AR),default)
|
||||||
AR = ar
|
AR = ar
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
#CXXFLAGS_STDCXX = -std=c++23
|
||||||
|
#CXXFLAGS_STDCXX = -std=c++20
|
||||||
CXXFLAGS_STDCXX = -std=c++17
|
CXXFLAGS_STDCXX = -std=c++17
|
||||||
|
#CFLAGS_STDC = -std=c23
|
||||||
|
#CFLAGS_STDC = -std=c18
|
||||||
CFLAGS_STDC = -std=c17
|
CFLAGS_STDC = -std=c17
|
||||||
CXXFLAGS += $(CXXFLAGS_STDCXX)
|
CXXFLAGS += $(CXXFLAGS_STDCXX)
|
||||||
CFLAGS += $(CFLAGS_STDC)
|
CFLAGS += $(CFLAGS_STDC)
|
||||||
|
|
|
@ -12,7 +12,12 @@ ifeq ($(origin AR),default)
|
||||||
AR = ar
|
AR = ar
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
#CXXFLAGS_STDCXX = -std=c++23
|
||||||
|
#CXXFLAGS_STDCXX = -std=c++20
|
||||||
CXXFLAGS_STDCXX = -std=c++17
|
CXXFLAGS_STDCXX = -std=c++17
|
||||||
|
#CFLAGS_STDC = -std=c23
|
||||||
|
#CFLAGS_STDC = -std=c18
|
||||||
|
#CFLAGS_STDC = -std=c17
|
||||||
CFLAGS_STDC = -std=c11
|
CFLAGS_STDC = -std=c11
|
||||||
CXXFLAGS += $(CXXFLAGS_STDCXX)
|
CXXFLAGS += $(CXXFLAGS_STDCXX)
|
||||||
CFLAGS += $(CFLAGS_STDC)
|
CFLAGS += $(CFLAGS_STDC)
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
|
|
||||||
var Module = {
|
|
||||||
'preInit': function(text) {
|
|
||||||
FS.mkdir('/test');
|
|
||||||
FS.mount(NODEFS, {'root': '../test/'}, '/test');
|
|
||||||
FS.mkdir('/libopenmpt');
|
|
||||||
FS.mount(NODEFS, {'root': '../libopenmpt/'}, '/libopenmpt');
|
|
||||||
}
|
|
||||||
};
|
|
|
@ -2,7 +2,7 @@
|
||||||
CXXFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wdouble-promotion -Wfloat-conversion -Wmissing-prototypes -Wshift-count-negative -Wshift-count-overflow -Wshift-op-parentheses -Wshift-overflow -Wshift-sign-overflow -Wundef
|
CXXFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wdouble-promotion -Wfloat-conversion -Wmissing-prototypes -Wshift-count-negative -Wshift-count-overflow -Wshift-op-parentheses -Wshift-overflow -Wshift-sign-overflow -Wundef
|
||||||
CFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wdouble-promotion -Wfloat-conversion -Wmissing-prototypes -Wshift-count-negative -Wshift-count-overflow -Wshift-op-parentheses -Wshift-overflow -Wshift-sign-overflow -Wundef
|
CFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wdouble-promotion -Wfloat-conversion -Wmissing-prototypes -Wshift-count-negative -Wshift-count-overflow -Wshift-op-parentheses -Wshift-overflow -Wshift-sign-overflow -Wundef
|
||||||
|
|
||||||
CXXFLAGS_WARNINGS += -Wdeprecated -Wextra-semi -Wglobal-constructors -Wimplicit-fallthrough -Wmissing-declarations -Wnon-virtual-dtor -Wreserved-id-macro
|
CXXFLAGS_WARNINGS += -Wdeprecated -Wexit-time-destructors -Wextra-semi -Wglobal-constructors -Wimplicit-fallthrough -Wmissing-declarations -Wnon-virtual-dtor -Wreserved-id-macro
|
||||||
CFLAGS_WARNINGS +=
|
CFLAGS_WARNINGS +=
|
||||||
|
|
||||||
ifneq ($(ANCIENT),1)
|
ifneq ($(ANCIENT),1)
|
||||||
|
@ -15,10 +15,14 @@ endif
|
||||||
#CXXFLAGS_WARNINGS += -Wconversion
|
#CXXFLAGS_WARNINGS += -Wconversion
|
||||||
#CXXFLAGS_WARNINGS += -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-c++98-c++11-c++14-compat -Wno-padded -Wno-weak-vtables -Wno-sign-conversion -Wno-shadow-field-in-constructor -Wno-conversion -Wno-switch-enum -Wno-old-style-cast
|
#CXXFLAGS_WARNINGS += -Weverything -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-c++98-c++11-c++14-compat -Wno-padded -Wno-weak-vtables -Wno-sign-conversion -Wno-shadow-field-in-constructor -Wno-conversion -Wno-switch-enum -Wno-old-style-cast
|
||||||
|
|
||||||
|
ifneq ($(NO_NO_UNDEFINED_LINKER_FLAG),1)
|
||||||
|
LDFLAGS_WARNINGS += -Wl,--no-undefined
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(MODERN),1)
|
ifeq ($(MODERN),1)
|
||||||
CXXFLAGS_WARNINGS +=
|
CXXFLAGS_WARNINGS +=
|
||||||
CFLAGS_WARNINGS +=
|
CFLAGS_WARNINGS +=
|
||||||
LDFLAGS_WARNINGS += -Wl,-no-undefined
|
LDFLAGS_WARNINGS +=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CFLAGS_SILENT += -Wno-\#warnings
|
CFLAGS_SILENT += -Wno-\#warnings
|
||||||
|
|
|
@ -4,11 +4,18 @@ CFLAGS_WARNINGS += -Wcast-align -Wcast-qual -Wdouble-promotion -Wfloat-convers
|
||||||
|
|
||||||
CXXFLAGS_WARNINGS += -Wno-psabi
|
CXXFLAGS_WARNINGS += -Wno-psabi
|
||||||
|
|
||||||
|
ifneq ($(NO_NO_UNDEFINED_LINKER_FLAG),1)
|
||||||
|
LDFLAGS_WARNINGS += -Wl,--no-undefined
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(MODERN),1)
|
ifeq ($(MODERN),1)
|
||||||
|
# GCC >= 12
|
||||||
|
# -Wconversion is way too noisy for earlier GCC versions
|
||||||
CFLAGS_WARNINGS += -Wframe-larger-than=4000
|
CFLAGS_WARNINGS += -Wframe-larger-than=4000
|
||||||
#CXXFLAGS_WARNINGS += -Wshadow -Wswitch-enum
|
#CXXFLAGS_WARNINGS += -Wshadow -Wswitch-enum
|
||||||
|
CXXFLAGS_WARNINGS += -Wconversion
|
||||||
# gold
|
# gold
|
||||||
LDFLAGS_WARNINGS += -Wl,-no-undefined -Wl,--detect-odr-violations
|
LDFLAGS_WARNINGS += -Wl,--detect-odr-violations
|
||||||
# GCC 8
|
# GCC 8
|
||||||
CXXFLAGS_WARNINGS += -Wcast-align=strict
|
CXXFLAGS_WARNINGS += -Wcast-align=strict
|
||||||
CFLAGS_WARNINGS += -Wcast-align=strict
|
CFLAGS_WARNINGS += -Wcast-align=strict
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
#define OPENMPT_VERSION_SVNVERSION "22826"
|
#define OPENMPT_VERSION_SVNVERSION "23245"
|
||||||
#define OPENMPT_VERSION_REVISION 22826
|
#define OPENMPT_VERSION_REVISION 23245
|
||||||
#define OPENMPT_VERSION_DIRTY 0
|
#define OPENMPT_VERSION_DIRTY 0
|
||||||
#define OPENMPT_VERSION_MIXEDREVISIONS 0
|
#define OPENMPT_VERSION_MIXEDREVISIONS 0
|
||||||
#define OPENMPT_VERSION_URL "https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.7.13"
|
#define OPENMPT_VERSION_URL "https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.8.0"
|
||||||
#define OPENMPT_VERSION_DATE "2025-01-06T13:49:43.586768Z"
|
#define OPENMPT_VERSION_DATE "2025-05-31T13:56:14.548439Z"
|
||||||
#define OPENMPT_VERSION_IS_PACKAGE 1
|
#define OPENMPT_VERSION_IS_PACKAGE 1
|
||||||
|
|
||||||
|
|
|
@ -20,12 +20,14 @@
|
||||||
1553F71F02BB89D19FB57D5F /* WavesReverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E0A11A78A94C41905798FE7 /* WavesReverb.cpp */; };
|
1553F71F02BB89D19FB57D5F /* WavesReverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E0A11A78A94C41905798FE7 /* WavesReverb.cpp */; };
|
||||||
168C3C51AED92203DD202291 /* Message.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */; };
|
168C3C51AED92203DD202291 /* Message.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */; };
|
||||||
18C62C9BF7E346CDD3ECA2DB /* SampleIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78CAB4630B587E55743122A3 /* SampleIO.cpp */; };
|
18C62C9BF7E346CDD3ECA2DB /* SampleIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78CAB4630B587E55743122A3 /* SampleIO.cpp */; };
|
||||||
1CD4D902FBF1F334D7FB4F42 /* mptFileIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13F63AEAA68404DC0F5CA92A /* mptFileIO.cpp */; };
|
19C908D7F8E62309D4EF7F17 /* Load_tcb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73A166DF062F30D16F07D51F /* Load_tcb.cpp */; };
|
||||||
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F52A05ED3A145D015C87E9E /* Profiler.cpp */; };
|
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F52A05ED3A145D015C87E9E /* Profiler.cpp */; };
|
||||||
1E48E6EB2E2E131D1AA19D2B /* Gargle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78BD15B31AA6B1A511CDC3F3 /* Gargle.cpp */; };
|
1E48E6EB2E2E131D1AA19D2B /* Gargle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78BD15B31AA6B1A511CDC3F3 /* Gargle.cpp */; };
|
||||||
1F7082161F13654859681856 /* mptFileType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 074C76BE5EB1E9B010C004FE /* mptFileType.cpp */; };
|
1F7082161F13654859681856 /* mptFileType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 074C76BE5EB1E9B010C004FE /* mptFileType.cpp */; };
|
||||||
|
212E136BD4241D1D254679AB /* MIDIMacroParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C61BC533BA1B0EA53F062373 /* MIDIMacroParser.cpp */; };
|
||||||
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */; };
|
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */; };
|
||||||
281FA911C06C8EC3EEB38F51 /* Sndfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */; };
|
281FA911C06C8EC3EEB38F51 /* Sndfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */; };
|
||||||
|
2AE422F10A013D23E60A9931 /* Load_cba.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EDF8E6598086B04BE95F5499 /* Load_cba.cpp */; };
|
||||||
2B1F4A030A3C6435E645C043 /* Load_mo3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */; };
|
2B1F4A030A3C6435E645C043 /* Load_mo3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */; };
|
||||||
30BE965074D2678268A3EC90 /* mptTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B176D8582299794AD8602698 /* mptTime.cpp */; };
|
30BE965074D2678268A3EC90 /* mptTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B176D8582299794AD8602698 /* mptTime.cpp */; };
|
||||||
30C4FED93067E20B6ABC9519 /* ModChannel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5FDB15C1B74088B3694EA401 /* ModChannel.cpp */; };
|
30C4FED93067E20B6ABC9519 /* ModChannel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5FDB15C1B74088B3694EA401 /* ModChannel.cpp */; };
|
||||||
|
@ -38,6 +40,7 @@
|
||||||
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */; };
|
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */; };
|
||||||
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2052C727B2E091191BB93567 /* Load_mdl.cpp */; };
|
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2052C727B2E091191BB93567 /* Load_mdl.cpp */; };
|
||||||
3C92F25FD4DFD8110326D89F /* Fastmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1054EEE754A3945996CACD27 /* Fastmix.cpp */; };
|
3C92F25FD4DFD8110326D89F /* Fastmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1054EEE754A3945996CACD27 /* Fastmix.cpp */; };
|
||||||
|
3E00C2FF58CD31B15C9DC93F /* Load_pt36.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE474F872B6F5DF92D024DC7 /* Load_pt36.cpp */; };
|
||||||
3EF604A50D1958579427AAE5 /* DSP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2066CCD3D47C03F10A20B0D /* DSP.cpp */; };
|
3EF604A50D1958579427AAE5 /* DSP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2066CCD3D47C03F10A20B0D /* DSP.cpp */; };
|
||||||
3F8606FDF27C10AF439E6D3D /* SampleFormatMP3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4737ECA53B373617C0224AE5 /* SampleFormatMP3.cpp */; };
|
3F8606FDF27C10AF439E6D3D /* SampleFormatMP3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4737ECA53B373617C0224AE5 /* SampleFormatMP3.cpp */; };
|
||||||
40F236CF2E59C981CB53BD0F /* I3DL2Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA3E0E57B6C8C0C931AD8C97 /* I3DL2Reverb.cpp */; };
|
40F236CF2E59C981CB53BD0F /* I3DL2Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA3E0E57B6C8C0C931AD8C97 /* I3DL2Reverb.cpp */; };
|
||||||
|
@ -54,8 +57,10 @@
|
||||||
56DD54C135FA6EF31203CB01 /* Load_mtm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0990B3299C1E7D1B04F72169 /* Load_mtm.cpp */; };
|
56DD54C135FA6EF31203CB01 /* Load_mtm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0990B3299C1E7D1B04F72169 /* Load_mtm.cpp */; };
|
||||||
574F1261366C2C93127588A1 /* load_j2b.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A33106C935BED0BB9E977509 /* load_j2b.cpp */; };
|
574F1261366C2C93127588A1 /* load_j2b.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A33106C935BED0BB9E977509 /* load_j2b.cpp */; };
|
||||||
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB46E6335DD4B025C6AD5473 /* Load_667.cpp */; };
|
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB46E6335DD4B025C6AD5473 /* Load_667.cpp */; };
|
||||||
|
609638333FB352651BBCAE73 /* Load_ftm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0C4FEA7B9EDDB46D07B658BB /* Load_ftm.cpp */; };
|
||||||
63B0011DD79878CFF9E6275D /* Load_mus_km.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */; };
|
63B0011DD79878CFF9E6275D /* Load_mus_km.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */; };
|
||||||
6600F8E10024EE13B04ACF21 /* ContainerMMCMP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */; };
|
6600F8E10024EE13B04ACF21 /* ContainerMMCMP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */; };
|
||||||
|
66139DF74530B829213A1437 /* Load_ims.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26B859FFB94623F1221EC83F /* Load_ims.cpp */; };
|
||||||
689E270C1013C2BEB8D8CD4C /* DigiBoosterEcho.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D078EDD4AF1B894663FD8C14 /* DigiBoosterEcho.cpp */; };
|
689E270C1013C2BEB8D8CD4C /* DigiBoosterEcho.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D078EDD4AF1B894663FD8C14 /* DigiBoosterEcho.cpp */; };
|
||||||
69AC6475078D6527DF0BAAB5 /* ParamEq.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C3D549D4EFDB50FAC3292DD /* ParamEq.cpp */; };
|
69AC6475078D6527DF0BAAB5 /* ParamEq.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C3D549D4EFDB50FAC3292DD /* ParamEq.cpp */; };
|
||||||
6A44FDD1AE58CF03A22A5411 /* tuning.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48199D39B93C3E2B6F02EB79 /* tuning.cpp */; };
|
6A44FDD1AE58CF03A22A5411 /* tuning.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48199D39B93C3E2B6F02EB79 /* tuning.cpp */; };
|
||||||
|
@ -68,36 +73,43 @@
|
||||||
7F5CA93E3358C270150AFF7E /* openmpt-vorbis.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = AB169C264570851881A8EA66 /* openmpt-vorbis.lib */; };
|
7F5CA93E3358C270150AFF7E /* openmpt-vorbis.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = AB169C264570851881A8EA66 /* openmpt-vorbis.lib */; };
|
||||||
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62235C27A6720199E8993A67 /* Load_it.cpp */; };
|
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62235C27A6720199E8993A67 /* Load_it.cpp */; };
|
||||||
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */; };
|
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */; };
|
||||||
|
81C26ED360DF89053CE8E513 /* Load_gmc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D668A71B68F6710DD1CF155B /* Load_gmc.cpp */; };
|
||||||
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D14936A73E714519400434E7 /* Load_digi.cpp */; };
|
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D14936A73E714519400434E7 /* Load_digi.cpp */; };
|
||||||
84A9E60B844CC93DBEA17C4B /* MixerLoops.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */; };
|
84A9E60B844CC93DBEA17C4B /* MixerLoops.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */; };
|
||||||
|
84F9B8439FC626F5A396BE83 /* Load_unic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EEAF28B0C1300FD0DA5F0CB /* Load_unic.cpp */; };
|
||||||
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */; };
|
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */; };
|
||||||
8751165421750B86D19AEC94 /* mptStringBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C510221C396A670EB74DF05C /* mptStringBuffer.cpp */; };
|
8751165421750B86D19AEC94 /* mptStringBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C510221C396A670EB74DF05C /* mptStringBuffer.cpp */; };
|
||||||
|
877C818BA248F03DA61987CB /* Load_puma.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DB68B53DADE99C5DC718993 /* Load_puma.cpp */; };
|
||||||
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */; };
|
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */; };
|
||||||
8D04F5E56C221017482B6C25 /* WAVTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */; };
|
8D04F5E56C221017482B6C25 /* WAVTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */; };
|
||||||
8F84E60E36FA81C0DFBF8C4E /* openmpt-ogg.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5B7F44F63A21E068EF03E336 /* openmpt-ogg.lib */; };
|
8F84E60E36FA81C0DFBF8C4E /* openmpt-ogg.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5B7F44F63A21E068EF03E336 /* openmpt-ogg.lib */; };
|
||||||
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC1456C17EA220B3E77AC501 /* Load_mid.cpp */; };
|
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC1456C17EA220B3E77AC501 /* Load_mid.cpp */; };
|
||||||
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D6A74BCEFF83EAE58D0E2FC /* mptRandom.cpp */; };
|
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D6A74BCEFF83EAE58D0E2FC /* mptRandom.cpp */; };
|
||||||
|
9580A935A565D56791D95F75 /* PlaybackTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EDB72A5D8FA0C64F86C7D89D /* PlaybackTest.cpp */; };
|
||||||
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */; };
|
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */; };
|
||||||
976568F7F2B0B929E0E29F37 /* libopenmpt_ext_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */; };
|
976568F7F2B0B929E0E29F37 /* libopenmpt_ext_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */; };
|
||||||
|
978580C976A29AFB52ABF709 /* MODTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 99E1AAB12C6F74A3954818F1 /* MODTools.cpp */; };
|
||||||
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0735F17599C3BB67029C5FB5 /* Load_stm.cpp */; };
|
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0735F17599C3BB67029C5FB5 /* Load_stm.cpp */; };
|
||||||
97B1A0C5975483F7D1A93705 /* Echo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9C9696EDF3FC09DFA60A252D /* Echo.cpp */; };
|
97B1A0C5975483F7D1A93705 /* Echo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9C9696EDF3FC09DFA60A252D /* Echo.cpp */; };
|
||||||
|
98C2B4F5B38F23A7B75FBB35 /* PlayState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FB77AD1D689FBB8F6A32AB5D /* PlayState.cpp */; };
|
||||||
9F1029ABB9DC985DBDAD2FEB /* ModSample.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A32EC1731056CFE511E9BFB3 /* ModSample.cpp */; };
|
9F1029ABB9DC985DBDAD2FEB /* ModSample.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A32EC1731056CFE511E9BFB3 /* ModSample.cpp */; };
|
||||||
9F2D020A8C9494BC298E884A /* PlugInterface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D89E49F2E528FC64600DC832 /* PlugInterface.cpp */; };
|
9F2D020A8C9494BC298E884A /* PlugInterface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D89E49F2E528FC64600DC832 /* PlugInterface.cpp */; };
|
||||||
9FC1BA253DA2BAD715210065 /* Flanger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3286C74DF54727BF527C058D /* Flanger.cpp */; };
|
9FC1BA253DA2BAD715210065 /* Flanger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3286C74DF54727BF527C058D /* Flanger.cpp */; };
|
||||||
A0E13DD3392E238567752413 /* XMTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C6EC51BC0BD6A8D02E4A35B /* XMTools.cpp */; };
|
A0E13DD3392E238567752413 /* XMTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C6EC51BC0BD6A8D02E4A35B /* XMTools.cpp */; };
|
||||||
A5DAFA6B19C3721D3C1120AB /* WindowedFIR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14715833DAFF4FA549017673 /* WindowedFIR.cpp */; };
|
A5DAFA6B19C3721D3C1120AB /* WindowedFIR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14715833DAFF4FA549017673 /* WindowedFIR.cpp */; };
|
||||||
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37F80675CA85D067335E74B5 /* Load_amf.cpp */; };
|
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37F80675CA85D067335E74B5 /* Load_amf.cpp */; };
|
||||||
|
A88063C9879D7DFB63A6DA09 /* Load_stk.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D12DDB1AFA0A7A318794BF1 /* Load_stk.cpp */; };
|
||||||
A896F1F84677F2AA1DF63838 /* LFOPlugin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */; };
|
A896F1F84677F2AA1DF63838 /* LFOPlugin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */; };
|
||||||
A9C7C28B051312BDF344F8CB /* AudioCriticalSection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3947FF534AFF3F45C06D2D93 /* AudioCriticalSection.cpp */; };
|
A9C7C28B051312BDF344F8CB /* AudioCriticalSection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3947FF534AFF3F45C06D2D93 /* AudioCriticalSection.cpp */; };
|
||||||
A9D47C71514A1823FA0F22B1 /* SoundFilePlayConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F19DB8D9D040544B85225719 /* SoundFilePlayConfig.cpp */; };
|
A9D47C71514A1823FA0F22B1 /* SoundFilePlayConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F19DB8D9D040544B85225719 /* SoundFilePlayConfig.cpp */; };
|
||||||
AB7FFC4D9117037F545C128D /* mod_specifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 274EB9F5814FD0E74896C835 /* mod_specifications.cpp */; };
|
AB7FFC4D9117037F545C128D /* mod_specifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 274EB9F5814FD0E74896C835 /* mod_specifications.cpp */; };
|
||||||
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3A14F450EE2A2B7E23CED85 /* OPL.cpp */; };
|
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3A14F450EE2A2B7E23CED85 /* OPL.cpp */; };
|
||||||
B17E84D14F5F858326DDCB11 /* ContainerPP20.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38019939FAC1F9AB57F6D779 /* ContainerPP20.cpp */; };
|
B17E84D14F5F858326DDCB11 /* ContainerPP20.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38019939FAC1F9AB57F6D779 /* ContainerPP20.cpp */; };
|
||||||
|
B464B3479381CD796F8B2987 /* Load_ice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D727124F69B4DC41D28D808F /* Load_ice.cpp */; };
|
||||||
B5220D6D8345611F0A53B3AD /* AGC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BFC43D151B059087EE5FDB55 /* AGC.cpp */; };
|
B5220D6D8345611F0A53B3AD /* AGC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BFC43D151B059087EE5FDB55 /* AGC.cpp */; };
|
||||||
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */; };
|
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */; };
|
||||||
B5D9190DF9ECEA3FEDBE6F4D /* Sndmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */; };
|
B5D9190DF9ECEA3FEDBE6F4D /* Sndmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */; };
|
||||||
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29DC06EFBC69D0E12542752F /* Load_ams.cpp */; };
|
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29DC06EFBC69D0E12542752F /* Load_ams.cpp */; };
|
||||||
BB65D2D86E5BDC8ABF7E3918 /* mptFileTemporary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF7F8F60F37ED8D27869EDA0 /* mptFileTemporary.cpp */; };
|
|
||||||
BBC2281DFFD5F94FF3A77E5D /* Tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 488AACC5B9AD4DB76F73FB05 /* Tables.cpp */; };
|
BBC2281DFFD5F94FF3A77E5D /* Tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 488AACC5B9AD4DB76F73FB05 /* Tables.cpp */; };
|
||||||
BC15882904B4C65B27E07E69 /* patternContainer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BE9A4117CE11203E8E49251 /* patternContainer.cpp */; };
|
BC15882904B4C65B27E07E69 /* patternContainer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BE9A4117CE11203E8E49251 /* patternContainer.cpp */; };
|
||||||
BCC110A956E505DB070AE6E9 /* DMOUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 664DAA91DAA7EF83588B78D1 /* DMOUtils.cpp */; };
|
BCC110A956E505DB070AE6E9 /* DMOUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 664DAA91DAA7EF83588B78D1 /* DMOUtils.cpp */; };
|
||||||
|
@ -105,14 +117,18 @@
|
||||||
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */; };
|
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */; };
|
||||||
BE9B2A6B02AEFB9DF68080AB /* Snd_fx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */; };
|
BE9B2A6B02AEFB9DF68080AB /* Snd_fx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */; };
|
||||||
C0082C03041BFD35F7ED8243 /* Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B50C144B262EB53DDBF5628B /* Reverb.cpp */; };
|
C0082C03041BFD35F7ED8243 /* Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B50C144B262EB53DDBF5628B /* Reverb.cpp */; };
|
||||||
|
C3D725375C240AE98A6B0B77 /* Load_fc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B6BBD03FFB0A75B13D31AE7F /* Load_fc.cpp */; };
|
||||||
C4FBD3C878F7ECFA5AAA2A08 /* openmpt-mpg123.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = 738151100DDB3A024A139F50 /* openmpt-mpg123.lib */; };
|
C4FBD3C878F7ECFA5AAA2A08 /* openmpt-mpg123.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = 738151100DDB3A024A139F50 /* openmpt-mpg123.lib */; };
|
||||||
C55C8AFDA479A52F8083013D /* UMXTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */; };
|
C55C8AFDA479A52F8083013D /* UMXTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */; };
|
||||||
|
C6B55BA579AB6557CACDC1E5 /* InstrumentSynth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 89879ACD7D86E43F0271F90D /* InstrumentSynth.cpp */; };
|
||||||
C746074BA663217D826C7D8B /* Load_mt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */; };
|
C746074BA663217D826C7D8B /* Load_mt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */; };
|
||||||
C79768571036A68933625E97 /* libopenmpt_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7F22B5FF701A23F1DC1DA43F /* libopenmpt_impl.cpp */; };
|
C79768571036A68933625E97 /* libopenmpt_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7F22B5FF701A23F1DC1DA43F /* libopenmpt_impl.cpp */; };
|
||||||
|
C806B217E2D320C9E6A3B857 /* Load_kris.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 19B6191F86DE27918871175F /* Load_kris.cpp */; };
|
||||||
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36CAA59BC9586F8D323113DB /* Load_dmf.cpp */; };
|
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36CAA59BC9586F8D323113DB /* Load_dmf.cpp */; };
|
||||||
CB31B3AF3F1A2B616167D9EF /* modsmp_ctrl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */; };
|
CB31B3AF3F1A2B616167D9EF /* modsmp_ctrl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */; };
|
||||||
CC12FBA114B239D337DDF1E1 /* Compressor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9334A009842C0DFBF02F8E49 /* Compressor.cpp */; };
|
CC12FBA114B239D337DDF1E1 /* Compressor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9334A009842C0DFBF02F8E49 /* Compressor.cpp */; };
|
||||||
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */; };
|
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */; };
|
||||||
|
CE9155C7ADAE6FF989B7CC07 /* Load_etx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14754CCFA70316C10FDBBB0F /* Load_etx.cpp */; };
|
||||||
CEDA1F2FDEBF4B61CB32D56F /* Chorus.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84A787B7269123A91DB835F7 /* Chorus.cpp */; };
|
CEDA1F2FDEBF4B61CB32D56F /* Chorus.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84A787B7269123A91DB835F7 /* Chorus.cpp */; };
|
||||||
CF000469179F429B3ACAFAA9 /* tuningCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DFE0BC51D0D82A433CDBAA91 /* tuningCollection.cpp */; };
|
CF000469179F429B3ACAFAA9 /* tuningCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DFE0BC51D0D82A433CDBAA91 /* tuningCollection.cpp */; };
|
||||||
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7D070D1F43950491B1972B5F /* Load_symmod.cpp */; };
|
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7D070D1F43950491B1972B5F /* Load_symmod.cpp */; };
|
||||||
|
@ -126,6 +142,7 @@
|
||||||
DEB582A5DE5865D718AD18E5 /* modcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 746376CDCBC8E9BF7DD7050D /* modcommand.cpp */; };
|
DEB582A5DE5865D718AD18E5 /* modcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 746376CDCBC8E9BF7DD7050D /* modcommand.cpp */; };
|
||||||
DEBC9FDC22D0710E16A1F61C /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E2FDF24AF52801665192D64 /* version.cpp */; };
|
DEBC9FDC22D0710E16A1F61C /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E2FDF24AF52801665192D64 /* version.cpp */; };
|
||||||
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B406AC2ED2A06B4E4511902 /* mptPathString.cpp */; };
|
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B406AC2ED2A06B4E4511902 /* mptPathString.cpp */; };
|
||||||
|
E234B24BC151CC7D9D5B288B /* Load_rtm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 079A67139A2831050300D553 /* Load_rtm.cpp */; };
|
||||||
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 778D494BBBDBEEBDFE03278B /* ITTools.cpp */; };
|
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 778D494BBBDBEEBDFE03278B /* ITTools.cpp */; };
|
||||||
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F093E392197082B8A6FAC79 /* Load_med.cpp */; };
|
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F093E392197082B8A6FAC79 /* Load_med.cpp */; };
|
||||||
E79434E3857535955CF37B23 /* SampleFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DD65792BA025D99DFD5AB76B /* SampleFormats.cpp */; };
|
E79434E3857535955CF37B23 /* SampleFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DD65792BA025D99DFD5AB76B /* SampleFormats.cpp */; };
|
||||||
|
@ -198,6 +215,7 @@
|
||||||
02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mus_km.cpp; path = ../../soundlib/Load_mus_km.cpp; sourceTree = "<group>"; };
|
02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mus_km.cpp; path = ../../soundlib/Load_mus_km.cpp; sourceTree = "<group>"; };
|
||||||
03BF85B7480E2B298A3563F7 /* TinyFFT.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TinyFFT.cpp; path = ../../soundlib/TinyFFT.cpp; sourceTree = "<group>"; };
|
03BF85B7480E2B298A3563F7 /* TinyFFT.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TinyFFT.cpp; path = ../../soundlib/TinyFFT.cpp; sourceTree = "<group>"; };
|
||||||
04155894998C17C608286ED4 /* openmpt-mpg123.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "mpg123.xcodeproj"; path = ext/mpg123.xcodeproj; sourceTree = SOURCE_ROOT; };
|
04155894998C17C608286ED4 /* openmpt-mpg123.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "mpg123.xcodeproj"; path = ext/mpg123.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||||
|
042BC5075B9137F90D9F5347 /* PlaybackTest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PlaybackTest.h; path = ../../soundlib/PlaybackTest.h; sourceTree = "<group>"; };
|
||||||
046F30B171973F23732A2EF1 /* numeric.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = numeric.hpp; path = ../../src/mpt/base/numeric.hpp; sourceTree = "<group>"; };
|
046F30B171973F23732A2EF1 /* numeric.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = numeric.hpp; path = ../../src/mpt/base/numeric.hpp; sourceTree = "<group>"; };
|
||||||
04D4FEEB3466CDDD0F740D2B /* EQ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = EQ.cpp; path = ../../sounddsp/EQ.cpp; sourceTree = "<group>"; };
|
04D4FEEB3466CDDD0F740D2B /* EQ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = EQ.cpp; path = ../../sounddsp/EQ.cpp; sourceTree = "<group>"; };
|
||||||
04EAEC77C7AB4CE924E02AB7 /* DMOPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOPlugin.h; path = ../../soundlib/plugins/dmo/DMOPlugin.h; sourceTree = "<group>"; };
|
04EAEC77C7AB4CE924E02AB7 /* DMOPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOPlugin.h; path = ../../soundlib/plugins/dmo/DMOPlugin.h; sourceTree = "<group>"; };
|
||||||
|
@ -206,6 +224,7 @@
|
||||||
073F0DABFB3E571D80296BEB /* SampleFormatSFZ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatSFZ.cpp; path = ../../soundlib/SampleFormatSFZ.cpp; sourceTree = "<group>"; };
|
073F0DABFB3E571D80296BEB /* SampleFormatSFZ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatSFZ.cpp; path = ../../soundlib/SampleFormatSFZ.cpp; sourceTree = "<group>"; };
|
||||||
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileType.cpp; path = ../../common/mptFileType.cpp; sourceTree = "<group>"; };
|
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileType.cpp; path = ../../common/mptFileType.cpp; sourceTree = "<group>"; };
|
||||||
07580841CEBCC33359749681 /* tests_string_utility.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_utility.hpp; path = ../../src/mpt/string/tests/tests_string_utility.hpp; sourceTree = "<group>"; };
|
07580841CEBCC33359749681 /* tests_string_utility.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_utility.hpp; path = ../../src/mpt/string/tests/tests_string_utility.hpp; sourceTree = "<group>"; };
|
||||||
|
079A67139A2831050300D553 /* Load_rtm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_rtm.cpp; path = ../../soundlib/Load_rtm.cpp; sourceTree = "<group>"; };
|
||||||
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_memory.hpp; path = ../../src/mpt/io_read/filedata_memory.hpp; sourceTree = "<group>"; };
|
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_memory.hpp; path = ../../src/mpt/io_read/filedata_memory.hpp; sourceTree = "<group>"; };
|
||||||
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ptm.cpp; path = ../../soundlib/Load_ptm.cpp; sourceTree = "<group>"; };
|
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ptm.cpp; path = ../../soundlib/Load_ptm.cpp; sourceTree = "<group>"; };
|
||||||
09387CD815C32F4A90A7FB18 /* PluginMixBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginMixBuffer.h; path = ../../soundlib/plugins/PluginMixBuffer.h; sourceTree = "<group>"; };
|
09387CD815C32F4A90A7FB18 /* PluginMixBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginMixBuffer.h; path = ../../soundlib/plugins/PluginMixBuffer.h; sourceTree = "<group>"; };
|
||||||
|
@ -214,6 +233,7 @@
|
||||||
09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modsmp_ctrl.cpp; path = ../../soundlib/modsmp_ctrl.cpp; sourceTree = "<group>"; };
|
09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modsmp_ctrl.cpp; path = ../../soundlib/modsmp_ctrl.cpp; sourceTree = "<group>"; };
|
||||||
0A20B0FECCE111702A15EF3E /* ComponentManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ComponentManager.h; path = ../../common/ComponentManager.h; sourceTree = "<group>"; };
|
0A20B0FECCE111702A15EF3E /* ComponentManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ComponentManager.h; path = ../../common/ComponentManager.h; sourceTree = "<group>"; };
|
||||||
0BC4F1DBADAE8DCDA4D5A01B /* ContainerXPK.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerXPK.cpp; path = ../../soundlib/ContainerXPK.cpp; sourceTree = "<group>"; };
|
0BC4F1DBADAE8DCDA4D5A01B /* ContainerXPK.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerXPK.cpp; path = ../../soundlib/ContainerXPK.cpp; sourceTree = "<group>"; };
|
||||||
|
0C4FEA7B9EDDB46D07B658BB /* Load_ftm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ftm.cpp; path = ../../soundlib/Load_ftm.cpp; sourceTree = "<group>"; };
|
||||||
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dtm.cpp; path = ../../soundlib/Load_dtm.cpp; sourceTree = "<group>"; };
|
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dtm.cpp; path = ../../soundlib/Load_dtm.cpp; sourceTree = "<group>"; };
|
||||||
0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mt2.cpp; path = ../../soundlib/Load_mt2.cpp; sourceTree = "<group>"; };
|
0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mt2.cpp; path = ../../soundlib/Load_mt2.cpp; sourceTree = "<group>"; };
|
||||||
0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mo3.cpp; path = ../../soundlib/Load_mo3.cpp; sourceTree = "<group>"; };
|
0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mo3.cpp; path = ../../soundlib/Load_mo3.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -225,9 +245,9 @@
|
||||||
1197459E05968F108A81A3DE /* feature_flags.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = feature_flags.hpp; path = ../../src/mpt/arch/feature_flags.hpp; sourceTree = "<group>"; };
|
1197459E05968F108A81A3DE /* feature_flags.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = feature_flags.hpp; path = ../../src/mpt/arch/feature_flags.hpp; sourceTree = "<group>"; };
|
||||||
124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerMMCMP.cpp; path = ../../soundlib/ContainerMMCMP.cpp; sourceTree = "<group>"; };
|
124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerMMCMP.cpp; path = ../../soundlib/ContainerMMCMP.cpp; sourceTree = "<group>"; };
|
||||||
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseUtils.h; path = ../../common/mptBaseUtils.h; sourceTree = "<group>"; };
|
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseUtils.h; path = ../../common/mptBaseUtils.h; sourceTree = "<group>"; };
|
||||||
13F63AEAA68404DC0F5CA92A /* mptFileIO.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileIO.cpp; path = ../../common/mptFileIO.cpp; sourceTree = "<group>"; };
|
|
||||||
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ComponentManager.cpp; path = ../../common/ComponentManager.cpp; sourceTree = "<group>"; };
|
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ComponentManager.cpp; path = ../../common/ComponentManager.cpp; sourceTree = "<group>"; };
|
||||||
14715833DAFF4FA549017673 /* WindowedFIR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WindowedFIR.cpp; path = ../../soundlib/WindowedFIR.cpp; sourceTree = "<group>"; };
|
14715833DAFF4FA549017673 /* WindowedFIR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WindowedFIR.cpp; path = ../../soundlib/WindowedFIR.cpp; sourceTree = "<group>"; };
|
||||||
|
14754CCFA70316C10FDBBB0F /* Load_etx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_etx.cpp; path = ../../soundlib/Load_etx.cpp; sourceTree = "<group>"; };
|
||||||
159B6F7E099AB8F08E85CDBE /* PluginManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginManager.h; path = ../../soundlib/plugins/PluginManager.h; sourceTree = "<group>"; };
|
159B6F7E099AB8F08E85CDBE /* PluginManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginManager.h; path = ../../soundlib/plugins/PluginManager.h; sourceTree = "<group>"; };
|
||||||
15A918AF09A862218E9376EF /* aligned_array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = aligned_array.hpp; path = ../../src/mpt/base/aligned_array.hpp; sourceTree = "<group>"; };
|
15A918AF09A862218E9376EF /* aligned_array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = aligned_array.hpp; path = ../../src/mpt/base/aligned_array.hpp; sourceTree = "<group>"; };
|
||||||
1679D9615AC87ED39CEFB7A1 /* alloc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = alloc.hpp; path = ../../src/mpt/base/alloc.hpp; sourceTree = "<group>"; };
|
1679D9615AC87ED39CEFB7A1 /* alloc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = alloc.hpp; path = ../../src/mpt/base/alloc.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -235,15 +255,18 @@
|
||||||
178BC3E3DA4C245537810223 /* native_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = native_path.hpp; path = ../../src/mpt/path/native_path.hpp; sourceTree = "<group>"; };
|
178BC3E3DA4C245537810223 /* native_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = native_path.hpp; path = ../../src/mpt/path/native_path.hpp; sourceTree = "<group>"; };
|
||||||
17F58A2FDAB5EAA137EAC86F /* detect_libc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_libc.hpp; path = ../../src/mpt/base/detect_libc.hpp; sourceTree = "<group>"; };
|
17F58A2FDAB5EAA137EAC86F /* detect_libc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_libc.hpp; path = ../../src/mpt/base/detect_libc.hpp; sourceTree = "<group>"; };
|
||||||
18A72A335CF5CFA59F1D0873 /* seed.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = seed.hpp; path = ../../src/mpt/random/seed.hpp; sourceTree = "<group>"; };
|
18A72A335CF5CFA59F1D0873 /* seed.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = seed.hpp; path = ../../src/mpt/random/seed.hpp; sourceTree = "<group>"; };
|
||||||
|
19B6191F86DE27918871175F /* Load_kris.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_kris.cpp; path = ../../soundlib/Load_kris.cpp; sourceTree = "<group>"; };
|
||||||
1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndmix.cpp; path = ../../soundlib/Sndmix.cpp; sourceTree = "<group>"; };
|
1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndmix.cpp; path = ../../soundlib/Sndmix.cpp; sourceTree = "<group>"; };
|
||||||
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RowVisitor.cpp; path = ../../soundlib/RowVisitor.cpp; sourceTree = "<group>"; };
|
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RowVisitor.cpp; path = ../../soundlib/RowVisitor.cpp; sourceTree = "<group>"; };
|
||||||
1A94BBC4BC7E57B6B3A56A04 /* mptStringFormat.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringFormat.h; path = ../../common/mptStringFormat.h; sourceTree = "<group>"; };
|
1A94BBC4BC7E57B6B3A56A04 /* mptStringFormat.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringFormat.h; path = ../../common/mptStringFormat.h; sourceTree = "<group>"; };
|
||||||
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = check_platform.hpp; path = ../../src/mpt/base/check_platform.hpp; sourceTree = "<group>"; };
|
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = check_platform.hpp; path = ../../src/mpt/base/check_platform.hpp; sourceTree = "<group>"; };
|
||||||
1AD54F9F7616A3114970EDDF /* Paula.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Paula.h; path = ../../soundlib/Paula.h; sourceTree = "<group>"; };
|
1AD54F9F7616A3114970EDDF /* Paula.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Paula.h; path = ../../soundlib/Paula.h; sourceTree = "<group>"; };
|
||||||
1B5F95F15FAE3B63A1D57431 /* Tagging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Tagging.cpp; path = ../../soundlib/Tagging.cpp; sourceTree = "<group>"; };
|
1B5F95F15FAE3B63A1D57431 /* Tagging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Tagging.cpp; path = ../../soundlib/Tagging.cpp; sourceTree = "<group>"; };
|
||||||
|
1BD71CF93D735A2B35E9F339 /* filedata_base_unseekable_buffer.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_unseekable_buffer.hpp; path = ../../src/mpt/io_read/filedata_base_unseekable_buffer.hpp; sourceTree = "<group>"; };
|
||||||
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_arch.hpp; path = ../../src/mpt/base/detect_arch.hpp; sourceTree = "<group>"; };
|
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_arch.hpp; path = ../../src/mpt/base/detect_arch.hpp; sourceTree = "<group>"; };
|
||||||
1C6D52530D64C04579684093 /* SampleFormatOpus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatOpus.cpp; path = ../../soundlib/SampleFormatOpus.cpp; sourceTree = "<group>"; };
|
1C6D52530D64C04579684093 /* SampleFormatOpus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatOpus.cpp; path = ../../soundlib/SampleFormatOpus.cpp; sourceTree = "<group>"; };
|
||||||
1CE2C4318A0AD2A38B9DC271 /* device.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = device.hpp; path = ../../src/mpt/random/device.hpp; sourceTree = "<group>"; };
|
1CE2C4318A0AD2A38B9DC271 /* device.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = device.hpp; path = ../../src/mpt/random/device.hpp; sourceTree = "<group>"; };
|
||||||
|
1D12DDB1AFA0A7A318794BF1 /* Load_stk.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_stk.cpp; path = ../../soundlib/Load_stk.cpp; sourceTree = "<group>"; };
|
||||||
1E7AA06D8BA2AEDF8D359EAD /* simple.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple.hpp; path = ../../src/mpt/format/simple.hpp; sourceTree = "<group>"; };
|
1E7AA06D8BA2AEDF8D359EAD /* simple.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple.hpp; path = ../../src/mpt/format/simple.hpp; sourceTree = "<group>"; };
|
||||||
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_s3m.cpp; path = ../../soundlib/Load_s3m.cpp; sourceTree = "<group>"; };
|
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_s3m.cpp; path = ../../soundlib/Load_s3m.cpp; sourceTree = "<group>"; };
|
||||||
1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WAVTools.cpp; path = ../../soundlib/WAVTools.cpp; sourceTree = "<group>"; };
|
1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WAVTools.cpp; path = ../../soundlib/WAVTools.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -252,12 +275,14 @@
|
||||||
20B693A5E7448B175546B1E5 /* MixerSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerSettings.h; path = ../../soundlib/MixerSettings.h; sourceTree = "<group>"; };
|
20B693A5E7448B175546B1E5 /* MixerSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerSettings.h; path = ../../soundlib/MixerSettings.h; sourceTree = "<group>"; };
|
||||||
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = semantic_version.hpp; path = ../../src/mpt/base/semantic_version.hpp; sourceTree = "<group>"; };
|
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = semantic_version.hpp; path = ../../src/mpt/base/semantic_version.hpp; sourceTree = "<group>"; };
|
||||||
2151B0037C9303754FED4E43 /* Mixer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Mixer.h; path = ../../soundlib/Mixer.h; sourceTree = "<group>"; };
|
2151B0037C9303754FED4E43 /* Mixer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Mixer.h; path = ../../soundlib/Mixer.h; sourceTree = "<group>"; };
|
||||||
|
219A364192BCD73348838481 /* size.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = size.hpp; path = ../../src/mpt/base/size.hpp; sourceTree = "<group>"; };
|
||||||
22594181666D12B35A3E97C1 /* fileref.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = fileref.hpp; path = ../../src/mpt/io_file/fileref.hpp; sourceTree = "<group>"; };
|
22594181666D12B35A3E97C1 /* fileref.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = fileref.hpp; path = ../../src/mpt/io_file/fileref.hpp; sourceTree = "<group>"; };
|
||||||
2323E4A5944685974A0D32E5 /* Snd_defs.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Snd_defs.h; path = ../../soundlib/Snd_defs.h; sourceTree = "<group>"; };
|
2323E4A5944685974A0D32E5 /* Snd_defs.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Snd_defs.h; path = ../../soundlib/Snd_defs.h; sourceTree = "<group>"; };
|
||||||
236E8DFB1D304A6D572F4C3B /* Tagging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Tagging.h; path = ../../soundlib/Tagging.h; sourceTree = "<group>"; };
|
236E8DFB1D304A6D572F4C3B /* Tagging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Tagging.h; path = ../../soundlib/Tagging.h; sourceTree = "<group>"; };
|
||||||
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_buffered.hpp; path = ../../src/mpt/io_read/filedata_base_buffered.hpp; sourceTree = "<group>"; };
|
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_buffered.hpp; path = ../../src/mpt/io_read/filedata_base_buffered.hpp; sourceTree = "<group>"; };
|
||||||
25972C49C780C83BBEA7DA89 /* ContainerUMX.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerUMX.cpp; path = ../../soundlib/ContainerUMX.cpp; sourceTree = "<group>"; };
|
25972C49C780C83BBEA7DA89 /* ContainerUMX.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerUMX.cpp; path = ../../soundlib/ContainerUMX.cpp; sourceTree = "<group>"; };
|
||||||
25EAC3A1C044AC93FC7D11E1 /* unique_basename.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = unique_basename.hpp; path = ../../src/mpt/io_file_unique/unique_basename.hpp; sourceTree = "<group>"; };
|
25EAC3A1C044AC93FC7D11E1 /* unique_basename.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = unique_basename.hpp; path = ../../src/mpt/io_file_unique/unique_basename.hpp; sourceTree = "<group>"; };
|
||||||
|
26B859FFB94623F1221EC83F /* Load_ims.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ims.cpp; path = ../../soundlib/Load_ims.cpp; sourceTree = "<group>"; };
|
||||||
274EB9F5814FD0E74896C835 /* mod_specifications.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mod_specifications.cpp; path = ../../soundlib/mod_specifications.cpp; sourceTree = "<group>"; };
|
274EB9F5814FD0E74896C835 /* mod_specifications.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mod_specifications.cpp; path = ../../soundlib/mod_specifications.cpp; sourceTree = "<group>"; };
|
||||||
27B40A4D98D6AB3F4E9D588D /* SampleIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleIO.h; path = ../../soundlib/SampleIO.h; sourceTree = "<group>"; };
|
27B40A4D98D6AB3F4E9D588D /* SampleIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleIO.h; path = ../../soundlib/SampleIO.h; sourceTree = "<group>"; };
|
||||||
2810796521D235D75BD137A5 /* XMTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = XMTools.h; path = ../../soundlib/XMTools.h; sourceTree = "<group>"; };
|
2810796521D235D75BD137A5 /* XMTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = XMTools.h; path = ../../soundlib/XMTools.h; sourceTree = "<group>"; };
|
||||||
|
@ -279,6 +304,7 @@
|
||||||
338C775D77DB1CCFBA02559D /* BitReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BitReader.h; path = ../../soundlib/BitReader.h; sourceTree = "<group>"; };
|
338C775D77DB1CCFBA02559D /* BitReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BitReader.h; path = ../../soundlib/BitReader.h; sourceTree = "<group>"; };
|
||||||
34D45985C7622377303AC7C5 /* Load_imf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_imf.cpp; path = ../../soundlib/Load_imf.cpp; sourceTree = "<group>"; };
|
34D45985C7622377303AC7C5 /* Load_imf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_imf.cpp; path = ../../soundlib/Load_imf.cpp; sourceTree = "<group>"; };
|
||||||
352908E1F7E96953551E4721 /* libopenmpt_c.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_c.cpp; path = ../../libopenmpt/libopenmpt_c.cpp; sourceTree = "<group>"; };
|
352908E1F7E96953551E4721 /* libopenmpt_c.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_c.cpp; path = ../../libopenmpt/libopenmpt_c.cpp; sourceTree = "<group>"; };
|
||||||
|
352971E219707A149D5DA822 /* libcxx.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libcxx.hpp; path = ../../src/mpt/check/libcxx.hpp; sourceTree = "<group>"; };
|
||||||
36619CBCFDC657AE887E2AFC /* inputfile_filecursor.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile_filecursor.hpp; path = ../../src/mpt/io_file_read/inputfile_filecursor.hpp; sourceTree = "<group>"; };
|
36619CBCFDC657AE887E2AFC /* inputfile_filecursor.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile_filecursor.hpp; path = ../../src/mpt/io_file_read/inputfile_filecursor.hpp; sourceTree = "<group>"; };
|
||||||
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dmf.cpp; path = ../../soundlib/Load_dmf.cpp; sourceTree = "<group>"; };
|
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dmf.cpp; path = ../../soundlib/Load_dmf.cpp; sourceTree = "<group>"; };
|
||||||
37064A799107616B584E58B9 /* tests_random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_random.hpp; path = ../../src/mpt/random/tests/tests_random.hpp; sourceTree = "<group>"; };
|
37064A799107616B584E58B9 /* tests_random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_random.hpp; path = ../../src/mpt/random/tests/tests_random.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -308,6 +334,7 @@
|
||||||
43B7419134AEAF83A0B22FD1 /* libopenmpt_config.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_config.h; path = ../../libopenmpt/libopenmpt_config.h; sourceTree = "<group>"; };
|
43B7419134AEAF83A0B22FD1 /* libopenmpt_config.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_config.h; path = ../../libopenmpt/libopenmpt_config.h; sourceTree = "<group>"; };
|
||||||
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileTemporary.h; path = ../../common/mptFileTemporary.h; sourceTree = "<group>"; };
|
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileTemporary.h; path = ../../common/mptFileTemporary.h; sourceTree = "<group>"; };
|
||||||
44E6E1C323897D35D86B8003 /* tests_base_bit.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_bit.hpp; path = ../../src/mpt/base/tests/tests_base_bit.hpp; sourceTree = "<group>"; };
|
44E6E1C323897D35D86B8003 /* tests_base_bit.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_bit.hpp; path = ../../src/mpt/base/tests/tests_base_bit.hpp; sourceTree = "<group>"; };
|
||||||
|
45A87D570868DDC9659DBB97 /* InstrumentSynth.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = InstrumentSynth.h; path = ../../soundlib/InstrumentSynth.h; sourceTree = "<group>"; };
|
||||||
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DigiBoosterEcho.h; path = ../../soundlib/plugins/DigiBoosterEcho.h; sourceTree = "<group>"; };
|
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DigiBoosterEcho.h; path = ../../soundlib/plugins/DigiBoosterEcho.h; sourceTree = "<group>"; };
|
||||||
45DBF5F73F9DB269799CB437 /* Dlsbank.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Dlsbank.h; path = ../../soundlib/Dlsbank.h; sourceTree = "<group>"; };
|
45DBF5F73F9DB269799CB437 /* Dlsbank.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Dlsbank.h; path = ../../soundlib/Dlsbank.h; sourceTree = "<group>"; };
|
||||||
4614D43FB73775316CFE227F /* math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = math.hpp; path = ../../src/mpt/base/math.hpp; sourceTree = "<group>"; };
|
4614D43FB73775316CFE227F /* math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = math.hpp; path = ../../src/mpt/base/math.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -327,7 +354,6 @@
|
||||||
4DFC0969924AAEDBD471E7A9 /* ltdl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = ltdl.hpp; path = ../../src/mpt/detect/ltdl.hpp; sourceTree = "<group>"; };
|
4DFC0969924AAEDBD471E7A9 /* ltdl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = ltdl.hpp; path = ../../src/mpt/detect/ltdl.hpp; sourceTree = "<group>"; };
|
||||||
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_plm.cpp; path = ../../soundlib/Load_plm.cpp; sourceTree = "<group>"; };
|
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_plm.cpp; path = ../../soundlib/Load_plm.cpp; sourceTree = "<group>"; };
|
||||||
4E96BB31E124852349FD2971 /* types.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = types.hpp; path = ../../src/mpt/string/types.hpp; sourceTree = "<group>"; };
|
4E96BB31E124852349FD2971 /* types.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = types.hpp; path = ../../src/mpt/string/types.hpp; sourceTree = "<group>"; };
|
||||||
4FB7A50743B6EE79C8A20347 /* floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = floatingpoint.hpp; path = ../../src/mpt/base/floatingpoint.hpp; sourceTree = "<group>"; };
|
|
||||||
50318A59BD5998CBBEEC8899 /* os_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = os_path.hpp; path = ../../src/mpt/path/os_path.hpp; sourceTree = "<group>"; };
|
50318A59BD5998CBBEEC8899 /* os_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = os_path.hpp; path = ../../src/mpt/path/os_path.hpp; sourceTree = "<group>"; };
|
||||||
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileIO.h; path = ../../common/mptFileIO.h; sourceTree = "<group>"; };
|
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileIO.h; path = ../../common/mptFileIO.h; sourceTree = "<group>"; };
|
||||||
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIMacros.cpp; path = ../../soundlib/MIDIMacros.cpp; sourceTree = "<group>"; };
|
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIMacros.cpp; path = ../../soundlib/MIDIMacros.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -373,6 +399,7 @@
|
||||||
6B9C8BDDC301FECF75101A1D /* Gargle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Gargle.h; path = ../../soundlib/plugins/dmo/Gargle.h; sourceTree = "<group>"; };
|
6B9C8BDDC301FECF75101A1D /* Gargle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Gargle.h; path = ../../soundlib/plugins/dmo/Gargle.h; sourceTree = "<group>"; };
|
||||||
6C67B7D97E1EF7CBF38CE619 /* tests_base_math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_math.hpp; path = ../../src/mpt/base/tests/tests_base_math.hpp; sourceTree = "<group>"; };
|
6C67B7D97E1EF7CBF38CE619 /* tests_base_math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_math.hpp; path = ../../src/mpt/base/tests/tests_base_math.hpp; sourceTree = "<group>"; };
|
||||||
6D2350A8B171F61AF3992EE8 /* FileReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReader.h; path = ../../common/FileReader.h; sourceTree = "<group>"; };
|
6D2350A8B171F61AF3992EE8 /* FileReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReader.h; path = ../../common/FileReader.h; sourceTree = "<group>"; };
|
||||||
|
6DB68B53DADE99C5DC718993 /* Load_puma.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_puma.cpp; path = ../../soundlib/Load_puma.cpp; sourceTree = "<group>"; };
|
||||||
6E84090F7E6935416ADCBF4F /* environment.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = environment.hpp; path = ../../src/mpt/environment/environment.hpp; sourceTree = "<group>"; };
|
6E84090F7E6935416ADCBF4F /* environment.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = environment.hpp; path = ../../src/mpt/environment/environment.hpp; sourceTree = "<group>"; };
|
||||||
6F3A912F8923F36144AA076F /* filecursor_callbackstream.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_callbackstream.hpp; path = ../../src/mpt/io_read/filecursor_callbackstream.hpp; sourceTree = "<group>"; };
|
6F3A912F8923F36144AA076F /* filecursor_callbackstream.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_callbackstream.hpp; path = ../../src/mpt/io_read/filecursor_callbackstream.hpp; sourceTree = "<group>"; };
|
||||||
70644035FF1571275A9F8E75 /* libopenmpt_stream_callbacks_file_msvcrt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_msvcrt.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_msvcrt.h; sourceTree = "<group>"; };
|
70644035FF1571275A9F8E75 /* libopenmpt_stream_callbacks_file_msvcrt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_msvcrt.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_msvcrt.h; sourceTree = "<group>"; };
|
||||||
|
@ -384,6 +411,7 @@
|
||||||
73262ABB150FC6AD0C36D8FB /* DMOUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOUtils.h; path = ../../soundlib/plugins/dmo/DMOUtils.h; sourceTree = "<group>"; };
|
73262ABB150FC6AD0C36D8FB /* DMOUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOUtils.h; path = ../../soundlib/plugins/dmo/DMOUtils.h; sourceTree = "<group>"; };
|
||||||
7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_ext_impl.cpp; path = ../../libopenmpt/libopenmpt_ext_impl.cpp; sourceTree = "<group>"; };
|
7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_ext_impl.cpp; path = ../../libopenmpt/libopenmpt_ext_impl.cpp; sourceTree = "<group>"; };
|
||||||
73781183B7C6B6F5F9EDEFC3 /* Snd_flt.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_flt.cpp; path = ../../soundlib/Snd_flt.cpp; sourceTree = "<group>"; };
|
73781183B7C6B6F5F9EDEFC3 /* Snd_flt.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_flt.cpp; path = ../../soundlib/Snd_flt.cpp; sourceTree = "<group>"; };
|
||||||
|
73A166DF062F30D16F07D51F /* Load_tcb.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_tcb.cpp; path = ../../soundlib/Load_tcb.cpp; sourceTree = "<group>"; };
|
||||||
73A52C155E915207A6771A55 /* EQ.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = EQ.h; path = ../../sounddsp/EQ.h; sourceTree = "<group>"; };
|
73A52C155E915207A6771A55 /* EQ.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = EQ.h; path = ../../sounddsp/EQ.h; sourceTree = "<group>"; };
|
||||||
746376CDCBC8E9BF7DD7050D /* modcommand.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modcommand.cpp; path = ../../soundlib/modcommand.cpp; sourceTree = "<group>"; };
|
746376CDCBC8E9BF7DD7050D /* modcommand.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modcommand.cpp; path = ../../soundlib/modcommand.cpp; sourceTree = "<group>"; };
|
||||||
74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_fx.cpp; path = ../../soundlib/Snd_fx.cpp; sourceTree = "<group>"; };
|
74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_fx.cpp; path = ../../soundlib/Snd_fx.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -410,6 +438,7 @@
|
||||||
7FD19A57125F64497B380897 /* Load_ult.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ult.cpp; path = ../../soundlib/Load_ult.cpp; sourceTree = "<group>"; };
|
7FD19A57125F64497B380897 /* Load_ult.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ult.cpp; path = ../../soundlib/Load_ult.cpp; sourceTree = "<group>"; };
|
||||||
80C993CB8D54463D0839120B /* message_macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message_macros.hpp; path = ../../src/mpt/format/message_macros.hpp; sourceTree = "<group>"; };
|
80C993CB8D54463D0839120B /* message_macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message_macros.hpp; path = ../../src/mpt/format/message_macros.hpp; sourceTree = "<group>"; };
|
||||||
80F9D5FD1722E7EFD889443D /* default_floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_floatingpoint.hpp; path = ../../src/mpt/format/default_floatingpoint.hpp; sourceTree = "<group>"; };
|
80F9D5FD1722E7EFD889443D /* default_floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_floatingpoint.hpp; path = ../../src/mpt/format/default_floatingpoint.hpp; sourceTree = "<group>"; };
|
||||||
|
8209AB5BF32C4C4DA8F2F99B /* MODTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MODTools.h; path = ../../soundlib/MODTools.h; sourceTree = "<group>"; };
|
||||||
82EA4C5D44A2DDCFEBBDAA9D /* tests_base_wrapping_divide.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_wrapping_divide.hpp; path = ../../src/mpt/base/tests/tests_base_wrapping_divide.hpp; sourceTree = "<group>"; };
|
82EA4C5D44A2DDCFEBBDAA9D /* tests_base_wrapping_divide.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_wrapping_divide.hpp; path = ../../src/mpt/base/tests/tests_base_wrapping_divide.hpp; sourceTree = "<group>"; };
|
||||||
830F3566F431D658A9F883A6 /* Logging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Logging.cpp; path = ../../common/Logging.cpp; sourceTree = "<group>"; };
|
830F3566F431D658A9F883A6 /* Logging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Logging.cpp; path = ../../common/Logging.cpp; sourceTree = "<group>"; };
|
||||||
84A787B7269123A91DB835F7 /* Chorus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Chorus.cpp; path = ../../soundlib/plugins/dmo/Chorus.cpp; sourceTree = "<group>"; };
|
84A787B7269123A91DB835F7 /* Chorus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Chorus.cpp; path = ../../soundlib/plugins/dmo/Chorus.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -419,6 +448,7 @@
|
||||||
87A62ABDE1A741AFA8EE38FD /* AudioCriticalSection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioCriticalSection.h; path = ../../soundlib/AudioCriticalSection.h; sourceTree = "<group>"; };
|
87A62ABDE1A741AFA8EE38FD /* AudioCriticalSection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioCriticalSection.h; path = ../../soundlib/AudioCriticalSection.h; sourceTree = "<group>"; };
|
||||||
8856685FF57E76D1F711669F /* base64.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = base64.hpp; path = ../../src/mpt/binary/base64.hpp; sourceTree = "<group>"; };
|
8856685FF57E76D1F711669F /* base64.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = base64.hpp; path = ../../src/mpt/binary/base64.hpp; sourceTree = "<group>"; };
|
||||||
8876678BE2777E7DA9BE75CB /* default_engines.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_engines.hpp; path = ../../src/mpt/random/default_engines.hpp; sourceTree = "<group>"; };
|
8876678BE2777E7DA9BE75CB /* default_engines.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_engines.hpp; path = ../../src/mpt/random/default_engines.hpp; sourceTree = "<group>"; };
|
||||||
|
89879ACD7D86E43F0271F90D /* InstrumentSynth.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InstrumentSynth.cpp; path = ../../soundlib/InstrumentSynth.cpp; sourceTree = "<group>"; };
|
||||||
8A87EA73FEE22F657CC5B8B3 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/string_transcode/macros.hpp; sourceTree = "<group>"; };
|
8A87EA73FEE22F657CC5B8B3 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/string_transcode/macros.hpp; sourceTree = "<group>"; };
|
||||||
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_unseekable.hpp; path = ../../src/mpt/io_read/filedata_base_unseekable.hpp; sourceTree = "<group>"; };
|
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_unseekable.hpp; path = ../../src/mpt/io_read/filedata_base_unseekable.hpp; sourceTree = "<group>"; };
|
||||||
8ABF23E958E2779BDFF0CA29 /* mutex.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = mutex.hpp; path = ../../src/mpt/mutex/mutex.hpp; sourceTree = "<group>"; };
|
8ABF23E958E2779BDFF0CA29 /* mutex.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = mutex.hpp; path = ../../src/mpt/mutex/mutex.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -435,7 +465,6 @@
|
||||||
8F52A05ED3A145D015C87E9E /* Profiler.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Profiler.cpp; path = ../../common/Profiler.cpp; sourceTree = "<group>"; };
|
8F52A05ED3A145D015C87E9E /* Profiler.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Profiler.cpp; path = ../../common/Profiler.cpp; sourceTree = "<group>"; };
|
||||||
9061AC518460F5C3094C0A91 /* SampleFormatBRR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatBRR.cpp; path = ../../soundlib/SampleFormatBRR.cpp; sourceTree = "<group>"; };
|
9061AC518460F5C3094C0A91 /* SampleFormatBRR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatBRR.cpp; path = ../../soundlib/SampleFormatBRR.cpp; sourceTree = "<group>"; };
|
||||||
90E45EE632CDFAD829F50D26 /* mptStringBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringBuffer.h; path = ../../common/mptStringBuffer.h; sourceTree = "<group>"; };
|
90E45EE632CDFAD829F50D26 /* mptStringBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringBuffer.h; path = ../../common/mptStringBuffer.h; sourceTree = "<group>"; };
|
||||||
9133E604FE5BF476FFEEE444 /* OpCodes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = OpCodes.h; path = ../../soundlib/plugins/OpCodes.h; sourceTree = "<group>"; };
|
|
||||||
915D6003E8C2D2F59AD0EE43 /* message.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message.hpp; path = ../../src/mpt/format/message.hpp; sourceTree = "<group>"; };
|
915D6003E8C2D2F59AD0EE43 /* message.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message.hpp; path = ../../src/mpt/format/message.hpp; sourceTree = "<group>"; };
|
||||||
91AA522185A99B930A94B061 /* I3DL2Reverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = I3DL2Reverb.h; path = ../../soundlib/plugins/dmo/I3DL2Reverb.h; sourceTree = "<group>"; };
|
91AA522185A99B930A94B061 /* I3DL2Reverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = I3DL2Reverb.h; path = ../../soundlib/plugins/dmo/I3DL2Reverb.h; sourceTree = "<group>"; };
|
||||||
91EC613953A4F2ABFABFBF79 /* libopenmpt_stream_callbacks_file.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file.h; sourceTree = "<group>"; };
|
91EC613953A4F2ABFABFBF79 /* libopenmpt_stream_callbacks_file.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file.h; sourceTree = "<group>"; };
|
||||||
|
@ -449,6 +478,7 @@
|
||||||
97B8EC8104E0FAF30673EAC1 /* OggStream.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OggStream.cpp; path = ../../soundlib/OggStream.cpp; sourceTree = "<group>"; };
|
97B8EC8104E0FAF30673EAC1 /* OggStream.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OggStream.cpp; path = ../../soundlib/OggStream.cpp; sourceTree = "<group>"; };
|
||||||
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_gdm.cpp; path = ../../soundlib/Load_gdm.cpp; sourceTree = "<group>"; };
|
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_gdm.cpp; path = ../../soundlib/Load_gdm.cpp; sourceTree = "<group>"; };
|
||||||
995821ED5E0D785F127C202D /* tests_string_buffer.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_buffer.hpp; path = ../../src/mpt/string/tests/tests_string_buffer.hpp; sourceTree = "<group>"; };
|
995821ED5E0D785F127C202D /* tests_string_buffer.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_buffer.hpp; path = ../../src/mpt/string/tests/tests_string_buffer.hpp; sourceTree = "<group>"; };
|
||||||
|
99E1AAB12C6F74A3954818F1 /* MODTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MODTools.cpp; path = ../../soundlib/MODTools.cpp; sourceTree = "<group>"; };
|
||||||
9B1917A761A70F19CFA935E7 /* ParamEq.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ParamEq.h; path = ../../soundlib/plugins/dmo/ParamEq.h; sourceTree = "<group>"; };
|
9B1917A761A70F19CFA935E7 /* ParamEq.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ParamEq.h; path = ../../soundlib/plugins/dmo/ParamEq.h; sourceTree = "<group>"; };
|
||||||
9B95674D94FB68BF8896C58D /* libopenmpt.dll */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = libopenmpt.dll; path = libopenmpt.dll; sourceTree = BUILT_PRODUCTS_DIR; };
|
9B95674D94FB68BF8896C58D /* libopenmpt.dll */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = libopenmpt.dll; path = libopenmpt.dll; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
9BB2E75F2E40B1519719559F /* Load_far.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_far.cpp; path = ../../soundlib/Load_far.cpp; sourceTree = "<group>"; };
|
9BB2E75F2E40B1519719559F /* Load_far.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_far.cpp; path = ../../soundlib/Load_far.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -461,6 +491,7 @@
|
||||||
9E737DF712CDC2E990B14C37 /* Distortion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Distortion.h; path = ../../soundlib/plugins/dmo/Distortion.h; sourceTree = "<group>"; };
|
9E737DF712CDC2E990B14C37 /* Distortion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Distortion.h; path = ../../soundlib/plugins/dmo/Distortion.h; sourceTree = "<group>"; };
|
||||||
9E8AC865F88BDF57BFD2D6A5 /* tests_binary.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_binary.hpp; path = ../../src/mpt/binary/tests/tests_binary.hpp; sourceTree = "<group>"; };
|
9E8AC865F88BDF57BFD2D6A5 /* tests_binary.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_binary.hpp; path = ../../src/mpt/binary/tests/tests_binary.hpp; sourceTree = "<group>"; };
|
||||||
9EB0D073130B156590EE9EB3 /* Compressor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Compressor.h; path = ../../soundlib/plugins/dmo/Compressor.h; sourceTree = "<group>"; };
|
9EB0D073130B156590EE9EB3 /* Compressor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Compressor.h; path = ../../soundlib/plugins/dmo/Compressor.h; sourceTree = "<group>"; };
|
||||||
|
9EEAF28B0C1300FD0DA5F0CB /* Load_unic.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_unic.cpp; path = ../../soundlib/Load_unic.cpp; sourceTree = "<group>"; };
|
||||||
9F187E69B9E4ED1BBDB584A9 /* outputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = outputfile.hpp; path = ../../src/mpt/io_file/outputfile.hpp; sourceTree = "<group>"; };
|
9F187E69B9E4ED1BBDB584A9 /* outputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = outputfile.hpp; path = ../../src/mpt/io_file/outputfile.hpp; sourceTree = "<group>"; };
|
||||||
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BuildSettingsCompiler.h; path = ../../common/BuildSettingsCompiler.h; sourceTree = "<group>"; };
|
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BuildSettingsCompiler.h; path = ../../common/BuildSettingsCompiler.h; sourceTree = "<group>"; };
|
||||||
9FCB791A628BD98CBFC0B75A /* dos_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = dos_memory.hpp; path = ../../src/mpt/osinfo/dos_memory.hpp; sourceTree = "<group>"; };
|
9FCB791A628BD98CBFC0B75A /* dos_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = dos_memory.hpp; path = ../../src/mpt/osinfo/dos_memory.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -471,6 +502,7 @@
|
||||||
A32EC1731056CFE511E9BFB3 /* ModSample.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ModSample.cpp; path = ../../soundlib/ModSample.cpp; sourceTree = "<group>"; };
|
A32EC1731056CFE511E9BFB3 /* ModSample.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ModSample.cpp; path = ../../soundlib/ModSample.cpp; sourceTree = "<group>"; };
|
||||||
A33106C935BED0BB9E977509 /* load_j2b.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = load_j2b.cpp; path = ../../soundlib/load_j2b.cpp; sourceTree = "<group>"; };
|
A33106C935BED0BB9E977509 /* load_j2b.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = load_j2b.cpp; path = ../../soundlib/load_j2b.cpp; sourceTree = "<group>"; };
|
||||||
A34959973B963F4969DD3FD7 /* filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata.hpp; path = ../../src/mpt/io_read/filedata.hpp; sourceTree = "<group>"; };
|
A34959973B963F4969DD3FD7 /* filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata.hpp; path = ../../src/mpt/io_read/filedata.hpp; sourceTree = "<group>"; };
|
||||||
|
A35EA1E7E7AD475929D48027 /* PlayState.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PlayState.h; path = ../../soundlib/PlayState.h; sourceTree = "<group>"; };
|
||||||
A527626137B52C53A08DD0A1 /* int24.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = int24.hpp; path = ../../src/mpt/endian/int24.hpp; sourceTree = "<group>"; };
|
A527626137B52C53A08DD0A1 /* int24.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = int24.hpp; path = ../../src/mpt/endian/int24.hpp; sourceTree = "<group>"; };
|
||||||
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIEvents.cpp; path = ../../soundlib/MIDIEvents.cpp; sourceTree = "<group>"; };
|
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIEvents.cpp; path = ../../soundlib/MIDIEvents.cpp; sourceTree = "<group>"; };
|
||||||
A7A09A55A16256C7DB615895 /* Paula.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Paula.cpp; path = ../../soundlib/Paula.cpp; sourceTree = "<group>"; };
|
A7A09A55A16256C7DB615895 /* Paula.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Paula.cpp; path = ../../soundlib/Paula.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -493,7 +525,9 @@
|
||||||
B517EB3DCFE459EFD3B4F17D /* exception.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = exception.hpp; path = ../../src/mpt/exception/exception.hpp; sourceTree = "<group>"; };
|
B517EB3DCFE459EFD3B4F17D /* exception.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = exception.hpp; path = ../../src/mpt/exception/exception.hpp; sourceTree = "<group>"; };
|
||||||
B5449C6B226CAADD23FF9AAB /* ModSequence.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModSequence.h; path = ../../soundlib/ModSequence.h; sourceTree = "<group>"; };
|
B5449C6B226CAADD23FF9AAB /* ModSequence.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModSequence.h; path = ../../soundlib/ModSequence.h; sourceTree = "<group>"; };
|
||||||
B547A5AF29A1EAA1A78573EF /* type_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = type_traits.hpp; path = ../../src/mpt/endian/type_traits.hpp; sourceTree = "<group>"; };
|
B547A5AF29A1EAA1A78573EF /* type_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = type_traits.hpp; path = ../../src/mpt/endian/type_traits.hpp; sourceTree = "<group>"; };
|
||||||
|
B55D7A70F9AC1FE23BD358B0 /* GzipWriter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = GzipWriter.h; path = ../../common/GzipWriter.h; sourceTree = "<group>"; };
|
||||||
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_669.cpp; path = ../../soundlib/Load_669.cpp; sourceTree = "<group>"; };
|
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_669.cpp; path = ../../soundlib/Load_669.cpp; sourceTree = "<group>"; };
|
||||||
|
B6BBD03FFB0A75B13D31AE7F /* Load_fc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_fc.cpp; path = ../../soundlib/Load_fc.cpp; sourceTree = "<group>"; };
|
||||||
B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MixerLoops.cpp; path = ../../soundlib/MixerLoops.cpp; sourceTree = "<group>"; };
|
B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MixerLoops.cpp; path = ../../soundlib/MixerLoops.cpp; sourceTree = "<group>"; };
|
||||||
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_c67.cpp; path = ../../soundlib/Load_c67.cpp; sourceTree = "<group>"; };
|
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_c67.cpp; path = ../../soundlib/Load_c67.cpp; sourceTree = "<group>"; };
|
||||||
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = windows.hpp; path = ../../src/mpt/check/windows.hpp; sourceTree = "<group>"; };
|
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = windows.hpp; path = ../../src/mpt/check/windows.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -504,6 +538,7 @@
|
||||||
BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndfile.cpp; path = ../../soundlib/Sndfile.cpp; sourceTree = "<group>"; };
|
BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndfile.cpp; path = ../../soundlib/Sndfile.cpp; sourceTree = "<group>"; };
|
||||||
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ITTools.h; path = ../../soundlib/ITTools.h; sourceTree = "<group>"; };
|
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ITTools.h; path = ../../soundlib/ITTools.h; sourceTree = "<group>"; };
|
||||||
BD023BA1315C8093AF4009E1 /* simple_spec.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple_spec.hpp; path = ../../src/mpt/format/simple_spec.hpp; sourceTree = "<group>"; };
|
BD023BA1315C8093AF4009E1 /* simple_spec.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple_spec.hpp; path = ../../src/mpt/format/simple_spec.hpp; sourceTree = "<group>"; };
|
||||||
|
BE474F872B6F5DF92D024DC7 /* Load_pt36.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_pt36.cpp; path = ../../soundlib/Load_pt36.cpp; sourceTree = "<group>"; };
|
||||||
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MPEGFrame.cpp; path = ../../soundlib/MPEGFrame.cpp; sourceTree = "<group>"; };
|
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MPEGFrame.cpp; path = ../../soundlib/MPEGFrame.cpp; sourceTree = "<group>"; };
|
||||||
BFC43D151B059087EE5FDB55 /* AGC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AGC.cpp; path = ../../sounddsp/AGC.cpp; sourceTree = "<group>"; };
|
BFC43D151B059087EE5FDB55 /* AGC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AGC.cpp; path = ../../sounddsp/AGC.cpp; sourceTree = "<group>"; };
|
||||||
C0B331FD5340FBEFBC19A03D /* MixerLoops.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerLoops.h; path = ../../soundlib/MixerLoops.h; sourceTree = "<group>"; };
|
C0B331FD5340FBEFBC19A03D /* MixerLoops.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerLoops.h; path = ../../soundlib/MixerLoops.h; sourceTree = "<group>"; };
|
||||||
|
@ -513,6 +548,7 @@
|
||||||
C3E634155673FE07BF4CA255 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/base/macros.hpp; sourceTree = "<group>"; };
|
C3E634155673FE07BF4CA255 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/base/macros.hpp; sourceTree = "<group>"; };
|
||||||
C3FAC67D5688906FBF6134BD /* detect.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect.hpp; path = ../../src/mpt/base/detect.hpp; sourceTree = "<group>"; };
|
C3FAC67D5688906FBF6134BD /* detect.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect.hpp; path = ../../src/mpt/base/detect.hpp; sourceTree = "<group>"; };
|
||||||
C510221C396A670EB74DF05C /* mptStringBuffer.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptStringBuffer.cpp; path = ../../common/mptStringBuffer.cpp; sourceTree = "<group>"; };
|
C510221C396A670EB74DF05C /* mptStringBuffer.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptStringBuffer.cpp; path = ../../common/mptStringBuffer.cpp; sourceTree = "<group>"; };
|
||||||
|
C61BC533BA1B0EA53F062373 /* MIDIMacroParser.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIMacroParser.cpp; path = ../../soundlib/MIDIMacroParser.cpp; sourceTree = "<group>"; };
|
||||||
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReaderFwd.h; path = ../../common/FileReaderFwd.h; sourceTree = "<group>"; };
|
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReaderFwd.h; path = ../../common/FileReaderFwd.h; sourceTree = "<group>"; };
|
||||||
C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = UMXTools.cpp; path = ../../soundlib/UMXTools.cpp; sourceTree = "<group>"; };
|
C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = UMXTools.cpp; path = ../../soundlib/UMXTools.cpp; sourceTree = "<group>"; };
|
||||||
C875E7BBB96D55AD2570D5FB /* floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = floatingpoint.hpp; path = ../../src/mpt/endian/floatingpoint.hpp; sourceTree = "<group>"; };
|
C875E7BBB96D55AD2570D5FB /* floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = floatingpoint.hpp; path = ../../src/mpt/endian/floatingpoint.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -520,6 +556,7 @@
|
||||||
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_sfx.cpp; path = ../../soundlib/Load_sfx.cpp; sourceTree = "<group>"; };
|
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_sfx.cpp; path = ../../soundlib/Load_sfx.cpp; sourceTree = "<group>"; };
|
||||||
C9545B192355720BEA9C6959 /* arithmetic_shift.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = arithmetic_shift.hpp; path = ../../src/mpt/base/arithmetic_shift.hpp; sourceTree = "<group>"; };
|
C9545B192355720BEA9C6959 /* arithmetic_shift.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = arithmetic_shift.hpp; path = ../../src/mpt/base/arithmetic_shift.hpp; sourceTree = "<group>"; };
|
||||||
C9DD180C21428AFED350A64C /* mptPathString.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptPathString.h; path = ../../common/mptPathString.h; sourceTree = "<group>"; };
|
C9DD180C21428AFED350A64C /* mptPathString.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptPathString.h; path = ../../common/mptPathString.h; sourceTree = "<group>"; };
|
||||||
|
C9E029A3906E2115FE7047E3 /* debugging.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = debugging.hpp; path = ../../src/mpt/base/debugging.hpp; sourceTree = "<group>"; };
|
||||||
CA2995890E783AFB509F73C9 /* array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = array.hpp; path = ../../src/mpt/base/array.hpp; sourceTree = "<group>"; };
|
CA2995890E783AFB509F73C9 /* array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = array.hpp; path = ../../src/mpt/base/array.hpp; sourceTree = "<group>"; };
|
||||||
CA67A8613B8A4953F150F6A1 /* S3MTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = S3MTools.h; path = ../../soundlib/S3MTools.h; sourceTree = "<group>"; };
|
CA67A8613B8A4953F150F6A1 /* S3MTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = S3MTools.h; path = ../../soundlib/S3MTools.h; sourceTree = "<group>"; };
|
||||||
CB4660EB0F95065D51BC3F2B /* pattern.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pattern.cpp; path = ../../soundlib/pattern.cpp; sourceTree = "<group>"; };
|
CB4660EB0F95065D51BC3F2B /* pattern.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pattern.cpp; path = ../../soundlib/pattern.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -541,7 +578,9 @@
|
||||||
D35A7771C759C0E34C44D5B1 /* WavesReverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = WavesReverb.h; path = ../../soundlib/plugins/dmo/WavesReverb.h; sourceTree = "<group>"; };
|
D35A7771C759C0E34C44D5B1 /* WavesReverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = WavesReverb.h; path = ../../soundlib/plugins/dmo/WavesReverb.h; sourceTree = "<group>"; };
|
||||||
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MIDIMacros.h; path = ../../soundlib/MIDIMacros.h; sourceTree = "<group>"; };
|
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MIDIMacros.h; path = ../../soundlib/MIDIMacros.h; sourceTree = "<group>"; };
|
||||||
D432AEE7E417DB19D08B6527 /* tests_parse.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_parse.hpp; path = ../../src/mpt/parse/tests/tests_parse.hpp; sourceTree = "<group>"; };
|
D432AEE7E417DB19D08B6527 /* tests_parse.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_parse.hpp; path = ../../src/mpt/parse/tests/tests_parse.hpp; sourceTree = "<group>"; };
|
||||||
|
D668A71B68F6710DD1CF155B /* Load_gmc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_gmc.cpp; path = ../../soundlib/Load_gmc.cpp; sourceTree = "<group>"; };
|
||||||
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LFOPlugin.cpp; path = ../../soundlib/plugins/LFOPlugin.cpp; sourceTree = "<group>"; };
|
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LFOPlugin.cpp; path = ../../soundlib/plugins/LFOPlugin.cpp; sourceTree = "<group>"; };
|
||||||
|
D727124F69B4DC41D28D808F /* Load_ice.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ice.cpp; path = ../../soundlib/Load_ice.cpp; sourceTree = "<group>"; };
|
||||||
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlugInterface.cpp; path = ../../soundlib/plugins/PlugInterface.cpp; sourceTree = "<group>"; };
|
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlugInterface.cpp; path = ../../soundlib/plugins/PlugInterface.cpp; sourceTree = "<group>"; };
|
||||||
D941724BCA38E03D363C608B /* saturate_round.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_round.hpp; path = ../../src/mpt/base/saturate_round.hpp; sourceTree = "<group>"; };
|
D941724BCA38E03D363C608B /* saturate_round.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_round.hpp; path = ../../src/mpt/base/saturate_round.hpp; sourceTree = "<group>"; };
|
||||||
DA41BBEFE6CC6E6161B13A2F /* transcode.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = transcode.hpp; path = ../../src/mpt/string_transcode/transcode.hpp; sourceTree = "<group>"; };
|
DA41BBEFE6CC6E6161B13A2F /* transcode.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = transcode.hpp; path = ../../src/mpt/string_transcode/transcode.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -560,18 +599,21 @@
|
||||||
E2066CCD3D47C03F10A20B0D /* DSP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DSP.cpp; path = ../../sounddsp/DSP.cpp; sourceTree = "<group>"; };
|
E2066CCD3D47C03F10A20B0D /* DSP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DSP.cpp; path = ../../sounddsp/DSP.cpp; sourceTree = "<group>"; };
|
||||||
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_seekable.hpp; path = ../../src/mpt/io_read/filedata_base_seekable.hpp; sourceTree = "<group>"; };
|
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_seekable.hpp; path = ../../src/mpt/io_read/filedata_base_seekable.hpp; sourceTree = "<group>"; };
|
||||||
E2B3BCB34FDBCB25516EBAF3 /* random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = random.hpp; path = ../../src/mpt/random/random.hpp; sourceTree = "<group>"; };
|
E2B3BCB34FDBCB25516EBAF3 /* random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = random.hpp; path = ../../src/mpt/random/random.hpp; sourceTree = "<group>"; };
|
||||||
|
E38574ABA645D51D037AB2EB /* any_engine.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = any_engine.hpp; path = ../../src/mpt/random/any_engine.hpp; sourceTree = "<group>"; };
|
||||||
E438935FD53001514133819F /* mod_specifications.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mod_specifications.h; path = ../../soundlib/mod_specifications.h; sourceTree = "<group>"; };
|
E438935FD53001514133819F /* mod_specifications.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mod_specifications.h; path = ../../soundlib/mod_specifications.h; sourceTree = "<group>"; };
|
||||||
E4C0ABA9F677EB9B6BE5D9E9 /* libopenmpt_ext_impl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext_impl.hpp; path = ../../libopenmpt/libopenmpt_ext_impl.hpp; sourceTree = "<group>"; };
|
E4C0ABA9F677EB9B6BE5D9E9 /* libopenmpt_ext_impl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext_impl.hpp; path = ../../libopenmpt/libopenmpt_ext_impl.hpp; sourceTree = "<group>"; };
|
||||||
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Loaders.h; path = ../../soundlib/Loaders.h; sourceTree = "<group>"; };
|
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Loaders.h; path = ../../soundlib/Loaders.h; sourceTree = "<group>"; };
|
||||||
E64FF33AA9BBB4ECE85F597A /* openmpt-ogg.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "ogg.xcodeproj"; path = ext/ogg.xcodeproj; sourceTree = SOURCE_ROOT; };
|
E64FF33AA9BBB4ECE85F597A /* openmpt-ogg.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "ogg.xcodeproj"; path = ext/ogg.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||||
E6905433791E1E25E1F6C273 /* SampleCopy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleCopy.h; path = ../../soundlib/SampleCopy.h; sourceTree = "<group>"; };
|
E6905433791E1E25E1F6C273 /* SampleCopy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleCopy.h; path = ../../soundlib/SampleCopy.h; sourceTree = "<group>"; };
|
||||||
E7811C8A7A0EE67CE2E78ACA /* class.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = class.hpp; path = ../../src/mpt/osinfo/class.hpp; sourceTree = "<group>"; };
|
E7811C8A7A0EE67CE2E78ACA /* class.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = class.hpp; path = ../../src/mpt/osinfo/class.hpp; sourceTree = "<group>"; };
|
||||||
|
E7ACD57DAA6D35EF07A213BD /* MIDIMacroParser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MIDIMacroParser.h; path = ../../soundlib/MIDIMacroParser.h; sourceTree = "<group>"; };
|
||||||
E898D5ABAF26CD1D1D28F3EB /* ModInstrument.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModInstrument.h; path = ../../soundlib/ModInstrument.h; sourceTree = "<group>"; };
|
E898D5ABAF26CD1D1D28F3EB /* ModInstrument.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModInstrument.h; path = ../../soundlib/ModInstrument.h; sourceTree = "<group>"; };
|
||||||
EABA2F1F4147999119C0AD5F /* AGC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AGC.h; path = ../../sounddsp/AGC.h; sourceTree = "<group>"; };
|
EABA2F1F4147999119C0AD5F /* AGC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AGC.h; path = ../../sounddsp/AGC.h; sourceTree = "<group>"; };
|
||||||
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mid.cpp; path = ../../soundlib/Load_mid.cpp; sourceTree = "<group>"; };
|
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mid.cpp; path = ../../soundlib/Load_mid.cpp; sourceTree = "<group>"; };
|
||||||
ED3DBD7D7FCB876FE8A42BBD /* memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = memory.hpp; path = ../../src/mpt/base/memory.hpp; sourceTree = "<group>"; };
|
ED3DBD7D7FCB876FE8A42BBD /* memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = memory.hpp; path = ../../src/mpt/base/memory.hpp; sourceTree = "<group>"; };
|
||||||
|
EDB72A5D8FA0C64F86C7D89D /* PlaybackTest.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlaybackTest.cpp; path = ../../soundlib/PlaybackTest.cpp; sourceTree = "<group>"; };
|
||||||
|
EDF8E6598086B04BE95F5499 /* Load_cba.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_cba.cpp; path = ../../soundlib/Load_cba.cpp; sourceTree = "<group>"; };
|
||||||
EEC8D9B98156A3ABEA2F47F9 /* tuningbase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuningbase.h; path = ../../soundlib/tuningbase.h; sourceTree = "<group>"; };
|
EEC8D9B98156A3ABEA2F47F9 /* tuningbase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuningbase.h; path = ../../soundlib/tuningbase.h; sourceTree = "<group>"; };
|
||||||
EF78F5224ABA48941E149362 /* Dither.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Dither.h; path = ../../common/Dither.h; sourceTree = "<group>"; };
|
|
||||||
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RowVisitor.h; path = ../../soundlib/RowVisitor.h; sourceTree = "<group>"; };
|
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RowVisitor.h; path = ../../soundlib/RowVisitor.h; sourceTree = "<group>"; };
|
||||||
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_psm.cpp; path = ../../soundlib/Load_psm.cpp; sourceTree = "<group>"; };
|
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_psm.cpp; path = ../../soundlib/Load_psm.cpp; sourceTree = "<group>"; };
|
||||||
F18CD1F1E58C1B636A773031 /* saturate_cast.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_cast.hpp; path = ../../src/mpt/base/saturate_cast.hpp; sourceTree = "<group>"; };
|
F18CD1F1E58C1B636A773031 /* saturate_cast.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_cast.hpp; path = ../../src/mpt/base/saturate_cast.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -585,6 +627,7 @@
|
||||||
F48DAABB97F4D86DAF2A90FB /* filecursor_traits_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_memory.hpp; path = ../../src/mpt/io_read/filecursor_traits_memory.hpp; sourceTree = "<group>"; };
|
F48DAABB97F4D86DAF2A90FB /* filecursor_traits_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_memory.hpp; path = ../../src/mpt/io_read/filecursor_traits_memory.hpp; sourceTree = "<group>"; };
|
||||||
F5D2F247BC60E9B92A631087 /* libopenmpt.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt.hpp; path = ../../libopenmpt/libopenmpt.hpp; sourceTree = "<group>"; };
|
F5D2F247BC60E9B92A631087 /* libopenmpt.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt.hpp; path = ../../libopenmpt/libopenmpt.hpp; sourceTree = "<group>"; };
|
||||||
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dsm.cpp; path = ../../soundlib/Load_dsm.cpp; sourceTree = "<group>"; };
|
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dsm.cpp; path = ../../soundlib/Load_dsm.cpp; sourceTree = "<group>"; };
|
||||||
|
F5DB217BB89B81ED15D05FBB /* type_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = type_traits.hpp; path = ../../src/mpt/base/type_traits.hpp; sourceTree = "<group>"; };
|
||||||
F61229996734CA8B1CFB77D9 /* guid.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = guid.hpp; path = ../../src/mpt/uuid/guid.hpp; sourceTree = "<group>"; };
|
F61229996734CA8B1CFB77D9 /* guid.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = guid.hpp; path = ../../src/mpt/uuid/guid.hpp; sourceTree = "<group>"; };
|
||||||
F6F37E8F68161F811DDCCCCF /* span.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = span.hpp; path = ../../src/mpt/base/span.hpp; sourceTree = "<group>"; };
|
F6F37E8F68161F811DDCCCCF /* span.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = span.hpp; path = ../../src/mpt/base/span.hpp; sourceTree = "<group>"; };
|
||||||
F78A378464B245F6664535C4 /* mptBaseTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseTypes.h; path = ../../common/mptBaseTypes.h; sourceTree = "<group>"; };
|
F78A378464B245F6664535C4 /* mptBaseTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseTypes.h; path = ../../common/mptBaseTypes.h; sourceTree = "<group>"; };
|
||||||
|
@ -592,12 +635,13 @@
|
||||||
F9D67691EACDE48356D164D1 /* SampleFormatFLAC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatFLAC.cpp; path = ../../soundlib/SampleFormatFLAC.cpp; sourceTree = "<group>"; };
|
F9D67691EACDE48356D164D1 /* SampleFormatFLAC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatFLAC.cpp; path = ../../soundlib/SampleFormatFLAC.cpp; sourceTree = "<group>"; };
|
||||||
FB5FB0E7EF5EFA59744A0F27 /* libopenmpt_ext.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext.hpp; path = ../../libopenmpt/libopenmpt_ext.hpp; sourceTree = "<group>"; };
|
FB5FB0E7EF5EFA59744A0F27 /* libopenmpt_ext.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext.hpp; path = ../../libopenmpt/libopenmpt_ext.hpp; sourceTree = "<group>"; };
|
||||||
FB635E3D352E14EFEA89647D /* filecursor_traits_filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_filedata.hpp; path = ../../src/mpt/io_read/filecursor_traits_filedata.hpp; sourceTree = "<group>"; };
|
FB635E3D352E14EFEA89647D /* filecursor_traits_filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_filedata.hpp; path = ../../src/mpt/io_read/filecursor_traits_filedata.hpp; sourceTree = "<group>"; };
|
||||||
|
FB77AD1D689FBB8F6A32AB5D /* PlayState.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlayState.cpp; path = ../../soundlib/PlayState.cpp; sourceTree = "<group>"; };
|
||||||
FBE197BEECD905B058DC85FE /* serialization_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = serialization_utils.h; path = ../../common/serialization_utils.h; sourceTree = "<group>"; };
|
FBE197BEECD905B058DC85FE /* serialization_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = serialization_utils.h; path = ../../common/serialization_utils.h; sourceTree = "<group>"; };
|
||||||
FBF22E79CF82B5EBC2544CB9 /* libopenmpt_stream_callbacks_file_posix_lfs64.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_posix_lfs64.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_posix_lfs64.h; sourceTree = "<group>"; };
|
FBF22E79CF82B5EBC2544CB9 /* libopenmpt_stream_callbacks_file_posix_lfs64.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_posix_lfs64.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_posix_lfs64.h; sourceTree = "<group>"; };
|
||||||
|
FC83067740D1ABE982F8E4B7 /* float.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = float.hpp; path = ../../src/mpt/base/float.hpp; sourceTree = "<group>"; };
|
||||||
FC85D407DBA2EE39B7AC4A47 /* inputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile.hpp; path = ../../src/mpt/io_file/inputfile.hpp; sourceTree = "<group>"; };
|
FC85D407DBA2EE39B7AC4A47 /* inputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile.hpp; path = ../../src/mpt/io_file/inputfile.hpp; sourceTree = "<group>"; };
|
||||||
FED01DA32FB4159542CC4BE3 /* tuning.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuning.h; path = ../../soundlib/tuning.h; sourceTree = "<group>"; };
|
FED01DA32FB4159542CC4BE3 /* tuning.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuning.h; path = ../../soundlib/tuning.h; sourceTree = "<group>"; };
|
||||||
FEDB3A1791690409FA41A857 /* Echo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Echo.h; path = ../../soundlib/plugins/dmo/Echo.h; sourceTree = "<group>"; };
|
FEDB3A1791690409FA41A857 /* Echo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Echo.h; path = ../../soundlib/plugins/dmo/Echo.h; sourceTree = "<group>"; };
|
||||||
FF7F8F60F37ED8D27869EDA0 /* mptFileTemporary.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileTemporary.cpp; path = ../../common/mptFileTemporary.cpp; sourceTree = "<group>"; };
|
|
||||||
FFB3088F4401AE018628E6CF /* Resampler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Resampler.h; path = ../../soundlib/Resampler.h; sourceTree = "<group>"; };
|
FFB3088F4401AE018628E6CF /* Resampler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Resampler.h; path = ../../soundlib/Resampler.h; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
@ -713,7 +757,6 @@
|
||||||
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */,
|
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */,
|
||||||
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */,
|
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */,
|
||||||
6858F8CA2EE6F03C9CE9170A /* LFOPlugin.h */,
|
6858F8CA2EE6F03C9CE9170A /* LFOPlugin.h */,
|
||||||
9133E604FE5BF476FFEEE444 /* OpCodes.h */,
|
|
||||||
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */,
|
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */,
|
||||||
6058487C545791EED942A6BC /* PlugInterface.h */,
|
6058487C545791EED942A6BC /* PlugInterface.h */,
|
||||||
CE32D5B4DABD882655A253F4 /* PluginManager.cpp */,
|
CE32D5B4DABD882655A253F4 /* PluginManager.cpp */,
|
||||||
|
@ -898,6 +941,7 @@
|
||||||
children = (
|
children = (
|
||||||
64377F84A84B50B69C1CD5C4 /* compiler.hpp */,
|
64377F84A84B50B69C1CD5C4 /* compiler.hpp */,
|
||||||
417FE082D6F69FB44592F6C2 /* libc.hpp */,
|
417FE082D6F69FB44592F6C2 /* libc.hpp */,
|
||||||
|
352971E219707A149D5DA822 /* libcxx.hpp */,
|
||||||
788395FAAA7CE0AC245C1C3A /* mfc.hpp */,
|
788395FAAA7CE0AC245C1C3A /* mfc.hpp */,
|
||||||
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */,
|
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */,
|
||||||
);
|
);
|
||||||
|
@ -1030,9 +1074,9 @@
|
||||||
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */,
|
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */,
|
||||||
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */,
|
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */,
|
||||||
0A20B0FECCE111702A15EF3E /* ComponentManager.h */,
|
0A20B0FECCE111702A15EF3E /* ComponentManager.h */,
|
||||||
EF78F5224ABA48941E149362 /* Dither.h */,
|
|
||||||
6D2350A8B171F61AF3992EE8 /* FileReader.h */,
|
6D2350A8B171F61AF3992EE8 /* FileReader.h */,
|
||||||
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */,
|
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */,
|
||||||
|
B55D7A70F9AC1FE23BD358B0 /* GzipWriter.h */,
|
||||||
830F3566F431D658A9F883A6 /* Logging.cpp */,
|
830F3566F431D658A9F883A6 /* Logging.cpp */,
|
||||||
6303157093E70D62A6FF43B0 /* Logging.h */,
|
6303157093E70D62A6FF43B0 /* Logging.h */,
|
||||||
8F52A05ED3A145D015C87E9E /* Profiler.cpp */,
|
8F52A05ED3A145D015C87E9E /* Profiler.cpp */,
|
||||||
|
@ -1043,9 +1087,7 @@
|
||||||
F78A378464B245F6664535C4 /* mptBaseTypes.h */,
|
F78A378464B245F6664535C4 /* mptBaseTypes.h */,
|
||||||
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */,
|
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */,
|
||||||
BA99A2F415DAF666E9354134 /* mptCPU.h */,
|
BA99A2F415DAF666E9354134 /* mptCPU.h */,
|
||||||
13F63AEAA68404DC0F5CA92A /* mptFileIO.cpp */,
|
|
||||||
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */,
|
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */,
|
||||||
FF7F8F60F37ED8D27869EDA0 /* mptFileTemporary.cpp */,
|
|
||||||
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */,
|
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */,
|
||||||
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */,
|
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */,
|
||||||
AFFB10484288DA3AAB617E88 /* mptFileType.h */,
|
AFFB10484288DA3AAB617E88 /* mptFileType.h */,
|
||||||
|
@ -1116,6 +1158,7 @@
|
||||||
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */,
|
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */,
|
||||||
86260AE5E2AD0F576B4FC925 /* compiletime_warning.hpp */,
|
86260AE5E2AD0F576B4FC925 /* compiletime_warning.hpp */,
|
||||||
021DA33D0EA855AF898D217D /* constexpr_throw.hpp */,
|
021DA33D0EA855AF898D217D /* constexpr_throw.hpp */,
|
||||||
|
C9E029A3906E2115FE7047E3 /* debugging.hpp */,
|
||||||
C3FAC67D5688906FBF6134BD /* detect.hpp */,
|
C3FAC67D5688906FBF6134BD /* detect.hpp */,
|
||||||
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */,
|
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */,
|
||||||
321030713E9AE2E3B97FAEB1 /* detect_compiler.hpp */,
|
321030713E9AE2E3B97FAEB1 /* detect_compiler.hpp */,
|
||||||
|
@ -1123,7 +1166,7 @@
|
||||||
755174CF6950BE41EE3BD30F /* detect_libcxx.hpp */,
|
755174CF6950BE41EE3BD30F /* detect_libcxx.hpp */,
|
||||||
175234BFDDE02C314BE252FF /* detect_os.hpp */,
|
175234BFDDE02C314BE252FF /* detect_os.hpp */,
|
||||||
107683B90475CD2B8960E1F9 /* detect_quirks.hpp */,
|
107683B90475CD2B8960E1F9 /* detect_quirks.hpp */,
|
||||||
4FB7A50743B6EE79C8A20347 /* floatingpoint.hpp */,
|
FC83067740D1ABE982F8E4B7 /* float.hpp */,
|
||||||
787945A7E5A15419E73443E7 /* integer.hpp */,
|
787945A7E5A15419E73443E7 /* integer.hpp */,
|
||||||
C3E634155673FE07BF4CA255 /* macros.hpp */,
|
C3E634155673FE07BF4CA255 /* macros.hpp */,
|
||||||
4614D43FB73775316CFE227F /* math.hpp */,
|
4614D43FB73775316CFE227F /* math.hpp */,
|
||||||
|
@ -1137,9 +1180,11 @@
|
||||||
D941724BCA38E03D363C608B /* saturate_round.hpp */,
|
D941724BCA38E03D363C608B /* saturate_round.hpp */,
|
||||||
85812219180EEC0B80E79059 /* secure.hpp */,
|
85812219180EEC0B80E79059 /* secure.hpp */,
|
||||||
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */,
|
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */,
|
||||||
|
219A364192BCD73348838481 /* size.hpp */,
|
||||||
A105879DAD903A0F287505DD /* source_location.hpp */,
|
A105879DAD903A0F287505DD /* source_location.hpp */,
|
||||||
F6F37E8F68161F811DDCCCCF /* span.hpp */,
|
F6F37E8F68161F811DDCCCCF /* span.hpp */,
|
||||||
8BDA4A4F76C67041BEAC388F /* tests */,
|
8BDA4A4F76C67041BEAC388F /* tests */,
|
||||||
|
F5DB217BB89B81ED15D05FBB /* type_traits.hpp */,
|
||||||
5609DBF3C331EA65C4C4DA33 /* utility.hpp */,
|
5609DBF3C331EA65C4C4DA33 /* utility.hpp */,
|
||||||
AB10601718386E8919CB5E57 /* version.hpp */,
|
AB10601718386E8919CB5E57 /* version.hpp */,
|
||||||
2C28EA4338B39CB5B3986883 /* wrapping_divide.hpp */,
|
2C28EA4338B39CB5B3986883 /* wrapping_divide.hpp */,
|
||||||
|
@ -1258,25 +1303,35 @@
|
||||||
778D494BBBDBEEBDFE03278B /* ITTools.cpp */,
|
778D494BBBDBEEBDFE03278B /* ITTools.cpp */,
|
||||||
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */,
|
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */,
|
||||||
567D9E616834DE53DDA2CCA1 /* InstrumentExtensions.cpp */,
|
567D9E616834DE53DDA2CCA1 /* InstrumentExtensions.cpp */,
|
||||||
|
89879ACD7D86E43F0271F90D /* InstrumentSynth.cpp */,
|
||||||
|
45A87D570868DDC9659DBB97 /* InstrumentSynth.h */,
|
||||||
9E091D790F2BBE6BC4F26BB9 /* IntMixer.h */,
|
9E091D790F2BBE6BC4F26BB9 /* IntMixer.h */,
|
||||||
CB46E6335DD4B025C6AD5473 /* Load_667.cpp */,
|
CB46E6335DD4B025C6AD5473 /* Load_667.cpp */,
|
||||||
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */,
|
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */,
|
||||||
37F80675CA85D067335E74B5 /* Load_amf.cpp */,
|
37F80675CA85D067335E74B5 /* Load_amf.cpp */,
|
||||||
29DC06EFBC69D0E12542752F /* Load_ams.cpp */,
|
29DC06EFBC69D0E12542752F /* Load_ams.cpp */,
|
||||||
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */,
|
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */,
|
||||||
|
EDF8E6598086B04BE95F5499 /* Load_cba.cpp */,
|
||||||
6A66E753FCF4B14565CD5593 /* Load_dbm.cpp */,
|
6A66E753FCF4B14565CD5593 /* Load_dbm.cpp */,
|
||||||
D14936A73E714519400434E7 /* Load_digi.cpp */,
|
D14936A73E714519400434E7 /* Load_digi.cpp */,
|
||||||
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */,
|
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */,
|
||||||
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */,
|
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */,
|
||||||
9BE2D067090ADED90A9DCEA7 /* Load_dsym.cpp */,
|
9BE2D067090ADED90A9DCEA7 /* Load_dsym.cpp */,
|
||||||
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */,
|
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */,
|
||||||
|
14754CCFA70316C10FDBBB0F /* Load_etx.cpp */,
|
||||||
9BB2E75F2E40B1519719559F /* Load_far.cpp */,
|
9BB2E75F2E40B1519719559F /* Load_far.cpp */,
|
||||||
|
B6BBD03FFB0A75B13D31AE7F /* Load_fc.cpp */,
|
||||||
9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */,
|
9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */,
|
||||||
|
0C4FEA7B9EDDB46D07B658BB /* Load_ftm.cpp */,
|
||||||
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */,
|
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */,
|
||||||
|
D668A71B68F6710DD1CF155B /* Load_gmc.cpp */,
|
||||||
10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */,
|
10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */,
|
||||||
|
D727124F69B4DC41D28D808F /* Load_ice.cpp */,
|
||||||
34D45985C7622377303AC7C5 /* Load_imf.cpp */,
|
34D45985C7622377303AC7C5 /* Load_imf.cpp */,
|
||||||
|
26B859FFB94623F1221EC83F /* Load_ims.cpp */,
|
||||||
62235C27A6720199E8993A67 /* Load_it.cpp */,
|
62235C27A6720199E8993A67 /* Load_it.cpp */,
|
||||||
6A572747FCE4F13965BD9587 /* Load_itp.cpp */,
|
6A572747FCE4F13965BD9587 /* Load_itp.cpp */,
|
||||||
|
19B6191F86DE27918871175F /* Load_kris.cpp */,
|
||||||
2052C727B2E091191BB93567 /* Load_mdl.cpp */,
|
2052C727B2E091191BB93567 /* Load_mdl.cpp */,
|
||||||
8F093E392197082B8A6FAC79 /* Load_med.cpp */,
|
8F093E392197082B8A6FAC79 /* Load_med.cpp */,
|
||||||
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */,
|
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */,
|
||||||
|
@ -1288,22 +1343,32 @@
|
||||||
6AE995E9FD775FDB66500429 /* Load_okt.cpp */,
|
6AE995E9FD775FDB66500429 /* Load_okt.cpp */,
|
||||||
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */,
|
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */,
|
||||||
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */,
|
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */,
|
||||||
|
BE474F872B6F5DF92D024DC7 /* Load_pt36.cpp */,
|
||||||
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */,
|
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */,
|
||||||
|
6DB68B53DADE99C5DC718993 /* Load_puma.cpp */,
|
||||||
|
079A67139A2831050300D553 /* Load_rtm.cpp */,
|
||||||
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */,
|
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */,
|
||||||
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */,
|
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */,
|
||||||
|
1D12DDB1AFA0A7A318794BF1 /* Load_stk.cpp */,
|
||||||
0735F17599C3BB67029C5FB5 /* Load_stm.cpp */,
|
0735F17599C3BB67029C5FB5 /* Load_stm.cpp */,
|
||||||
666A8F1BF8F8590D61D0FD5B /* Load_stp.cpp */,
|
666A8F1BF8F8590D61D0FD5B /* Load_stp.cpp */,
|
||||||
7D070D1F43950491B1972B5F /* Load_symmod.cpp */,
|
7D070D1F43950491B1972B5F /* Load_symmod.cpp */,
|
||||||
|
73A166DF062F30D16F07D51F /* Load_tcb.cpp */,
|
||||||
54393E69E6C7085B4F9FACA9 /* Load_uax.cpp */,
|
54393E69E6C7085B4F9FACA9 /* Load_uax.cpp */,
|
||||||
7FD19A57125F64497B380897 /* Load_ult.cpp */,
|
7FD19A57125F64497B380897 /* Load_ult.cpp */,
|
||||||
|
9EEAF28B0C1300FD0DA5F0CB /* Load_unic.cpp */,
|
||||||
694D3F69FBDB095B64B3ADA9 /* Load_wav.cpp */,
|
694D3F69FBDB095B64B3ADA9 /* Load_wav.cpp */,
|
||||||
2A6435F76EB2DB69B0DA1437 /* Load_xm.cpp */,
|
2A6435F76EB2DB69B0DA1437 /* Load_xm.cpp */,
|
||||||
2EF17543C17F3F352A57E383 /* Load_xmf.cpp */,
|
2EF17543C17F3F352A57E383 /* Load_xmf.cpp */,
|
||||||
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */,
|
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */,
|
||||||
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */,
|
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */,
|
||||||
F42AAB0986B874FBEF911949 /* MIDIEvents.h */,
|
F42AAB0986B874FBEF911949 /* MIDIEvents.h */,
|
||||||
|
C61BC533BA1B0EA53F062373 /* MIDIMacroParser.cpp */,
|
||||||
|
E7ACD57DAA6D35EF07A213BD /* MIDIMacroParser.h */,
|
||||||
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */,
|
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */,
|
||||||
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */,
|
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */,
|
||||||
|
99E1AAB12C6F74A3954818F1 /* MODTools.cpp */,
|
||||||
|
8209AB5BF32C4C4DA8F2F99B /* MODTools.h */,
|
||||||
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */,
|
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */,
|
||||||
A0ADCD61E4FC72D32723ABA1 /* MPEGFrame.h */,
|
A0ADCD61E4FC72D32723ABA1 /* MPEGFrame.h */,
|
||||||
681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */,
|
681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */,
|
||||||
|
@ -1331,6 +1396,10 @@
|
||||||
F1E743CB3635E93D785D220B /* OggStream.h */,
|
F1E743CB3635E93D785D220B /* OggStream.h */,
|
||||||
A7A09A55A16256C7DB615895 /* Paula.cpp */,
|
A7A09A55A16256C7DB615895 /* Paula.cpp */,
|
||||||
1AD54F9F7616A3114970EDDF /* Paula.h */,
|
1AD54F9F7616A3114970EDDF /* Paula.h */,
|
||||||
|
FB77AD1D689FBB8F6A32AB5D /* PlayState.cpp */,
|
||||||
|
A35EA1E7E7AD475929D48027 /* PlayState.h */,
|
||||||
|
EDB72A5D8FA0C64F86C7D89D /* PlaybackTest.cpp */,
|
||||||
|
042BC5075B9137F90D9F5347 /* PlaybackTest.h */,
|
||||||
FFB3088F4401AE018628E6CF /* Resampler.h */,
|
FFB3088F4401AE018628E6CF /* Resampler.h */,
|
||||||
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */,
|
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */,
|
||||||
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */,
|
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */,
|
||||||
|
@ -1406,6 +1475,7 @@
|
||||||
F76908210E7BA353FE979E61 /* random */ = {
|
F76908210E7BA353FE979E61 /* random */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
E38574ABA645D51D037AB2EB /* any_engine.hpp */,
|
||||||
8DE932C12076FCB3894FA101 /* crand.hpp */,
|
8DE932C12076FCB3894FA101 /* crand.hpp */,
|
||||||
8876678BE2777E7DA9BE75CB /* default_engines.hpp */,
|
8876678BE2777E7DA9BE75CB /* default_engines.hpp */,
|
||||||
1CE2C4318A0AD2A38B9DC271 /* device.hpp */,
|
1CE2C4318A0AD2A38B9DC271 /* device.hpp */,
|
||||||
|
@ -1434,6 +1504,7 @@
|
||||||
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */,
|
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */,
|
||||||
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */,
|
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */,
|
||||||
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */,
|
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */,
|
||||||
|
1BD71CF93D735A2B35E9F339 /* filedata_base_unseekable_buffer.hpp */,
|
||||||
E0CF51E794CB6B19767DA827 /* filedata_callbackstream.hpp */,
|
E0CF51E794CB6B19767DA827 /* filedata_callbackstream.hpp */,
|
||||||
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */,
|
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */,
|
||||||
CE271C83BB8EAF355888A2C3 /* filedata_stdstream.hpp */,
|
CE271C83BB8EAF355888A2C3 /* filedata_stdstream.hpp */,
|
||||||
|
@ -1557,8 +1628,6 @@
|
||||||
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */,
|
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */,
|
||||||
527E833E969254708A63D97E /* Logging.cpp in Sources */,
|
527E833E969254708A63D97E /* Logging.cpp in Sources */,
|
||||||
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */,
|
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */,
|
||||||
1CD4D902FBF1F334D7FB4F42 /* mptFileIO.cpp in Sources */,
|
|
||||||
BB65D2D86E5BDC8ABF7E3918 /* mptFileTemporary.cpp in Sources */,
|
|
||||||
1F7082161F13654859681856 /* mptFileType.cpp in Sources */,
|
1F7082161F13654859681856 /* mptFileType.cpp in Sources */,
|
||||||
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */,
|
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */,
|
||||||
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */,
|
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */,
|
||||||
|
@ -1584,24 +1653,33 @@
|
||||||
32D83065D0B93117A83776A5 /* ITCompression.cpp in Sources */,
|
32D83065D0B93117A83776A5 /* ITCompression.cpp in Sources */,
|
||||||
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */,
|
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */,
|
||||||
4FD75379AB22A3AB995489B9 /* InstrumentExtensions.cpp in Sources */,
|
4FD75379AB22A3AB995489B9 /* InstrumentExtensions.cpp in Sources */,
|
||||||
|
C6B55BA579AB6557CACDC1E5 /* InstrumentSynth.cpp in Sources */,
|
||||||
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */,
|
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */,
|
||||||
4E13C16F2D30DBA1093A37AF /* Load_669.cpp in Sources */,
|
4E13C16F2D30DBA1093A37AF /* Load_669.cpp in Sources */,
|
||||||
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */,
|
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */,
|
||||||
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */,
|
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */,
|
||||||
44F9DD452416F77700205385 /* Load_c67.cpp in Sources */,
|
44F9DD452416F77700205385 /* Load_c67.cpp in Sources */,
|
||||||
|
2AE422F10A013D23E60A9931 /* Load_cba.cpp in Sources */,
|
||||||
7B65168B5A8230BD368B8CCB /* Load_dbm.cpp in Sources */,
|
7B65168B5A8230BD368B8CCB /* Load_dbm.cpp in Sources */,
|
||||||
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */,
|
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */,
|
||||||
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */,
|
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */,
|
||||||
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */,
|
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */,
|
||||||
D2EFC1DFEDBC3091F18CC81F /* Load_dsym.cpp in Sources */,
|
D2EFC1DFEDBC3091F18CC81F /* Load_dsym.cpp in Sources */,
|
||||||
F5A6792FD4C39361B0CCEF6F /* Load_dtm.cpp in Sources */,
|
F5A6792FD4C39361B0CCEF6F /* Load_dtm.cpp in Sources */,
|
||||||
|
CE9155C7ADAE6FF989B7CC07 /* Load_etx.cpp in Sources */,
|
||||||
D1EA5157B1076B898D10C797 /* Load_far.cpp in Sources */,
|
D1EA5157B1076B898D10C797 /* Load_far.cpp in Sources */,
|
||||||
|
C3D725375C240AE98A6B0B77 /* Load_fc.cpp in Sources */,
|
||||||
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */,
|
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */,
|
||||||
|
609638333FB352651BBCAE73 /* Load_ftm.cpp in Sources */,
|
||||||
707EA3954F9BBDC72BA519D5 /* Load_gdm.cpp in Sources */,
|
707EA3954F9BBDC72BA519D5 /* Load_gdm.cpp in Sources */,
|
||||||
|
81C26ED360DF89053CE8E513 /* Load_gmc.cpp in Sources */,
|
||||||
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */,
|
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */,
|
||||||
|
B464B3479381CD796F8B2987 /* Load_ice.cpp in Sources */,
|
||||||
537472DD32918D0F0E9AE91D /* Load_imf.cpp in Sources */,
|
537472DD32918D0F0E9AE91D /* Load_imf.cpp in Sources */,
|
||||||
|
66139DF74530B829213A1437 /* Load_ims.cpp in Sources */,
|
||||||
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */,
|
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */,
|
||||||
E7C01BBFC6DD35F1A2E691FF /* Load_itp.cpp in Sources */,
|
E7C01BBFC6DD35F1A2E691FF /* Load_itp.cpp in Sources */,
|
||||||
|
C806B217E2D320C9E6A3B857 /* Load_kris.cpp in Sources */,
|
||||||
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */,
|
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */,
|
||||||
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */,
|
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */,
|
||||||
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */,
|
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */,
|
||||||
|
@ -1613,19 +1691,27 @@
|
||||||
49C7038128E41DB304ED79C1 /* Load_okt.cpp in Sources */,
|
49C7038128E41DB304ED79C1 /* Load_okt.cpp in Sources */,
|
||||||
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */,
|
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */,
|
||||||
0CEBFC05EC091637C8127245 /* Load_psm.cpp in Sources */,
|
0CEBFC05EC091637C8127245 /* Load_psm.cpp in Sources */,
|
||||||
|
3E00C2FF58CD31B15C9DC93F /* Load_pt36.cpp in Sources */,
|
||||||
7744F34756620D79326B6987 /* Load_ptm.cpp in Sources */,
|
7744F34756620D79326B6987 /* Load_ptm.cpp in Sources */,
|
||||||
|
877C818BA248F03DA61987CB /* Load_puma.cpp in Sources */,
|
||||||
|
E234B24BC151CC7D9D5B288B /* Load_rtm.cpp in Sources */,
|
||||||
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */,
|
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */,
|
||||||
EA420947C95F2379A5687F87 /* Load_sfx.cpp in Sources */,
|
EA420947C95F2379A5687F87 /* Load_sfx.cpp in Sources */,
|
||||||
|
A88063C9879D7DFB63A6DA09 /* Load_stk.cpp in Sources */,
|
||||||
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */,
|
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */,
|
||||||
FE6ED6D3DD8BF105B9954D13 /* Load_stp.cpp in Sources */,
|
FE6ED6D3DD8BF105B9954D13 /* Load_stp.cpp in Sources */,
|
||||||
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */,
|
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */,
|
||||||
|
19C908D7F8E62309D4EF7F17 /* Load_tcb.cpp in Sources */,
|
||||||
4174F40120920E33FC9B6A41 /* Load_uax.cpp in Sources */,
|
4174F40120920E33FC9B6A41 /* Load_uax.cpp in Sources */,
|
||||||
F4EF37CFD40C5201B015AE0F /* Load_ult.cpp in Sources */,
|
F4EF37CFD40C5201B015AE0F /* Load_ult.cpp in Sources */,
|
||||||
|
84F9B8439FC626F5A396BE83 /* Load_unic.cpp in Sources */,
|
||||||
BD3885019C559F33785EFB41 /* Load_wav.cpp in Sources */,
|
BD3885019C559F33785EFB41 /* Load_wav.cpp in Sources */,
|
||||||
00BB926F99087821C74F78AF /* Load_xm.cpp in Sources */,
|
00BB926F99087821C74F78AF /* Load_xm.cpp in Sources */,
|
||||||
F57A8B7BD497A5ADB0A101BB /* Load_xmf.cpp in Sources */,
|
F57A8B7BD497A5ADB0A101BB /* Load_xmf.cpp in Sources */,
|
||||||
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */,
|
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */,
|
||||||
|
212E136BD4241D1D254679AB /* MIDIMacroParser.cpp in Sources */,
|
||||||
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */,
|
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */,
|
||||||
|
978580C976A29AFB52ABF709 /* MODTools.cpp in Sources */,
|
||||||
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */,
|
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */,
|
||||||
168C3C51AED92203DD202291 /* Message.cpp in Sources */,
|
168C3C51AED92203DD202291 /* Message.cpp in Sources */,
|
||||||
7A5E5DAB8A4389DD76B713EB /* MixFuncTable.cpp in Sources */,
|
7A5E5DAB8A4389DD76B713EB /* MixFuncTable.cpp in Sources */,
|
||||||
|
@ -1638,6 +1724,8 @@
|
||||||
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */,
|
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */,
|
||||||
FD083C9917D4AB4B1BA542D9 /* OggStream.cpp in Sources */,
|
FD083C9917D4AB4B1BA542D9 /* OggStream.cpp in Sources */,
|
||||||
33DB2DAD46050A5F79F5F3ED /* Paula.cpp in Sources */,
|
33DB2DAD46050A5F79F5F3ED /* Paula.cpp in Sources */,
|
||||||
|
98C2B4F5B38F23A7B75FBB35 /* PlayState.cpp in Sources */,
|
||||||
|
9580A935A565D56791D95F75 /* PlaybackTest.cpp in Sources */,
|
||||||
119C6E37113F51694B940477 /* RowVisitor.cpp in Sources */,
|
119C6E37113F51694B940477 /* RowVisitor.cpp in Sources */,
|
||||||
D443016FB3601BA18F6977AF /* S3MTools.cpp in Sources */,
|
D443016FB3601BA18F6977AF /* S3MTools.cpp in Sources */,
|
||||||
77A73F692A9D491B7BBFA5A9 /* SampleFormatBRR.cpp in Sources */,
|
77A73F692A9D491B7BBFA5A9 /* SampleFormatBRR.cpp in Sources */,
|
||||||
|
|
|
@ -20,13 +20,15 @@
|
||||||
1553F71F02BB89D19FB57D5F /* WavesReverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E0A11A78A94C41905798FE7 /* WavesReverb.cpp */; };
|
1553F71F02BB89D19FB57D5F /* WavesReverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7E0A11A78A94C41905798FE7 /* WavesReverb.cpp */; };
|
||||||
168C3C51AED92203DD202291 /* Message.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */; };
|
168C3C51AED92203DD202291 /* Message.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */; };
|
||||||
18C62C9BF7E346CDD3ECA2DB /* SampleIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78CAB4630B587E55743122A3 /* SampleIO.cpp */; };
|
18C62C9BF7E346CDD3ECA2DB /* SampleIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78CAB4630B587E55743122A3 /* SampleIO.cpp */; };
|
||||||
1CD4D902FBF1F334D7FB4F42 /* mptFileIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13F63AEAA68404DC0F5CA92A /* mptFileIO.cpp */; };
|
19C908D7F8E62309D4EF7F17 /* Load_tcb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 73A166DF062F30D16F07D51F /* Load_tcb.cpp */; };
|
||||||
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F52A05ED3A145D015C87E9E /* Profiler.cpp */; };
|
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F52A05ED3A145D015C87E9E /* Profiler.cpp */; };
|
||||||
1E48E6EB2E2E131D1AA19D2B /* Gargle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78BD15B31AA6B1A511CDC3F3 /* Gargle.cpp */; };
|
1E48E6EB2E2E131D1AA19D2B /* Gargle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 78BD15B31AA6B1A511CDC3F3 /* Gargle.cpp */; };
|
||||||
1F7082161F13654859681856 /* mptFileType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 074C76BE5EB1E9B010C004FE /* mptFileType.cpp */; };
|
1F7082161F13654859681856 /* mptFileType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 074C76BE5EB1E9B010C004FE /* mptFileType.cpp */; };
|
||||||
|
212E136BD4241D1D254679AB /* MIDIMacroParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C61BC533BA1B0EA53F062373 /* MIDIMacroParser.cpp */; };
|
||||||
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */; };
|
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */; };
|
||||||
281FA911C06C8EC3EEB38F51 /* Sndfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */; };
|
281FA911C06C8EC3EEB38F51 /* Sndfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */; };
|
||||||
2837D1CEECED2840A15BD00E /* openmpt-ogg.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DFCA7B6A69BE5E8C9C79DF6 /* openmpt-ogg.lib */; };
|
2837D1CEECED2840A15BD00E /* openmpt-ogg.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DFCA7B6A69BE5E8C9C79DF6 /* openmpt-ogg.lib */; };
|
||||||
|
2AE422F10A013D23E60A9931 /* Load_cba.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EDF8E6598086B04BE95F5499 /* Load_cba.cpp */; };
|
||||||
2B1F4A030A3C6435E645C043 /* Load_mo3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */; };
|
2B1F4A030A3C6435E645C043 /* Load_mo3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */; };
|
||||||
30BE965074D2678268A3EC90 /* mptTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B176D8582299794AD8602698 /* mptTime.cpp */; };
|
30BE965074D2678268A3EC90 /* mptTime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B176D8582299794AD8602698 /* mptTime.cpp */; };
|
||||||
30C4FED93067E20B6ABC9519 /* ModChannel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5FDB15C1B74088B3694EA401 /* ModChannel.cpp */; };
|
30C4FED93067E20B6ABC9519 /* ModChannel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5FDB15C1B74088B3694EA401 /* ModChannel.cpp */; };
|
||||||
|
@ -39,6 +41,7 @@
|
||||||
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */; };
|
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */; };
|
||||||
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2052C727B2E091191BB93567 /* Load_mdl.cpp */; };
|
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2052C727B2E091191BB93567 /* Load_mdl.cpp */; };
|
||||||
3C92F25FD4DFD8110326D89F /* Fastmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1054EEE754A3945996CACD27 /* Fastmix.cpp */; };
|
3C92F25FD4DFD8110326D89F /* Fastmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1054EEE754A3945996CACD27 /* Fastmix.cpp */; };
|
||||||
|
3E00C2FF58CD31B15C9DC93F /* Load_pt36.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE474F872B6F5DF92D024DC7 /* Load_pt36.cpp */; };
|
||||||
3EF604A50D1958579427AAE5 /* DSP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2066CCD3D47C03F10A20B0D /* DSP.cpp */; };
|
3EF604A50D1958579427AAE5 /* DSP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E2066CCD3D47C03F10A20B0D /* DSP.cpp */; };
|
||||||
3F8606FDF27C10AF439E6D3D /* SampleFormatMP3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4737ECA53B373617C0224AE5 /* SampleFormatMP3.cpp */; };
|
3F8606FDF27C10AF439E6D3D /* SampleFormatMP3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4737ECA53B373617C0224AE5 /* SampleFormatMP3.cpp */; };
|
||||||
40F236CF2E59C981CB53BD0F /* I3DL2Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA3E0E57B6C8C0C931AD8C97 /* I3DL2Reverb.cpp */; };
|
40F236CF2E59C981CB53BD0F /* I3DL2Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA3E0E57B6C8C0C931AD8C97 /* I3DL2Reverb.cpp */; };
|
||||||
|
@ -55,8 +58,10 @@
|
||||||
56DD54C135FA6EF31203CB01 /* Load_mtm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0990B3299C1E7D1B04F72169 /* Load_mtm.cpp */; };
|
56DD54C135FA6EF31203CB01 /* Load_mtm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0990B3299C1E7D1B04F72169 /* Load_mtm.cpp */; };
|
||||||
574F1261366C2C93127588A1 /* load_j2b.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A33106C935BED0BB9E977509 /* load_j2b.cpp */; };
|
574F1261366C2C93127588A1 /* load_j2b.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A33106C935BED0BB9E977509 /* load_j2b.cpp */; };
|
||||||
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB46E6335DD4B025C6AD5473 /* Load_667.cpp */; };
|
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CB46E6335DD4B025C6AD5473 /* Load_667.cpp */; };
|
||||||
|
609638333FB352651BBCAE73 /* Load_ftm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0C4FEA7B9EDDB46D07B658BB /* Load_ftm.cpp */; };
|
||||||
63B0011DD79878CFF9E6275D /* Load_mus_km.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */; };
|
63B0011DD79878CFF9E6275D /* Load_mus_km.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */; };
|
||||||
6600F8E10024EE13B04ACF21 /* ContainerMMCMP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */; };
|
6600F8E10024EE13B04ACF21 /* ContainerMMCMP.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */; };
|
||||||
|
66139DF74530B829213A1437 /* Load_ims.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26B859FFB94623F1221EC83F /* Load_ims.cpp */; };
|
||||||
689E270C1013C2BEB8D8CD4C /* DigiBoosterEcho.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D078EDD4AF1B894663FD8C14 /* DigiBoosterEcho.cpp */; };
|
689E270C1013C2BEB8D8CD4C /* DigiBoosterEcho.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D078EDD4AF1B894663FD8C14 /* DigiBoosterEcho.cpp */; };
|
||||||
69AC6475078D6527DF0BAAB5 /* ParamEq.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C3D549D4EFDB50FAC3292DD /* ParamEq.cpp */; };
|
69AC6475078D6527DF0BAAB5 /* ParamEq.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C3D549D4EFDB50FAC3292DD /* ParamEq.cpp */; };
|
||||||
6A44FDD1AE58CF03A22A5411 /* tuning.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48199D39B93C3E2B6F02EB79 /* tuning.cpp */; };
|
6A44FDD1AE58CF03A22A5411 /* tuning.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 48199D39B93C3E2B6F02EB79 /* tuning.cpp */; };
|
||||||
|
@ -69,18 +74,24 @@
|
||||||
7DDE7A6B76A93A1D011DA0AB /* SampleFormatMediaFoundation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D2D268330651A7A51E4B8673 /* SampleFormatMediaFoundation.cpp */; };
|
7DDE7A6B76A93A1D011DA0AB /* SampleFormatMediaFoundation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D2D268330651A7A51E4B8673 /* SampleFormatMediaFoundation.cpp */; };
|
||||||
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62235C27A6720199E8993A67 /* Load_it.cpp */; };
|
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 62235C27A6720199E8993A67 /* Load_it.cpp */; };
|
||||||
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */; };
|
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */; };
|
||||||
|
81C26ED360DF89053CE8E513 /* Load_gmc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D668A71B68F6710DD1CF155B /* Load_gmc.cpp */; };
|
||||||
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D14936A73E714519400434E7 /* Load_digi.cpp */; };
|
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D14936A73E714519400434E7 /* Load_digi.cpp */; };
|
||||||
84A9E60B844CC93DBEA17C4B /* MixerLoops.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */; };
|
84A9E60B844CC93DBEA17C4B /* MixerLoops.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */; };
|
||||||
|
84F9B8439FC626F5A396BE83 /* Load_unic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9EEAF28B0C1300FD0DA5F0CB /* Load_unic.cpp */; };
|
||||||
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */; };
|
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */; };
|
||||||
8751165421750B86D19AEC94 /* mptStringBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C510221C396A670EB74DF05C /* mptStringBuffer.cpp */; };
|
8751165421750B86D19AEC94 /* mptStringBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C510221C396A670EB74DF05C /* mptStringBuffer.cpp */; };
|
||||||
|
877C818BA248F03DA61987CB /* Load_puma.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6DB68B53DADE99C5DC718993 /* Load_puma.cpp */; };
|
||||||
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */; };
|
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */; };
|
||||||
8D04F5E56C221017482B6C25 /* WAVTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */; };
|
8D04F5E56C221017482B6C25 /* WAVTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */; };
|
||||||
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC1456C17EA220B3E77AC501 /* Load_mid.cpp */; };
|
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC1456C17EA220B3E77AC501 /* Load_mid.cpp */; };
|
||||||
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D6A74BCEFF83EAE58D0E2FC /* mptRandom.cpp */; };
|
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5D6A74BCEFF83EAE58D0E2FC /* mptRandom.cpp */; };
|
||||||
|
9580A935A565D56791D95F75 /* PlaybackTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EDB72A5D8FA0C64F86C7D89D /* PlaybackTest.cpp */; };
|
||||||
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */; };
|
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */; };
|
||||||
976568F7F2B0B929E0E29F37 /* libopenmpt_ext_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */; };
|
976568F7F2B0B929E0E29F37 /* libopenmpt_ext_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */; };
|
||||||
|
978580C976A29AFB52ABF709 /* MODTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 99E1AAB12C6F74A3954818F1 /* MODTools.cpp */; };
|
||||||
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0735F17599C3BB67029C5FB5 /* Load_stm.cpp */; };
|
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0735F17599C3BB67029C5FB5 /* Load_stm.cpp */; };
|
||||||
97B1A0C5975483F7D1A93705 /* Echo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9C9696EDF3FC09DFA60A252D /* Echo.cpp */; };
|
97B1A0C5975483F7D1A93705 /* Echo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9C9696EDF3FC09DFA60A252D /* Echo.cpp */; };
|
||||||
|
98C2B4F5B38F23A7B75FBB35 /* PlayState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FB77AD1D689FBB8F6A32AB5D /* PlayState.cpp */; };
|
||||||
9F1029ABB9DC985DBDAD2FEB /* ModSample.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A32EC1731056CFE511E9BFB3 /* ModSample.cpp */; };
|
9F1029ABB9DC985DBDAD2FEB /* ModSample.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A32EC1731056CFE511E9BFB3 /* ModSample.cpp */; };
|
||||||
9F2D020A8C9494BC298E884A /* PlugInterface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D89E49F2E528FC64600DC832 /* PlugInterface.cpp */; };
|
9F2D020A8C9494BC298E884A /* PlugInterface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D89E49F2E528FC64600DC832 /* PlugInterface.cpp */; };
|
||||||
9FC1BA253DA2BAD715210065 /* Flanger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3286C74DF54727BF527C058D /* Flanger.cpp */; };
|
9FC1BA253DA2BAD715210065 /* Flanger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3286C74DF54727BF527C058D /* Flanger.cpp */; };
|
||||||
|
@ -88,17 +99,18 @@
|
||||||
A5815DFEB5CE41F0B3BB0C3E /* openmpt-vorbis.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = E7CD47E68F42E3983807EE26 /* openmpt-vorbis.lib */; };
|
A5815DFEB5CE41F0B3BB0C3E /* openmpt-vorbis.lib in Frameworks */ = {isa = PBXBuildFile; fileRef = E7CD47E68F42E3983807EE26 /* openmpt-vorbis.lib */; };
|
||||||
A5DAFA6B19C3721D3C1120AB /* WindowedFIR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14715833DAFF4FA549017673 /* WindowedFIR.cpp */; };
|
A5DAFA6B19C3721D3C1120AB /* WindowedFIR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14715833DAFF4FA549017673 /* WindowedFIR.cpp */; };
|
||||||
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37F80675CA85D067335E74B5 /* Load_amf.cpp */; };
|
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37F80675CA85D067335E74B5 /* Load_amf.cpp */; };
|
||||||
|
A88063C9879D7DFB63A6DA09 /* Load_stk.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D12DDB1AFA0A7A318794BF1 /* Load_stk.cpp */; };
|
||||||
A896F1F84677F2AA1DF63838 /* LFOPlugin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */; };
|
A896F1F84677F2AA1DF63838 /* LFOPlugin.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */; };
|
||||||
A9C7C28B051312BDF344F8CB /* AudioCriticalSection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3947FF534AFF3F45C06D2D93 /* AudioCriticalSection.cpp */; };
|
A9C7C28B051312BDF344F8CB /* AudioCriticalSection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3947FF534AFF3F45C06D2D93 /* AudioCriticalSection.cpp */; };
|
||||||
A9D47C71514A1823FA0F22B1 /* SoundFilePlayConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F19DB8D9D040544B85225719 /* SoundFilePlayConfig.cpp */; };
|
A9D47C71514A1823FA0F22B1 /* SoundFilePlayConfig.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F19DB8D9D040544B85225719 /* SoundFilePlayConfig.cpp */; };
|
||||||
AB7FFC4D9117037F545C128D /* mod_specifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 274EB9F5814FD0E74896C835 /* mod_specifications.cpp */; };
|
AB7FFC4D9117037F545C128D /* mod_specifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 274EB9F5814FD0E74896C835 /* mod_specifications.cpp */; };
|
||||||
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3A14F450EE2A2B7E23CED85 /* OPL.cpp */; };
|
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B3A14F450EE2A2B7E23CED85 /* OPL.cpp */; };
|
||||||
B17E84D14F5F858326DDCB11 /* ContainerPP20.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38019939FAC1F9AB57F6D779 /* ContainerPP20.cpp */; };
|
B17E84D14F5F858326DDCB11 /* ContainerPP20.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38019939FAC1F9AB57F6D779 /* ContainerPP20.cpp */; };
|
||||||
|
B464B3479381CD796F8B2987 /* Load_ice.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D727124F69B4DC41D28D808F /* Load_ice.cpp */; };
|
||||||
B5220D6D8345611F0A53B3AD /* AGC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BFC43D151B059087EE5FDB55 /* AGC.cpp */; };
|
B5220D6D8345611F0A53B3AD /* AGC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BFC43D151B059087EE5FDB55 /* AGC.cpp */; };
|
||||||
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */; };
|
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */; };
|
||||||
B5D9190DF9ECEA3FEDBE6F4D /* Sndmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */; };
|
B5D9190DF9ECEA3FEDBE6F4D /* Sndmix.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */; };
|
||||||
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29DC06EFBC69D0E12542752F /* Load_ams.cpp */; };
|
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29DC06EFBC69D0E12542752F /* Load_ams.cpp */; };
|
||||||
BB65D2D86E5BDC8ABF7E3918 /* mptFileTemporary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FF7F8F60F37ED8D27869EDA0 /* mptFileTemporary.cpp */; };
|
|
||||||
BBC2281DFFD5F94FF3A77E5D /* Tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 488AACC5B9AD4DB76F73FB05 /* Tables.cpp */; };
|
BBC2281DFFD5F94FF3A77E5D /* Tables.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 488AACC5B9AD4DB76F73FB05 /* Tables.cpp */; };
|
||||||
BC15882904B4C65B27E07E69 /* patternContainer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BE9A4117CE11203E8E49251 /* patternContainer.cpp */; };
|
BC15882904B4C65B27E07E69 /* patternContainer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BE9A4117CE11203E8E49251 /* patternContainer.cpp */; };
|
||||||
BCC110A956E505DB070AE6E9 /* DMOUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 664DAA91DAA7EF83588B78D1 /* DMOUtils.cpp */; };
|
BCC110A956E505DB070AE6E9 /* DMOUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 664DAA91DAA7EF83588B78D1 /* DMOUtils.cpp */; };
|
||||||
|
@ -106,13 +118,17 @@
|
||||||
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */; };
|
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */; };
|
||||||
BE9B2A6B02AEFB9DF68080AB /* Snd_fx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */; };
|
BE9B2A6B02AEFB9DF68080AB /* Snd_fx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */; };
|
||||||
C0082C03041BFD35F7ED8243 /* Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B50C144B262EB53DDBF5628B /* Reverb.cpp */; };
|
C0082C03041BFD35F7ED8243 /* Reverb.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B50C144B262EB53DDBF5628B /* Reverb.cpp */; };
|
||||||
|
C3D725375C240AE98A6B0B77 /* Load_fc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B6BBD03FFB0A75B13D31AE7F /* Load_fc.cpp */; };
|
||||||
C55C8AFDA479A52F8083013D /* UMXTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */; };
|
C55C8AFDA479A52F8083013D /* UMXTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */; };
|
||||||
|
C6B55BA579AB6557CACDC1E5 /* InstrumentSynth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 89879ACD7D86E43F0271F90D /* InstrumentSynth.cpp */; };
|
||||||
C746074BA663217D826C7D8B /* Load_mt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */; };
|
C746074BA663217D826C7D8B /* Load_mt2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */; };
|
||||||
C79768571036A68933625E97 /* libopenmpt_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7F22B5FF701A23F1DC1DA43F /* libopenmpt_impl.cpp */; };
|
C79768571036A68933625E97 /* libopenmpt_impl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7F22B5FF701A23F1DC1DA43F /* libopenmpt_impl.cpp */; };
|
||||||
|
C806B217E2D320C9E6A3B857 /* Load_kris.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 19B6191F86DE27918871175F /* Load_kris.cpp */; };
|
||||||
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36CAA59BC9586F8D323113DB /* Load_dmf.cpp */; };
|
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36CAA59BC9586F8D323113DB /* Load_dmf.cpp */; };
|
||||||
CB31B3AF3F1A2B616167D9EF /* modsmp_ctrl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */; };
|
CB31B3AF3F1A2B616167D9EF /* modsmp_ctrl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */; };
|
||||||
CC12FBA114B239D337DDF1E1 /* Compressor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9334A009842C0DFBF02F8E49 /* Compressor.cpp */; };
|
CC12FBA114B239D337DDF1E1 /* Compressor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9334A009842C0DFBF02F8E49 /* Compressor.cpp */; };
|
||||||
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */; };
|
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */; };
|
||||||
|
CE9155C7ADAE6FF989B7CC07 /* Load_etx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14754CCFA70316C10FDBBB0F /* Load_etx.cpp */; };
|
||||||
CEDA1F2FDEBF4B61CB32D56F /* Chorus.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84A787B7269123A91DB835F7 /* Chorus.cpp */; };
|
CEDA1F2FDEBF4B61CB32D56F /* Chorus.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84A787B7269123A91DB835F7 /* Chorus.cpp */; };
|
||||||
CF000469179F429B3ACAFAA9 /* tuningCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DFE0BC51D0D82A433CDBAA91 /* tuningCollection.cpp */; };
|
CF000469179F429B3ACAFAA9 /* tuningCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DFE0BC51D0D82A433CDBAA91 /* tuningCollection.cpp */; };
|
||||||
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7D070D1F43950491B1972B5F /* Load_symmod.cpp */; };
|
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7D070D1F43950491B1972B5F /* Load_symmod.cpp */; };
|
||||||
|
@ -126,6 +142,7 @@
|
||||||
DEB582A5DE5865D718AD18E5 /* modcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 746376CDCBC8E9BF7DD7050D /* modcommand.cpp */; };
|
DEB582A5DE5865D718AD18E5 /* modcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 746376CDCBC8E9BF7DD7050D /* modcommand.cpp */; };
|
||||||
DEBC9FDC22D0710E16A1F61C /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E2FDF24AF52801665192D64 /* version.cpp */; };
|
DEBC9FDC22D0710E16A1F61C /* version.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3E2FDF24AF52801665192D64 /* version.cpp */; };
|
||||||
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B406AC2ED2A06B4E4511902 /* mptPathString.cpp */; };
|
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B406AC2ED2A06B4E4511902 /* mptPathString.cpp */; };
|
||||||
|
E234B24BC151CC7D9D5B288B /* Load_rtm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 079A67139A2831050300D553 /* Load_rtm.cpp */; };
|
||||||
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 778D494BBBDBEEBDFE03278B /* ITTools.cpp */; };
|
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 778D494BBBDBEEBDFE03278B /* ITTools.cpp */; };
|
||||||
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F093E392197082B8A6FAC79 /* Load_med.cpp */; };
|
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8F093E392197082B8A6FAC79 /* Load_med.cpp */; };
|
||||||
E79434E3857535955CF37B23 /* SampleFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DD65792BA025D99DFD5AB76B /* SampleFormats.cpp */; };
|
E79434E3857535955CF37B23 /* SampleFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DD65792BA025D99DFD5AB76B /* SampleFormats.cpp */; };
|
||||||
|
@ -198,6 +215,7 @@
|
||||||
02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mus_km.cpp; path = ../../soundlib/Load_mus_km.cpp; sourceTree = "<group>"; };
|
02F4B8C5C982B0373784D705 /* Load_mus_km.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mus_km.cpp; path = ../../soundlib/Load_mus_km.cpp; sourceTree = "<group>"; };
|
||||||
03BF85B7480E2B298A3563F7 /* TinyFFT.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TinyFFT.cpp; path = ../../soundlib/TinyFFT.cpp; sourceTree = "<group>"; };
|
03BF85B7480E2B298A3563F7 /* TinyFFT.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TinyFFT.cpp; path = ../../soundlib/TinyFFT.cpp; sourceTree = "<group>"; };
|
||||||
04155894998C17C608286ED4 /* openmpt-mpg123.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "mpg123.xcodeproj"; path = ext/mpg123.xcodeproj; sourceTree = SOURCE_ROOT; };
|
04155894998C17C608286ED4 /* openmpt-mpg123.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "mpg123.xcodeproj"; path = ext/mpg123.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||||
|
042BC5075B9137F90D9F5347 /* PlaybackTest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PlaybackTest.h; path = ../../soundlib/PlaybackTest.h; sourceTree = "<group>"; };
|
||||||
046F30B171973F23732A2EF1 /* numeric.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = numeric.hpp; path = ../../src/mpt/base/numeric.hpp; sourceTree = "<group>"; };
|
046F30B171973F23732A2EF1 /* numeric.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = numeric.hpp; path = ../../src/mpt/base/numeric.hpp; sourceTree = "<group>"; };
|
||||||
04D4FEEB3466CDDD0F740D2B /* EQ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = EQ.cpp; path = ../../sounddsp/EQ.cpp; sourceTree = "<group>"; };
|
04D4FEEB3466CDDD0F740D2B /* EQ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = EQ.cpp; path = ../../sounddsp/EQ.cpp; sourceTree = "<group>"; };
|
||||||
04EAEC77C7AB4CE924E02AB7 /* DMOPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOPlugin.h; path = ../../soundlib/plugins/dmo/DMOPlugin.h; sourceTree = "<group>"; };
|
04EAEC77C7AB4CE924E02AB7 /* DMOPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOPlugin.h; path = ../../soundlib/plugins/dmo/DMOPlugin.h; sourceTree = "<group>"; };
|
||||||
|
@ -206,6 +224,7 @@
|
||||||
073F0DABFB3E571D80296BEB /* SampleFormatSFZ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatSFZ.cpp; path = ../../soundlib/SampleFormatSFZ.cpp; sourceTree = "<group>"; };
|
073F0DABFB3E571D80296BEB /* SampleFormatSFZ.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatSFZ.cpp; path = ../../soundlib/SampleFormatSFZ.cpp; sourceTree = "<group>"; };
|
||||||
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileType.cpp; path = ../../common/mptFileType.cpp; sourceTree = "<group>"; };
|
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileType.cpp; path = ../../common/mptFileType.cpp; sourceTree = "<group>"; };
|
||||||
07580841CEBCC33359749681 /* tests_string_utility.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_utility.hpp; path = ../../src/mpt/string/tests/tests_string_utility.hpp; sourceTree = "<group>"; };
|
07580841CEBCC33359749681 /* tests_string_utility.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_utility.hpp; path = ../../src/mpt/string/tests/tests_string_utility.hpp; sourceTree = "<group>"; };
|
||||||
|
079A67139A2831050300D553 /* Load_rtm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_rtm.cpp; path = ../../soundlib/Load_rtm.cpp; sourceTree = "<group>"; };
|
||||||
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_memory.hpp; path = ../../src/mpt/io_read/filedata_memory.hpp; sourceTree = "<group>"; };
|
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_memory.hpp; path = ../../src/mpt/io_read/filedata_memory.hpp; sourceTree = "<group>"; };
|
||||||
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ptm.cpp; path = ../../soundlib/Load_ptm.cpp; sourceTree = "<group>"; };
|
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ptm.cpp; path = ../../soundlib/Load_ptm.cpp; sourceTree = "<group>"; };
|
||||||
09387CD815C32F4A90A7FB18 /* PluginMixBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginMixBuffer.h; path = ../../soundlib/plugins/PluginMixBuffer.h; sourceTree = "<group>"; };
|
09387CD815C32F4A90A7FB18 /* PluginMixBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginMixBuffer.h; path = ../../soundlib/plugins/PluginMixBuffer.h; sourceTree = "<group>"; };
|
||||||
|
@ -214,6 +233,7 @@
|
||||||
09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modsmp_ctrl.cpp; path = ../../soundlib/modsmp_ctrl.cpp; sourceTree = "<group>"; };
|
09E33737D0712EA93E735577 /* modsmp_ctrl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modsmp_ctrl.cpp; path = ../../soundlib/modsmp_ctrl.cpp; sourceTree = "<group>"; };
|
||||||
0A20B0FECCE111702A15EF3E /* ComponentManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ComponentManager.h; path = ../../common/ComponentManager.h; sourceTree = "<group>"; };
|
0A20B0FECCE111702A15EF3E /* ComponentManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ComponentManager.h; path = ../../common/ComponentManager.h; sourceTree = "<group>"; };
|
||||||
0BC4F1DBADAE8DCDA4D5A01B /* ContainerXPK.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerXPK.cpp; path = ../../soundlib/ContainerXPK.cpp; sourceTree = "<group>"; };
|
0BC4F1DBADAE8DCDA4D5A01B /* ContainerXPK.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerXPK.cpp; path = ../../soundlib/ContainerXPK.cpp; sourceTree = "<group>"; };
|
||||||
|
0C4FEA7B9EDDB46D07B658BB /* Load_ftm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ftm.cpp; path = ../../soundlib/Load_ftm.cpp; sourceTree = "<group>"; };
|
||||||
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dtm.cpp; path = ../../soundlib/Load_dtm.cpp; sourceTree = "<group>"; };
|
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dtm.cpp; path = ../../soundlib/Load_dtm.cpp; sourceTree = "<group>"; };
|
||||||
0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mt2.cpp; path = ../../soundlib/Load_mt2.cpp; sourceTree = "<group>"; };
|
0E85EC13A113B60509EC5A53 /* Load_mt2.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mt2.cpp; path = ../../soundlib/Load_mt2.cpp; sourceTree = "<group>"; };
|
||||||
0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mo3.cpp; path = ../../soundlib/Load_mo3.cpp; sourceTree = "<group>"; };
|
0F49974BA1D7613D0AB0058B /* Load_mo3.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mo3.cpp; path = ../../soundlib/Load_mo3.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -225,9 +245,9 @@
|
||||||
1197459E05968F108A81A3DE /* feature_flags.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = feature_flags.hpp; path = ../../src/mpt/arch/feature_flags.hpp; sourceTree = "<group>"; };
|
1197459E05968F108A81A3DE /* feature_flags.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = feature_flags.hpp; path = ../../src/mpt/arch/feature_flags.hpp; sourceTree = "<group>"; };
|
||||||
124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerMMCMP.cpp; path = ../../soundlib/ContainerMMCMP.cpp; sourceTree = "<group>"; };
|
124C374986A67C3B048A0589 /* ContainerMMCMP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerMMCMP.cpp; path = ../../soundlib/ContainerMMCMP.cpp; sourceTree = "<group>"; };
|
||||||
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseUtils.h; path = ../../common/mptBaseUtils.h; sourceTree = "<group>"; };
|
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseUtils.h; path = ../../common/mptBaseUtils.h; sourceTree = "<group>"; };
|
||||||
13F63AEAA68404DC0F5CA92A /* mptFileIO.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileIO.cpp; path = ../../common/mptFileIO.cpp; sourceTree = "<group>"; };
|
|
||||||
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ComponentManager.cpp; path = ../../common/ComponentManager.cpp; sourceTree = "<group>"; };
|
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ComponentManager.cpp; path = ../../common/ComponentManager.cpp; sourceTree = "<group>"; };
|
||||||
14715833DAFF4FA549017673 /* WindowedFIR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WindowedFIR.cpp; path = ../../soundlib/WindowedFIR.cpp; sourceTree = "<group>"; };
|
14715833DAFF4FA549017673 /* WindowedFIR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WindowedFIR.cpp; path = ../../soundlib/WindowedFIR.cpp; sourceTree = "<group>"; };
|
||||||
|
14754CCFA70316C10FDBBB0F /* Load_etx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_etx.cpp; path = ../../soundlib/Load_etx.cpp; sourceTree = "<group>"; };
|
||||||
159B6F7E099AB8F08E85CDBE /* PluginManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginManager.h; path = ../../soundlib/plugins/PluginManager.h; sourceTree = "<group>"; };
|
159B6F7E099AB8F08E85CDBE /* PluginManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PluginManager.h; path = ../../soundlib/plugins/PluginManager.h; sourceTree = "<group>"; };
|
||||||
15A918AF09A862218E9376EF /* aligned_array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = aligned_array.hpp; path = ../../src/mpt/base/aligned_array.hpp; sourceTree = "<group>"; };
|
15A918AF09A862218E9376EF /* aligned_array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = aligned_array.hpp; path = ../../src/mpt/base/aligned_array.hpp; sourceTree = "<group>"; };
|
||||||
1679D9615AC87ED39CEFB7A1 /* alloc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = alloc.hpp; path = ../../src/mpt/base/alloc.hpp; sourceTree = "<group>"; };
|
1679D9615AC87ED39CEFB7A1 /* alloc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = alloc.hpp; path = ../../src/mpt/base/alloc.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -235,15 +255,18 @@
|
||||||
178BC3E3DA4C245537810223 /* native_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = native_path.hpp; path = ../../src/mpt/path/native_path.hpp; sourceTree = "<group>"; };
|
178BC3E3DA4C245537810223 /* native_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = native_path.hpp; path = ../../src/mpt/path/native_path.hpp; sourceTree = "<group>"; };
|
||||||
17F58A2FDAB5EAA137EAC86F /* detect_libc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_libc.hpp; path = ../../src/mpt/base/detect_libc.hpp; sourceTree = "<group>"; };
|
17F58A2FDAB5EAA137EAC86F /* detect_libc.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_libc.hpp; path = ../../src/mpt/base/detect_libc.hpp; sourceTree = "<group>"; };
|
||||||
18A72A335CF5CFA59F1D0873 /* seed.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = seed.hpp; path = ../../src/mpt/random/seed.hpp; sourceTree = "<group>"; };
|
18A72A335CF5CFA59F1D0873 /* seed.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = seed.hpp; path = ../../src/mpt/random/seed.hpp; sourceTree = "<group>"; };
|
||||||
|
19B6191F86DE27918871175F /* Load_kris.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_kris.cpp; path = ../../soundlib/Load_kris.cpp; sourceTree = "<group>"; };
|
||||||
1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndmix.cpp; path = ../../soundlib/Sndmix.cpp; sourceTree = "<group>"; };
|
1A0FD6B58B3277A740F924F5 /* Sndmix.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndmix.cpp; path = ../../soundlib/Sndmix.cpp; sourceTree = "<group>"; };
|
||||||
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RowVisitor.cpp; path = ../../soundlib/RowVisitor.cpp; sourceTree = "<group>"; };
|
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RowVisitor.cpp; path = ../../soundlib/RowVisitor.cpp; sourceTree = "<group>"; };
|
||||||
1A94BBC4BC7E57B6B3A56A04 /* mptStringFormat.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringFormat.h; path = ../../common/mptStringFormat.h; sourceTree = "<group>"; };
|
1A94BBC4BC7E57B6B3A56A04 /* mptStringFormat.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringFormat.h; path = ../../common/mptStringFormat.h; sourceTree = "<group>"; };
|
||||||
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = check_platform.hpp; path = ../../src/mpt/base/check_platform.hpp; sourceTree = "<group>"; };
|
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = check_platform.hpp; path = ../../src/mpt/base/check_platform.hpp; sourceTree = "<group>"; };
|
||||||
1AD54F9F7616A3114970EDDF /* Paula.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Paula.h; path = ../../soundlib/Paula.h; sourceTree = "<group>"; };
|
1AD54F9F7616A3114970EDDF /* Paula.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Paula.h; path = ../../soundlib/Paula.h; sourceTree = "<group>"; };
|
||||||
1B5F95F15FAE3B63A1D57431 /* Tagging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Tagging.cpp; path = ../../soundlib/Tagging.cpp; sourceTree = "<group>"; };
|
1B5F95F15FAE3B63A1D57431 /* Tagging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Tagging.cpp; path = ../../soundlib/Tagging.cpp; sourceTree = "<group>"; };
|
||||||
|
1BD71CF93D735A2B35E9F339 /* filedata_base_unseekable_buffer.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_unseekable_buffer.hpp; path = ../../src/mpt/io_read/filedata_base_unseekable_buffer.hpp; sourceTree = "<group>"; };
|
||||||
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_arch.hpp; path = ../../src/mpt/base/detect_arch.hpp; sourceTree = "<group>"; };
|
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect_arch.hpp; path = ../../src/mpt/base/detect_arch.hpp; sourceTree = "<group>"; };
|
||||||
1C6D52530D64C04579684093 /* SampleFormatOpus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatOpus.cpp; path = ../../soundlib/SampleFormatOpus.cpp; sourceTree = "<group>"; };
|
1C6D52530D64C04579684093 /* SampleFormatOpus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatOpus.cpp; path = ../../soundlib/SampleFormatOpus.cpp; sourceTree = "<group>"; };
|
||||||
1CE2C4318A0AD2A38B9DC271 /* device.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = device.hpp; path = ../../src/mpt/random/device.hpp; sourceTree = "<group>"; };
|
1CE2C4318A0AD2A38B9DC271 /* device.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = device.hpp; path = ../../src/mpt/random/device.hpp; sourceTree = "<group>"; };
|
||||||
|
1D12DDB1AFA0A7A318794BF1 /* Load_stk.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_stk.cpp; path = ../../soundlib/Load_stk.cpp; sourceTree = "<group>"; };
|
||||||
1E7AA06D8BA2AEDF8D359EAD /* simple.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple.hpp; path = ../../src/mpt/format/simple.hpp; sourceTree = "<group>"; };
|
1E7AA06D8BA2AEDF8D359EAD /* simple.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple.hpp; path = ../../src/mpt/format/simple.hpp; sourceTree = "<group>"; };
|
||||||
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_s3m.cpp; path = ../../soundlib/Load_s3m.cpp; sourceTree = "<group>"; };
|
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_s3m.cpp; path = ../../soundlib/Load_s3m.cpp; sourceTree = "<group>"; };
|
||||||
1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WAVTools.cpp; path = ../../soundlib/WAVTools.cpp; sourceTree = "<group>"; };
|
1F5AB80DB1E881FF1AC1264D /* WAVTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WAVTools.cpp; path = ../../soundlib/WAVTools.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -252,12 +275,14 @@
|
||||||
20B693A5E7448B175546B1E5 /* MixerSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerSettings.h; path = ../../soundlib/MixerSettings.h; sourceTree = "<group>"; };
|
20B693A5E7448B175546B1E5 /* MixerSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerSettings.h; path = ../../soundlib/MixerSettings.h; sourceTree = "<group>"; };
|
||||||
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = semantic_version.hpp; path = ../../src/mpt/base/semantic_version.hpp; sourceTree = "<group>"; };
|
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = semantic_version.hpp; path = ../../src/mpt/base/semantic_version.hpp; sourceTree = "<group>"; };
|
||||||
2151B0037C9303754FED4E43 /* Mixer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Mixer.h; path = ../../soundlib/Mixer.h; sourceTree = "<group>"; };
|
2151B0037C9303754FED4E43 /* Mixer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Mixer.h; path = ../../soundlib/Mixer.h; sourceTree = "<group>"; };
|
||||||
|
219A364192BCD73348838481 /* size.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = size.hpp; path = ../../src/mpt/base/size.hpp; sourceTree = "<group>"; };
|
||||||
22594181666D12B35A3E97C1 /* fileref.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = fileref.hpp; path = ../../src/mpt/io_file/fileref.hpp; sourceTree = "<group>"; };
|
22594181666D12B35A3E97C1 /* fileref.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = fileref.hpp; path = ../../src/mpt/io_file/fileref.hpp; sourceTree = "<group>"; };
|
||||||
2323E4A5944685974A0D32E5 /* Snd_defs.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Snd_defs.h; path = ../../soundlib/Snd_defs.h; sourceTree = "<group>"; };
|
2323E4A5944685974A0D32E5 /* Snd_defs.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Snd_defs.h; path = ../../soundlib/Snd_defs.h; sourceTree = "<group>"; };
|
||||||
236E8DFB1D304A6D572F4C3B /* Tagging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Tagging.h; path = ../../soundlib/Tagging.h; sourceTree = "<group>"; };
|
236E8DFB1D304A6D572F4C3B /* Tagging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Tagging.h; path = ../../soundlib/Tagging.h; sourceTree = "<group>"; };
|
||||||
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_buffered.hpp; path = ../../src/mpt/io_read/filedata_base_buffered.hpp; sourceTree = "<group>"; };
|
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_buffered.hpp; path = ../../src/mpt/io_read/filedata_base_buffered.hpp; sourceTree = "<group>"; };
|
||||||
25972C49C780C83BBEA7DA89 /* ContainerUMX.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerUMX.cpp; path = ../../soundlib/ContainerUMX.cpp; sourceTree = "<group>"; };
|
25972C49C780C83BBEA7DA89 /* ContainerUMX.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ContainerUMX.cpp; path = ../../soundlib/ContainerUMX.cpp; sourceTree = "<group>"; };
|
||||||
25EAC3A1C044AC93FC7D11E1 /* unique_basename.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = unique_basename.hpp; path = ../../src/mpt/io_file_unique/unique_basename.hpp; sourceTree = "<group>"; };
|
25EAC3A1C044AC93FC7D11E1 /* unique_basename.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = unique_basename.hpp; path = ../../src/mpt/io_file_unique/unique_basename.hpp; sourceTree = "<group>"; };
|
||||||
|
26B859FFB94623F1221EC83F /* Load_ims.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ims.cpp; path = ../../soundlib/Load_ims.cpp; sourceTree = "<group>"; };
|
||||||
274EB9F5814FD0E74896C835 /* mod_specifications.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mod_specifications.cpp; path = ../../soundlib/mod_specifications.cpp; sourceTree = "<group>"; };
|
274EB9F5814FD0E74896C835 /* mod_specifications.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mod_specifications.cpp; path = ../../soundlib/mod_specifications.cpp; sourceTree = "<group>"; };
|
||||||
27B40A4D98D6AB3F4E9D588D /* SampleIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleIO.h; path = ../../soundlib/SampleIO.h; sourceTree = "<group>"; };
|
27B40A4D98D6AB3F4E9D588D /* SampleIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleIO.h; path = ../../soundlib/SampleIO.h; sourceTree = "<group>"; };
|
||||||
2810796521D235D75BD137A5 /* XMTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = XMTools.h; path = ../../soundlib/XMTools.h; sourceTree = "<group>"; };
|
2810796521D235D75BD137A5 /* XMTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = XMTools.h; path = ../../soundlib/XMTools.h; sourceTree = "<group>"; };
|
||||||
|
@ -279,6 +304,7 @@
|
||||||
338C775D77DB1CCFBA02559D /* BitReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BitReader.h; path = ../../soundlib/BitReader.h; sourceTree = "<group>"; };
|
338C775D77DB1CCFBA02559D /* BitReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BitReader.h; path = ../../soundlib/BitReader.h; sourceTree = "<group>"; };
|
||||||
34D45985C7622377303AC7C5 /* Load_imf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_imf.cpp; path = ../../soundlib/Load_imf.cpp; sourceTree = "<group>"; };
|
34D45985C7622377303AC7C5 /* Load_imf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_imf.cpp; path = ../../soundlib/Load_imf.cpp; sourceTree = "<group>"; };
|
||||||
352908E1F7E96953551E4721 /* libopenmpt_c.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_c.cpp; path = ../../libopenmpt/libopenmpt_c.cpp; sourceTree = "<group>"; };
|
352908E1F7E96953551E4721 /* libopenmpt_c.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_c.cpp; path = ../../libopenmpt/libopenmpt_c.cpp; sourceTree = "<group>"; };
|
||||||
|
352971E219707A149D5DA822 /* libcxx.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libcxx.hpp; path = ../../src/mpt/check/libcxx.hpp; sourceTree = "<group>"; };
|
||||||
36619CBCFDC657AE887E2AFC /* inputfile_filecursor.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile_filecursor.hpp; path = ../../src/mpt/io_file_read/inputfile_filecursor.hpp; sourceTree = "<group>"; };
|
36619CBCFDC657AE887E2AFC /* inputfile_filecursor.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile_filecursor.hpp; path = ../../src/mpt/io_file_read/inputfile_filecursor.hpp; sourceTree = "<group>"; };
|
||||||
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dmf.cpp; path = ../../soundlib/Load_dmf.cpp; sourceTree = "<group>"; };
|
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dmf.cpp; path = ../../soundlib/Load_dmf.cpp; sourceTree = "<group>"; };
|
||||||
37064A799107616B584E58B9 /* tests_random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_random.hpp; path = ../../src/mpt/random/tests/tests_random.hpp; sourceTree = "<group>"; };
|
37064A799107616B584E58B9 /* tests_random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_random.hpp; path = ../../src/mpt/random/tests/tests_random.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -308,6 +334,7 @@
|
||||||
43B7419134AEAF83A0B22FD1 /* libopenmpt_config.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_config.h; path = ../../libopenmpt/libopenmpt_config.h; sourceTree = "<group>"; };
|
43B7419134AEAF83A0B22FD1 /* libopenmpt_config.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_config.h; path = ../../libopenmpt/libopenmpt_config.h; sourceTree = "<group>"; };
|
||||||
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileTemporary.h; path = ../../common/mptFileTemporary.h; sourceTree = "<group>"; };
|
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileTemporary.h; path = ../../common/mptFileTemporary.h; sourceTree = "<group>"; };
|
||||||
44E6E1C323897D35D86B8003 /* tests_base_bit.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_bit.hpp; path = ../../src/mpt/base/tests/tests_base_bit.hpp; sourceTree = "<group>"; };
|
44E6E1C323897D35D86B8003 /* tests_base_bit.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_bit.hpp; path = ../../src/mpt/base/tests/tests_base_bit.hpp; sourceTree = "<group>"; };
|
||||||
|
45A87D570868DDC9659DBB97 /* InstrumentSynth.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = InstrumentSynth.h; path = ../../soundlib/InstrumentSynth.h; sourceTree = "<group>"; };
|
||||||
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DigiBoosterEcho.h; path = ../../soundlib/plugins/DigiBoosterEcho.h; sourceTree = "<group>"; };
|
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DigiBoosterEcho.h; path = ../../soundlib/plugins/DigiBoosterEcho.h; sourceTree = "<group>"; };
|
||||||
45DBF5F73F9DB269799CB437 /* Dlsbank.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Dlsbank.h; path = ../../soundlib/Dlsbank.h; sourceTree = "<group>"; };
|
45DBF5F73F9DB269799CB437 /* Dlsbank.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Dlsbank.h; path = ../../soundlib/Dlsbank.h; sourceTree = "<group>"; };
|
||||||
4614D43FB73775316CFE227F /* math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = math.hpp; path = ../../src/mpt/base/math.hpp; sourceTree = "<group>"; };
|
4614D43FB73775316CFE227F /* math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = math.hpp; path = ../../src/mpt/base/math.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -327,7 +354,6 @@
|
||||||
4DFC0969924AAEDBD471E7A9 /* ltdl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = ltdl.hpp; path = ../../src/mpt/detect/ltdl.hpp; sourceTree = "<group>"; };
|
4DFC0969924AAEDBD471E7A9 /* ltdl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = ltdl.hpp; path = ../../src/mpt/detect/ltdl.hpp; sourceTree = "<group>"; };
|
||||||
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_plm.cpp; path = ../../soundlib/Load_plm.cpp; sourceTree = "<group>"; };
|
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_plm.cpp; path = ../../soundlib/Load_plm.cpp; sourceTree = "<group>"; };
|
||||||
4E96BB31E124852349FD2971 /* types.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = types.hpp; path = ../../src/mpt/string/types.hpp; sourceTree = "<group>"; };
|
4E96BB31E124852349FD2971 /* types.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = types.hpp; path = ../../src/mpt/string/types.hpp; sourceTree = "<group>"; };
|
||||||
4FB7A50743B6EE79C8A20347 /* floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = floatingpoint.hpp; path = ../../src/mpt/base/floatingpoint.hpp; sourceTree = "<group>"; };
|
|
||||||
50318A59BD5998CBBEEC8899 /* os_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = os_path.hpp; path = ../../src/mpt/path/os_path.hpp; sourceTree = "<group>"; };
|
50318A59BD5998CBBEEC8899 /* os_path.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = os_path.hpp; path = ../../src/mpt/path/os_path.hpp; sourceTree = "<group>"; };
|
||||||
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileIO.h; path = ../../common/mptFileIO.h; sourceTree = "<group>"; };
|
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptFileIO.h; path = ../../common/mptFileIO.h; sourceTree = "<group>"; };
|
||||||
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIMacros.cpp; path = ../../soundlib/MIDIMacros.cpp; sourceTree = "<group>"; };
|
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIMacros.cpp; path = ../../soundlib/MIDIMacros.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -373,6 +399,7 @@
|
||||||
6B9C8BDDC301FECF75101A1D /* Gargle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Gargle.h; path = ../../soundlib/plugins/dmo/Gargle.h; sourceTree = "<group>"; };
|
6B9C8BDDC301FECF75101A1D /* Gargle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Gargle.h; path = ../../soundlib/plugins/dmo/Gargle.h; sourceTree = "<group>"; };
|
||||||
6C67B7D97E1EF7CBF38CE619 /* tests_base_math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_math.hpp; path = ../../src/mpt/base/tests/tests_base_math.hpp; sourceTree = "<group>"; };
|
6C67B7D97E1EF7CBF38CE619 /* tests_base_math.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_math.hpp; path = ../../src/mpt/base/tests/tests_base_math.hpp; sourceTree = "<group>"; };
|
||||||
6D2350A8B171F61AF3992EE8 /* FileReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReader.h; path = ../../common/FileReader.h; sourceTree = "<group>"; };
|
6D2350A8B171F61AF3992EE8 /* FileReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReader.h; path = ../../common/FileReader.h; sourceTree = "<group>"; };
|
||||||
|
6DB68B53DADE99C5DC718993 /* Load_puma.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_puma.cpp; path = ../../soundlib/Load_puma.cpp; sourceTree = "<group>"; };
|
||||||
6E84090F7E6935416ADCBF4F /* environment.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = environment.hpp; path = ../../src/mpt/environment/environment.hpp; sourceTree = "<group>"; };
|
6E84090F7E6935416ADCBF4F /* environment.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = environment.hpp; path = ../../src/mpt/environment/environment.hpp; sourceTree = "<group>"; };
|
||||||
6F3A912F8923F36144AA076F /* filecursor_callbackstream.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_callbackstream.hpp; path = ../../src/mpt/io_read/filecursor_callbackstream.hpp; sourceTree = "<group>"; };
|
6F3A912F8923F36144AA076F /* filecursor_callbackstream.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_callbackstream.hpp; path = ../../src/mpt/io_read/filecursor_callbackstream.hpp; sourceTree = "<group>"; };
|
||||||
70644035FF1571275A9F8E75 /* libopenmpt_stream_callbacks_file_msvcrt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_msvcrt.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_msvcrt.h; sourceTree = "<group>"; };
|
70644035FF1571275A9F8E75 /* libopenmpt_stream_callbacks_file_msvcrt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_msvcrt.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_msvcrt.h; sourceTree = "<group>"; };
|
||||||
|
@ -384,6 +411,7 @@
|
||||||
73262ABB150FC6AD0C36D8FB /* DMOUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOUtils.h; path = ../../soundlib/plugins/dmo/DMOUtils.h; sourceTree = "<group>"; };
|
73262ABB150FC6AD0C36D8FB /* DMOUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DMOUtils.h; path = ../../soundlib/plugins/dmo/DMOUtils.h; sourceTree = "<group>"; };
|
||||||
7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_ext_impl.cpp; path = ../../libopenmpt/libopenmpt_ext_impl.cpp; sourceTree = "<group>"; };
|
7355A89F850CE891FA7AD6DF /* libopenmpt_ext_impl.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = libopenmpt_ext_impl.cpp; path = ../../libopenmpt/libopenmpt_ext_impl.cpp; sourceTree = "<group>"; };
|
||||||
73781183B7C6B6F5F9EDEFC3 /* Snd_flt.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_flt.cpp; path = ../../soundlib/Snd_flt.cpp; sourceTree = "<group>"; };
|
73781183B7C6B6F5F9EDEFC3 /* Snd_flt.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_flt.cpp; path = ../../soundlib/Snd_flt.cpp; sourceTree = "<group>"; };
|
||||||
|
73A166DF062F30D16F07D51F /* Load_tcb.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_tcb.cpp; path = ../../soundlib/Load_tcb.cpp; sourceTree = "<group>"; };
|
||||||
73A52C155E915207A6771A55 /* EQ.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = EQ.h; path = ../../sounddsp/EQ.h; sourceTree = "<group>"; };
|
73A52C155E915207A6771A55 /* EQ.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = EQ.h; path = ../../sounddsp/EQ.h; sourceTree = "<group>"; };
|
||||||
746376CDCBC8E9BF7DD7050D /* modcommand.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modcommand.cpp; path = ../../soundlib/modcommand.cpp; sourceTree = "<group>"; };
|
746376CDCBC8E9BF7DD7050D /* modcommand.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = modcommand.cpp; path = ../../soundlib/modcommand.cpp; sourceTree = "<group>"; };
|
||||||
74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_fx.cpp; path = ../../soundlib/Snd_fx.cpp; sourceTree = "<group>"; };
|
74D7DB33E5FA7C259BC12973 /* Snd_fx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Snd_fx.cpp; path = ../../soundlib/Snd_fx.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -410,6 +438,7 @@
|
||||||
7FD19A57125F64497B380897 /* Load_ult.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ult.cpp; path = ../../soundlib/Load_ult.cpp; sourceTree = "<group>"; };
|
7FD19A57125F64497B380897 /* Load_ult.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ult.cpp; path = ../../soundlib/Load_ult.cpp; sourceTree = "<group>"; };
|
||||||
80C993CB8D54463D0839120B /* message_macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message_macros.hpp; path = ../../src/mpt/format/message_macros.hpp; sourceTree = "<group>"; };
|
80C993CB8D54463D0839120B /* message_macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message_macros.hpp; path = ../../src/mpt/format/message_macros.hpp; sourceTree = "<group>"; };
|
||||||
80F9D5FD1722E7EFD889443D /* default_floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_floatingpoint.hpp; path = ../../src/mpt/format/default_floatingpoint.hpp; sourceTree = "<group>"; };
|
80F9D5FD1722E7EFD889443D /* default_floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_floatingpoint.hpp; path = ../../src/mpt/format/default_floatingpoint.hpp; sourceTree = "<group>"; };
|
||||||
|
8209AB5BF32C4C4DA8F2F99B /* MODTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MODTools.h; path = ../../soundlib/MODTools.h; sourceTree = "<group>"; };
|
||||||
82EA4C5D44A2DDCFEBBDAA9D /* tests_base_wrapping_divide.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_wrapping_divide.hpp; path = ../../src/mpt/base/tests/tests_base_wrapping_divide.hpp; sourceTree = "<group>"; };
|
82EA4C5D44A2DDCFEBBDAA9D /* tests_base_wrapping_divide.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_base_wrapping_divide.hpp; path = ../../src/mpt/base/tests/tests_base_wrapping_divide.hpp; sourceTree = "<group>"; };
|
||||||
830F3566F431D658A9F883A6 /* Logging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Logging.cpp; path = ../../common/Logging.cpp; sourceTree = "<group>"; };
|
830F3566F431D658A9F883A6 /* Logging.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Logging.cpp; path = ../../common/Logging.cpp; sourceTree = "<group>"; };
|
||||||
84A787B7269123A91DB835F7 /* Chorus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Chorus.cpp; path = ../../soundlib/plugins/dmo/Chorus.cpp; sourceTree = "<group>"; };
|
84A787B7269123A91DB835F7 /* Chorus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Chorus.cpp; path = ../../soundlib/plugins/dmo/Chorus.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -419,6 +448,7 @@
|
||||||
87A62ABDE1A741AFA8EE38FD /* AudioCriticalSection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioCriticalSection.h; path = ../../soundlib/AudioCriticalSection.h; sourceTree = "<group>"; };
|
87A62ABDE1A741AFA8EE38FD /* AudioCriticalSection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioCriticalSection.h; path = ../../soundlib/AudioCriticalSection.h; sourceTree = "<group>"; };
|
||||||
8856685FF57E76D1F711669F /* base64.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = base64.hpp; path = ../../src/mpt/binary/base64.hpp; sourceTree = "<group>"; };
|
8856685FF57E76D1F711669F /* base64.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = base64.hpp; path = ../../src/mpt/binary/base64.hpp; sourceTree = "<group>"; };
|
||||||
8876678BE2777E7DA9BE75CB /* default_engines.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_engines.hpp; path = ../../src/mpt/random/default_engines.hpp; sourceTree = "<group>"; };
|
8876678BE2777E7DA9BE75CB /* default_engines.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = default_engines.hpp; path = ../../src/mpt/random/default_engines.hpp; sourceTree = "<group>"; };
|
||||||
|
89879ACD7D86E43F0271F90D /* InstrumentSynth.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InstrumentSynth.cpp; path = ../../soundlib/InstrumentSynth.cpp; sourceTree = "<group>"; };
|
||||||
8A87EA73FEE22F657CC5B8B3 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/string_transcode/macros.hpp; sourceTree = "<group>"; };
|
8A87EA73FEE22F657CC5B8B3 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/string_transcode/macros.hpp; sourceTree = "<group>"; };
|
||||||
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_unseekable.hpp; path = ../../src/mpt/io_read/filedata_base_unseekable.hpp; sourceTree = "<group>"; };
|
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_unseekable.hpp; path = ../../src/mpt/io_read/filedata_base_unseekable.hpp; sourceTree = "<group>"; };
|
||||||
8ABF23E958E2779BDFF0CA29 /* mutex.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = mutex.hpp; path = ../../src/mpt/mutex/mutex.hpp; sourceTree = "<group>"; };
|
8ABF23E958E2779BDFF0CA29 /* mutex.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = mutex.hpp; path = ../../src/mpt/mutex/mutex.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -435,7 +465,6 @@
|
||||||
8F52A05ED3A145D015C87E9E /* Profiler.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Profiler.cpp; path = ../../common/Profiler.cpp; sourceTree = "<group>"; };
|
8F52A05ED3A145D015C87E9E /* Profiler.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Profiler.cpp; path = ../../common/Profiler.cpp; sourceTree = "<group>"; };
|
||||||
9061AC518460F5C3094C0A91 /* SampleFormatBRR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatBRR.cpp; path = ../../soundlib/SampleFormatBRR.cpp; sourceTree = "<group>"; };
|
9061AC518460F5C3094C0A91 /* SampleFormatBRR.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatBRR.cpp; path = ../../soundlib/SampleFormatBRR.cpp; sourceTree = "<group>"; };
|
||||||
90E45EE632CDFAD829F50D26 /* mptStringBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringBuffer.h; path = ../../common/mptStringBuffer.h; sourceTree = "<group>"; };
|
90E45EE632CDFAD829F50D26 /* mptStringBuffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptStringBuffer.h; path = ../../common/mptStringBuffer.h; sourceTree = "<group>"; };
|
||||||
9133E604FE5BF476FFEEE444 /* OpCodes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = OpCodes.h; path = ../../soundlib/plugins/OpCodes.h; sourceTree = "<group>"; };
|
|
||||||
915D6003E8C2D2F59AD0EE43 /* message.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message.hpp; path = ../../src/mpt/format/message.hpp; sourceTree = "<group>"; };
|
915D6003E8C2D2F59AD0EE43 /* message.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = message.hpp; path = ../../src/mpt/format/message.hpp; sourceTree = "<group>"; };
|
||||||
91AA522185A99B930A94B061 /* I3DL2Reverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = I3DL2Reverb.h; path = ../../soundlib/plugins/dmo/I3DL2Reverb.h; sourceTree = "<group>"; };
|
91AA522185A99B930A94B061 /* I3DL2Reverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = I3DL2Reverb.h; path = ../../soundlib/plugins/dmo/I3DL2Reverb.h; sourceTree = "<group>"; };
|
||||||
91EC613953A4F2ABFABFBF79 /* libopenmpt_stream_callbacks_file.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file.h; sourceTree = "<group>"; };
|
91EC613953A4F2ABFABFBF79 /* libopenmpt_stream_callbacks_file.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file.h; sourceTree = "<group>"; };
|
||||||
|
@ -449,6 +478,7 @@
|
||||||
97B8EC8104E0FAF30673EAC1 /* OggStream.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OggStream.cpp; path = ../../soundlib/OggStream.cpp; sourceTree = "<group>"; };
|
97B8EC8104E0FAF30673EAC1 /* OggStream.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OggStream.cpp; path = ../../soundlib/OggStream.cpp; sourceTree = "<group>"; };
|
||||||
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_gdm.cpp; path = ../../soundlib/Load_gdm.cpp; sourceTree = "<group>"; };
|
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_gdm.cpp; path = ../../soundlib/Load_gdm.cpp; sourceTree = "<group>"; };
|
||||||
995821ED5E0D785F127C202D /* tests_string_buffer.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_buffer.hpp; path = ../../src/mpt/string/tests/tests_string_buffer.hpp; sourceTree = "<group>"; };
|
995821ED5E0D785F127C202D /* tests_string_buffer.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_string_buffer.hpp; path = ../../src/mpt/string/tests/tests_string_buffer.hpp; sourceTree = "<group>"; };
|
||||||
|
99E1AAB12C6F74A3954818F1 /* MODTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MODTools.cpp; path = ../../soundlib/MODTools.cpp; sourceTree = "<group>"; };
|
||||||
9B1917A761A70F19CFA935E7 /* ParamEq.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ParamEq.h; path = ../../soundlib/plugins/dmo/ParamEq.h; sourceTree = "<group>"; };
|
9B1917A761A70F19CFA935E7 /* ParamEq.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ParamEq.h; path = ../../soundlib/plugins/dmo/ParamEq.h; sourceTree = "<group>"; };
|
||||||
9B95674D94FB68BF8896C58D /* libopenmpt.dll */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = libopenmpt.dll; path = libopenmpt.dll; sourceTree = BUILT_PRODUCTS_DIR; };
|
9B95674D94FB68BF8896C58D /* libopenmpt.dll */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = libopenmpt.dll; path = libopenmpt.dll; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
9BB2E75F2E40B1519719559F /* Load_far.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_far.cpp; path = ../../soundlib/Load_far.cpp; sourceTree = "<group>"; };
|
9BB2E75F2E40B1519719559F /* Load_far.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_far.cpp; path = ../../soundlib/Load_far.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -461,6 +491,7 @@
|
||||||
9E737DF712CDC2E990B14C37 /* Distortion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Distortion.h; path = ../../soundlib/plugins/dmo/Distortion.h; sourceTree = "<group>"; };
|
9E737DF712CDC2E990B14C37 /* Distortion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Distortion.h; path = ../../soundlib/plugins/dmo/Distortion.h; sourceTree = "<group>"; };
|
||||||
9E8AC865F88BDF57BFD2D6A5 /* tests_binary.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_binary.hpp; path = ../../src/mpt/binary/tests/tests_binary.hpp; sourceTree = "<group>"; };
|
9E8AC865F88BDF57BFD2D6A5 /* tests_binary.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_binary.hpp; path = ../../src/mpt/binary/tests/tests_binary.hpp; sourceTree = "<group>"; };
|
||||||
9EB0D073130B156590EE9EB3 /* Compressor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Compressor.h; path = ../../soundlib/plugins/dmo/Compressor.h; sourceTree = "<group>"; };
|
9EB0D073130B156590EE9EB3 /* Compressor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Compressor.h; path = ../../soundlib/plugins/dmo/Compressor.h; sourceTree = "<group>"; };
|
||||||
|
9EEAF28B0C1300FD0DA5F0CB /* Load_unic.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_unic.cpp; path = ../../soundlib/Load_unic.cpp; sourceTree = "<group>"; };
|
||||||
9F187E69B9E4ED1BBDB584A9 /* outputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = outputfile.hpp; path = ../../src/mpt/io_file/outputfile.hpp; sourceTree = "<group>"; };
|
9F187E69B9E4ED1BBDB584A9 /* outputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = outputfile.hpp; path = ../../src/mpt/io_file/outputfile.hpp; sourceTree = "<group>"; };
|
||||||
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BuildSettingsCompiler.h; path = ../../common/BuildSettingsCompiler.h; sourceTree = "<group>"; };
|
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BuildSettingsCompiler.h; path = ../../common/BuildSettingsCompiler.h; sourceTree = "<group>"; };
|
||||||
9FCB791A628BD98CBFC0B75A /* dos_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = dos_memory.hpp; path = ../../src/mpt/osinfo/dos_memory.hpp; sourceTree = "<group>"; };
|
9FCB791A628BD98CBFC0B75A /* dos_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = dos_memory.hpp; path = ../../src/mpt/osinfo/dos_memory.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -471,6 +502,7 @@
|
||||||
A32EC1731056CFE511E9BFB3 /* ModSample.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ModSample.cpp; path = ../../soundlib/ModSample.cpp; sourceTree = "<group>"; };
|
A32EC1731056CFE511E9BFB3 /* ModSample.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ModSample.cpp; path = ../../soundlib/ModSample.cpp; sourceTree = "<group>"; };
|
||||||
A33106C935BED0BB9E977509 /* load_j2b.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = load_j2b.cpp; path = ../../soundlib/load_j2b.cpp; sourceTree = "<group>"; };
|
A33106C935BED0BB9E977509 /* load_j2b.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = load_j2b.cpp; path = ../../soundlib/load_j2b.cpp; sourceTree = "<group>"; };
|
||||||
A34959973B963F4969DD3FD7 /* filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata.hpp; path = ../../src/mpt/io_read/filedata.hpp; sourceTree = "<group>"; };
|
A34959973B963F4969DD3FD7 /* filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata.hpp; path = ../../src/mpt/io_read/filedata.hpp; sourceTree = "<group>"; };
|
||||||
|
A35EA1E7E7AD475929D48027 /* PlayState.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PlayState.h; path = ../../soundlib/PlayState.h; sourceTree = "<group>"; };
|
||||||
A527626137B52C53A08DD0A1 /* int24.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = int24.hpp; path = ../../src/mpt/endian/int24.hpp; sourceTree = "<group>"; };
|
A527626137B52C53A08DD0A1 /* int24.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = int24.hpp; path = ../../src/mpt/endian/int24.hpp; sourceTree = "<group>"; };
|
||||||
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIEvents.cpp; path = ../../soundlib/MIDIEvents.cpp; sourceTree = "<group>"; };
|
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIEvents.cpp; path = ../../soundlib/MIDIEvents.cpp; sourceTree = "<group>"; };
|
||||||
A7A09A55A16256C7DB615895 /* Paula.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Paula.cpp; path = ../../soundlib/Paula.cpp; sourceTree = "<group>"; };
|
A7A09A55A16256C7DB615895 /* Paula.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Paula.cpp; path = ../../soundlib/Paula.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -493,7 +525,9 @@
|
||||||
B517EB3DCFE459EFD3B4F17D /* exception.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = exception.hpp; path = ../../src/mpt/exception/exception.hpp; sourceTree = "<group>"; };
|
B517EB3DCFE459EFD3B4F17D /* exception.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = exception.hpp; path = ../../src/mpt/exception/exception.hpp; sourceTree = "<group>"; };
|
||||||
B5449C6B226CAADD23FF9AAB /* ModSequence.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModSequence.h; path = ../../soundlib/ModSequence.h; sourceTree = "<group>"; };
|
B5449C6B226CAADD23FF9AAB /* ModSequence.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModSequence.h; path = ../../soundlib/ModSequence.h; sourceTree = "<group>"; };
|
||||||
B547A5AF29A1EAA1A78573EF /* type_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = type_traits.hpp; path = ../../src/mpt/endian/type_traits.hpp; sourceTree = "<group>"; };
|
B547A5AF29A1EAA1A78573EF /* type_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = type_traits.hpp; path = ../../src/mpt/endian/type_traits.hpp; sourceTree = "<group>"; };
|
||||||
|
B55D7A70F9AC1FE23BD358B0 /* GzipWriter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = GzipWriter.h; path = ../../common/GzipWriter.h; sourceTree = "<group>"; };
|
||||||
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_669.cpp; path = ../../soundlib/Load_669.cpp; sourceTree = "<group>"; };
|
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_669.cpp; path = ../../soundlib/Load_669.cpp; sourceTree = "<group>"; };
|
||||||
|
B6BBD03FFB0A75B13D31AE7F /* Load_fc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_fc.cpp; path = ../../soundlib/Load_fc.cpp; sourceTree = "<group>"; };
|
||||||
B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MixerLoops.cpp; path = ../../soundlib/MixerLoops.cpp; sourceTree = "<group>"; };
|
B810F0D30F7663C5C1847F13 /* MixerLoops.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MixerLoops.cpp; path = ../../soundlib/MixerLoops.cpp; sourceTree = "<group>"; };
|
||||||
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_c67.cpp; path = ../../soundlib/Load_c67.cpp; sourceTree = "<group>"; };
|
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_c67.cpp; path = ../../soundlib/Load_c67.cpp; sourceTree = "<group>"; };
|
||||||
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = windows.hpp; path = ../../src/mpt/check/windows.hpp; sourceTree = "<group>"; };
|
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = windows.hpp; path = ../../src/mpt/check/windows.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -504,6 +538,7 @@
|
||||||
BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndfile.cpp; path = ../../soundlib/Sndfile.cpp; sourceTree = "<group>"; };
|
BAF08779FF3F2CEB416665B9 /* Sndfile.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Sndfile.cpp; path = ../../soundlib/Sndfile.cpp; sourceTree = "<group>"; };
|
||||||
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ITTools.h; path = ../../soundlib/ITTools.h; sourceTree = "<group>"; };
|
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ITTools.h; path = ../../soundlib/ITTools.h; sourceTree = "<group>"; };
|
||||||
BD023BA1315C8093AF4009E1 /* simple_spec.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple_spec.hpp; path = ../../src/mpt/format/simple_spec.hpp; sourceTree = "<group>"; };
|
BD023BA1315C8093AF4009E1 /* simple_spec.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = simple_spec.hpp; path = ../../src/mpt/format/simple_spec.hpp; sourceTree = "<group>"; };
|
||||||
|
BE474F872B6F5DF92D024DC7 /* Load_pt36.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_pt36.cpp; path = ../../soundlib/Load_pt36.cpp; sourceTree = "<group>"; };
|
||||||
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MPEGFrame.cpp; path = ../../soundlib/MPEGFrame.cpp; sourceTree = "<group>"; };
|
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MPEGFrame.cpp; path = ../../soundlib/MPEGFrame.cpp; sourceTree = "<group>"; };
|
||||||
BFC43D151B059087EE5FDB55 /* AGC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AGC.cpp; path = ../../sounddsp/AGC.cpp; sourceTree = "<group>"; };
|
BFC43D151B059087EE5FDB55 /* AGC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AGC.cpp; path = ../../sounddsp/AGC.cpp; sourceTree = "<group>"; };
|
||||||
C0B331FD5340FBEFBC19A03D /* MixerLoops.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerLoops.h; path = ../../soundlib/MixerLoops.h; sourceTree = "<group>"; };
|
C0B331FD5340FBEFBC19A03D /* MixerLoops.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MixerLoops.h; path = ../../soundlib/MixerLoops.h; sourceTree = "<group>"; };
|
||||||
|
@ -513,6 +548,7 @@
|
||||||
C3E634155673FE07BF4CA255 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/base/macros.hpp; sourceTree = "<group>"; };
|
C3E634155673FE07BF4CA255 /* macros.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = macros.hpp; path = ../../src/mpt/base/macros.hpp; sourceTree = "<group>"; };
|
||||||
C3FAC67D5688906FBF6134BD /* detect.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect.hpp; path = ../../src/mpt/base/detect.hpp; sourceTree = "<group>"; };
|
C3FAC67D5688906FBF6134BD /* detect.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = detect.hpp; path = ../../src/mpt/base/detect.hpp; sourceTree = "<group>"; };
|
||||||
C510221C396A670EB74DF05C /* mptStringBuffer.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptStringBuffer.cpp; path = ../../common/mptStringBuffer.cpp; sourceTree = "<group>"; };
|
C510221C396A670EB74DF05C /* mptStringBuffer.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptStringBuffer.cpp; path = ../../common/mptStringBuffer.cpp; sourceTree = "<group>"; };
|
||||||
|
C61BC533BA1B0EA53F062373 /* MIDIMacroParser.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MIDIMacroParser.cpp; path = ../../soundlib/MIDIMacroParser.cpp; sourceTree = "<group>"; };
|
||||||
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReaderFwd.h; path = ../../common/FileReaderFwd.h; sourceTree = "<group>"; };
|
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = FileReaderFwd.h; path = ../../common/FileReaderFwd.h; sourceTree = "<group>"; };
|
||||||
C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = UMXTools.cpp; path = ../../soundlib/UMXTools.cpp; sourceTree = "<group>"; };
|
C7851FA55A12E997C2EB8DE5 /* UMXTools.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = UMXTools.cpp; path = ../../soundlib/UMXTools.cpp; sourceTree = "<group>"; };
|
||||||
C875E7BBB96D55AD2570D5FB /* floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = floatingpoint.hpp; path = ../../src/mpt/endian/floatingpoint.hpp; sourceTree = "<group>"; };
|
C875E7BBB96D55AD2570D5FB /* floatingpoint.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = floatingpoint.hpp; path = ../../src/mpt/endian/floatingpoint.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -520,6 +556,7 @@
|
||||||
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_sfx.cpp; path = ../../soundlib/Load_sfx.cpp; sourceTree = "<group>"; };
|
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_sfx.cpp; path = ../../soundlib/Load_sfx.cpp; sourceTree = "<group>"; };
|
||||||
C9545B192355720BEA9C6959 /* arithmetic_shift.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = arithmetic_shift.hpp; path = ../../src/mpt/base/arithmetic_shift.hpp; sourceTree = "<group>"; };
|
C9545B192355720BEA9C6959 /* arithmetic_shift.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = arithmetic_shift.hpp; path = ../../src/mpt/base/arithmetic_shift.hpp; sourceTree = "<group>"; };
|
||||||
C9DD180C21428AFED350A64C /* mptPathString.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptPathString.h; path = ../../common/mptPathString.h; sourceTree = "<group>"; };
|
C9DD180C21428AFED350A64C /* mptPathString.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptPathString.h; path = ../../common/mptPathString.h; sourceTree = "<group>"; };
|
||||||
|
C9E029A3906E2115FE7047E3 /* debugging.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = debugging.hpp; path = ../../src/mpt/base/debugging.hpp; sourceTree = "<group>"; };
|
||||||
CA2995890E783AFB509F73C9 /* array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = array.hpp; path = ../../src/mpt/base/array.hpp; sourceTree = "<group>"; };
|
CA2995890E783AFB509F73C9 /* array.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = array.hpp; path = ../../src/mpt/base/array.hpp; sourceTree = "<group>"; };
|
||||||
CA67A8613B8A4953F150F6A1 /* S3MTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = S3MTools.h; path = ../../soundlib/S3MTools.h; sourceTree = "<group>"; };
|
CA67A8613B8A4953F150F6A1 /* S3MTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = S3MTools.h; path = ../../soundlib/S3MTools.h; sourceTree = "<group>"; };
|
||||||
CB4660EB0F95065D51BC3F2B /* pattern.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pattern.cpp; path = ../../soundlib/pattern.cpp; sourceTree = "<group>"; };
|
CB4660EB0F95065D51BC3F2B /* pattern.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = pattern.cpp; path = ../../soundlib/pattern.cpp; sourceTree = "<group>"; };
|
||||||
|
@ -541,7 +578,9 @@
|
||||||
D35A7771C759C0E34C44D5B1 /* WavesReverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = WavesReverb.h; path = ../../soundlib/plugins/dmo/WavesReverb.h; sourceTree = "<group>"; };
|
D35A7771C759C0E34C44D5B1 /* WavesReverb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = WavesReverb.h; path = ../../soundlib/plugins/dmo/WavesReverb.h; sourceTree = "<group>"; };
|
||||||
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MIDIMacros.h; path = ../../soundlib/MIDIMacros.h; sourceTree = "<group>"; };
|
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MIDIMacros.h; path = ../../soundlib/MIDIMacros.h; sourceTree = "<group>"; };
|
||||||
D432AEE7E417DB19D08B6527 /* tests_parse.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_parse.hpp; path = ../../src/mpt/parse/tests/tests_parse.hpp; sourceTree = "<group>"; };
|
D432AEE7E417DB19D08B6527 /* tests_parse.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = tests_parse.hpp; path = ../../src/mpt/parse/tests/tests_parse.hpp; sourceTree = "<group>"; };
|
||||||
|
D668A71B68F6710DD1CF155B /* Load_gmc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_gmc.cpp; path = ../../soundlib/Load_gmc.cpp; sourceTree = "<group>"; };
|
||||||
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LFOPlugin.cpp; path = ../../soundlib/plugins/LFOPlugin.cpp; sourceTree = "<group>"; };
|
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LFOPlugin.cpp; path = ../../soundlib/plugins/LFOPlugin.cpp; sourceTree = "<group>"; };
|
||||||
|
D727124F69B4DC41D28D808F /* Load_ice.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_ice.cpp; path = ../../soundlib/Load_ice.cpp; sourceTree = "<group>"; };
|
||||||
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlugInterface.cpp; path = ../../soundlib/plugins/PlugInterface.cpp; sourceTree = "<group>"; };
|
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlugInterface.cpp; path = ../../soundlib/plugins/PlugInterface.cpp; sourceTree = "<group>"; };
|
||||||
D941724BCA38E03D363C608B /* saturate_round.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_round.hpp; path = ../../src/mpt/base/saturate_round.hpp; sourceTree = "<group>"; };
|
D941724BCA38E03D363C608B /* saturate_round.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_round.hpp; path = ../../src/mpt/base/saturate_round.hpp; sourceTree = "<group>"; };
|
||||||
DA41BBEFE6CC6E6161B13A2F /* transcode.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = transcode.hpp; path = ../../src/mpt/string_transcode/transcode.hpp; sourceTree = "<group>"; };
|
DA41BBEFE6CC6E6161B13A2F /* transcode.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = transcode.hpp; path = ../../src/mpt/string_transcode/transcode.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -560,18 +599,21 @@
|
||||||
E2066CCD3D47C03F10A20B0D /* DSP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DSP.cpp; path = ../../sounddsp/DSP.cpp; sourceTree = "<group>"; };
|
E2066CCD3D47C03F10A20B0D /* DSP.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DSP.cpp; path = ../../sounddsp/DSP.cpp; sourceTree = "<group>"; };
|
||||||
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_seekable.hpp; path = ../../src/mpt/io_read/filedata_base_seekable.hpp; sourceTree = "<group>"; };
|
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filedata_base_seekable.hpp; path = ../../src/mpt/io_read/filedata_base_seekable.hpp; sourceTree = "<group>"; };
|
||||||
E2B3BCB34FDBCB25516EBAF3 /* random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = random.hpp; path = ../../src/mpt/random/random.hpp; sourceTree = "<group>"; };
|
E2B3BCB34FDBCB25516EBAF3 /* random.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = random.hpp; path = ../../src/mpt/random/random.hpp; sourceTree = "<group>"; };
|
||||||
|
E38574ABA645D51D037AB2EB /* any_engine.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = any_engine.hpp; path = ../../src/mpt/random/any_engine.hpp; sourceTree = "<group>"; };
|
||||||
E438935FD53001514133819F /* mod_specifications.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mod_specifications.h; path = ../../soundlib/mod_specifications.h; sourceTree = "<group>"; };
|
E438935FD53001514133819F /* mod_specifications.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mod_specifications.h; path = ../../soundlib/mod_specifications.h; sourceTree = "<group>"; };
|
||||||
E4C0ABA9F677EB9B6BE5D9E9 /* libopenmpt_ext_impl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext_impl.hpp; path = ../../libopenmpt/libopenmpt_ext_impl.hpp; sourceTree = "<group>"; };
|
E4C0ABA9F677EB9B6BE5D9E9 /* libopenmpt_ext_impl.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext_impl.hpp; path = ../../libopenmpt/libopenmpt_ext_impl.hpp; sourceTree = "<group>"; };
|
||||||
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Loaders.h; path = ../../soundlib/Loaders.h; sourceTree = "<group>"; };
|
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Loaders.h; path = ../../soundlib/Loaders.h; sourceTree = "<group>"; };
|
||||||
E64FF33AA9BBB4ECE85F597A /* openmpt-ogg.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "ogg.xcodeproj"; path = ext/ogg.xcodeproj; sourceTree = SOURCE_ROOT; };
|
E64FF33AA9BBB4ECE85F597A /* openmpt-ogg.lib */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "ogg.xcodeproj"; path = ext/ogg.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||||
E6905433791E1E25E1F6C273 /* SampleCopy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleCopy.h; path = ../../soundlib/SampleCopy.h; sourceTree = "<group>"; };
|
E6905433791E1E25E1F6C273 /* SampleCopy.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SampleCopy.h; path = ../../soundlib/SampleCopy.h; sourceTree = "<group>"; };
|
||||||
E7811C8A7A0EE67CE2E78ACA /* class.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = class.hpp; path = ../../src/mpt/osinfo/class.hpp; sourceTree = "<group>"; };
|
E7811C8A7A0EE67CE2E78ACA /* class.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = class.hpp; path = ../../src/mpt/osinfo/class.hpp; sourceTree = "<group>"; };
|
||||||
|
E7ACD57DAA6D35EF07A213BD /* MIDIMacroParser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MIDIMacroParser.h; path = ../../soundlib/MIDIMacroParser.h; sourceTree = "<group>"; };
|
||||||
E898D5ABAF26CD1D1D28F3EB /* ModInstrument.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModInstrument.h; path = ../../soundlib/ModInstrument.h; sourceTree = "<group>"; };
|
E898D5ABAF26CD1D1D28F3EB /* ModInstrument.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = ModInstrument.h; path = ../../soundlib/ModInstrument.h; sourceTree = "<group>"; };
|
||||||
EABA2F1F4147999119C0AD5F /* AGC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AGC.h; path = ../../sounddsp/AGC.h; sourceTree = "<group>"; };
|
EABA2F1F4147999119C0AD5F /* AGC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AGC.h; path = ../../sounddsp/AGC.h; sourceTree = "<group>"; };
|
||||||
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mid.cpp; path = ../../soundlib/Load_mid.cpp; sourceTree = "<group>"; };
|
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_mid.cpp; path = ../../soundlib/Load_mid.cpp; sourceTree = "<group>"; };
|
||||||
ED3DBD7D7FCB876FE8A42BBD /* memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = memory.hpp; path = ../../src/mpt/base/memory.hpp; sourceTree = "<group>"; };
|
ED3DBD7D7FCB876FE8A42BBD /* memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = memory.hpp; path = ../../src/mpt/base/memory.hpp; sourceTree = "<group>"; };
|
||||||
|
EDB72A5D8FA0C64F86C7D89D /* PlaybackTest.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlaybackTest.cpp; path = ../../soundlib/PlaybackTest.cpp; sourceTree = "<group>"; };
|
||||||
|
EDF8E6598086B04BE95F5499 /* Load_cba.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_cba.cpp; path = ../../soundlib/Load_cba.cpp; sourceTree = "<group>"; };
|
||||||
EEC8D9B98156A3ABEA2F47F9 /* tuningbase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuningbase.h; path = ../../soundlib/tuningbase.h; sourceTree = "<group>"; };
|
EEC8D9B98156A3ABEA2F47F9 /* tuningbase.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuningbase.h; path = ../../soundlib/tuningbase.h; sourceTree = "<group>"; };
|
||||||
EF78F5224ABA48941E149362 /* Dither.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Dither.h; path = ../../common/Dither.h; sourceTree = "<group>"; };
|
|
||||||
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RowVisitor.h; path = ../../soundlib/RowVisitor.h; sourceTree = "<group>"; };
|
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RowVisitor.h; path = ../../soundlib/RowVisitor.h; sourceTree = "<group>"; };
|
||||||
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_psm.cpp; path = ../../soundlib/Load_psm.cpp; sourceTree = "<group>"; };
|
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_psm.cpp; path = ../../soundlib/Load_psm.cpp; sourceTree = "<group>"; };
|
||||||
F18CD1F1E58C1B636A773031 /* saturate_cast.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_cast.hpp; path = ../../src/mpt/base/saturate_cast.hpp; sourceTree = "<group>"; };
|
F18CD1F1E58C1B636A773031 /* saturate_cast.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = saturate_cast.hpp; path = ../../src/mpt/base/saturate_cast.hpp; sourceTree = "<group>"; };
|
||||||
|
@ -585,6 +627,7 @@
|
||||||
F48DAABB97F4D86DAF2A90FB /* filecursor_traits_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_memory.hpp; path = ../../src/mpt/io_read/filecursor_traits_memory.hpp; sourceTree = "<group>"; };
|
F48DAABB97F4D86DAF2A90FB /* filecursor_traits_memory.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_memory.hpp; path = ../../src/mpt/io_read/filecursor_traits_memory.hpp; sourceTree = "<group>"; };
|
||||||
F5D2F247BC60E9B92A631087 /* libopenmpt.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt.hpp; path = ../../libopenmpt/libopenmpt.hpp; sourceTree = "<group>"; };
|
F5D2F247BC60E9B92A631087 /* libopenmpt.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt.hpp; path = ../../libopenmpt/libopenmpt.hpp; sourceTree = "<group>"; };
|
||||||
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dsm.cpp; path = ../../soundlib/Load_dsm.cpp; sourceTree = "<group>"; };
|
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Load_dsm.cpp; path = ../../soundlib/Load_dsm.cpp; sourceTree = "<group>"; };
|
||||||
|
F5DB217BB89B81ED15D05FBB /* type_traits.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = type_traits.hpp; path = ../../src/mpt/base/type_traits.hpp; sourceTree = "<group>"; };
|
||||||
F61229996734CA8B1CFB77D9 /* guid.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = guid.hpp; path = ../../src/mpt/uuid/guid.hpp; sourceTree = "<group>"; };
|
F61229996734CA8B1CFB77D9 /* guid.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = guid.hpp; path = ../../src/mpt/uuid/guid.hpp; sourceTree = "<group>"; };
|
||||||
F6F37E8F68161F811DDCCCCF /* span.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = span.hpp; path = ../../src/mpt/base/span.hpp; sourceTree = "<group>"; };
|
F6F37E8F68161F811DDCCCCF /* span.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = span.hpp; path = ../../src/mpt/base/span.hpp; sourceTree = "<group>"; };
|
||||||
F78A378464B245F6664535C4 /* mptBaseTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseTypes.h; path = ../../common/mptBaseTypes.h; sourceTree = "<group>"; };
|
F78A378464B245F6664535C4 /* mptBaseTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = mptBaseTypes.h; path = ../../common/mptBaseTypes.h; sourceTree = "<group>"; };
|
||||||
|
@ -592,12 +635,13 @@
|
||||||
F9D67691EACDE48356D164D1 /* SampleFormatFLAC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatFLAC.cpp; path = ../../soundlib/SampleFormatFLAC.cpp; sourceTree = "<group>"; };
|
F9D67691EACDE48356D164D1 /* SampleFormatFLAC.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFormatFLAC.cpp; path = ../../soundlib/SampleFormatFLAC.cpp; sourceTree = "<group>"; };
|
||||||
FB5FB0E7EF5EFA59744A0F27 /* libopenmpt_ext.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext.hpp; path = ../../libopenmpt/libopenmpt_ext.hpp; sourceTree = "<group>"; };
|
FB5FB0E7EF5EFA59744A0F27 /* libopenmpt_ext.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = libopenmpt_ext.hpp; path = ../../libopenmpt/libopenmpt_ext.hpp; sourceTree = "<group>"; };
|
||||||
FB635E3D352E14EFEA89647D /* filecursor_traits_filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_filedata.hpp; path = ../../src/mpt/io_read/filecursor_traits_filedata.hpp; sourceTree = "<group>"; };
|
FB635E3D352E14EFEA89647D /* filecursor_traits_filedata.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = filecursor_traits_filedata.hpp; path = ../../src/mpt/io_read/filecursor_traits_filedata.hpp; sourceTree = "<group>"; };
|
||||||
|
FB77AD1D689FBB8F6A32AB5D /* PlayState.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = PlayState.cpp; path = ../../soundlib/PlayState.cpp; sourceTree = "<group>"; };
|
||||||
FBE197BEECD905B058DC85FE /* serialization_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = serialization_utils.h; path = ../../common/serialization_utils.h; sourceTree = "<group>"; };
|
FBE197BEECD905B058DC85FE /* serialization_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = serialization_utils.h; path = ../../common/serialization_utils.h; sourceTree = "<group>"; };
|
||||||
FBF22E79CF82B5EBC2544CB9 /* libopenmpt_stream_callbacks_file_posix_lfs64.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_posix_lfs64.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_posix_lfs64.h; sourceTree = "<group>"; };
|
FBF22E79CF82B5EBC2544CB9 /* libopenmpt_stream_callbacks_file_posix_lfs64.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = libopenmpt_stream_callbacks_file_posix_lfs64.h; path = ../../libopenmpt/libopenmpt_stream_callbacks_file_posix_lfs64.h; sourceTree = "<group>"; };
|
||||||
|
FC83067740D1ABE982F8E4B7 /* float.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = float.hpp; path = ../../src/mpt/base/float.hpp; sourceTree = "<group>"; };
|
||||||
FC85D407DBA2EE39B7AC4A47 /* inputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile.hpp; path = ../../src/mpt/io_file/inputfile.hpp; sourceTree = "<group>"; };
|
FC85D407DBA2EE39B7AC4A47 /* inputfile.hpp */ = {isa = PBXFileReference; lastKnownFileType = text; name = inputfile.hpp; path = ../../src/mpt/io_file/inputfile.hpp; sourceTree = "<group>"; };
|
||||||
FED01DA32FB4159542CC4BE3 /* tuning.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuning.h; path = ../../soundlib/tuning.h; sourceTree = "<group>"; };
|
FED01DA32FB4159542CC4BE3 /* tuning.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = tuning.h; path = ../../soundlib/tuning.h; sourceTree = "<group>"; };
|
||||||
FEDB3A1791690409FA41A857 /* Echo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Echo.h; path = ../../soundlib/plugins/dmo/Echo.h; sourceTree = "<group>"; };
|
FEDB3A1791690409FA41A857 /* Echo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Echo.h; path = ../../soundlib/plugins/dmo/Echo.h; sourceTree = "<group>"; };
|
||||||
FF7F8F60F37ED8D27869EDA0 /* mptFileTemporary.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mptFileTemporary.cpp; path = ../../common/mptFileTemporary.cpp; sourceTree = "<group>"; };
|
|
||||||
FFB3088F4401AE018628E6CF /* Resampler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Resampler.h; path = ../../soundlib/Resampler.h; sourceTree = "<group>"; };
|
FFB3088F4401AE018628E6CF /* Resampler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Resampler.h; path = ../../soundlib/Resampler.h; sourceTree = "<group>"; };
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
@ -713,7 +757,6 @@
|
||||||
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */,
|
45D0E0DE525B9350CD405F1E /* DigiBoosterEcho.h */,
|
||||||
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */,
|
D6BBDE00997C3E72F6B11C40 /* LFOPlugin.cpp */,
|
||||||
6858F8CA2EE6F03C9CE9170A /* LFOPlugin.h */,
|
6858F8CA2EE6F03C9CE9170A /* LFOPlugin.h */,
|
||||||
9133E604FE5BF476FFEEE444 /* OpCodes.h */,
|
|
||||||
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */,
|
D89E49F2E528FC64600DC832 /* PlugInterface.cpp */,
|
||||||
6058487C545791EED942A6BC /* PlugInterface.h */,
|
6058487C545791EED942A6BC /* PlugInterface.h */,
|
||||||
CE32D5B4DABD882655A253F4 /* PluginManager.cpp */,
|
CE32D5B4DABD882655A253F4 /* PluginManager.cpp */,
|
||||||
|
@ -898,6 +941,7 @@
|
||||||
children = (
|
children = (
|
||||||
64377F84A84B50B69C1CD5C4 /* compiler.hpp */,
|
64377F84A84B50B69C1CD5C4 /* compiler.hpp */,
|
||||||
417FE082D6F69FB44592F6C2 /* libc.hpp */,
|
417FE082D6F69FB44592F6C2 /* libc.hpp */,
|
||||||
|
352971E219707A149D5DA822 /* libcxx.hpp */,
|
||||||
788395FAAA7CE0AC245C1C3A /* mfc.hpp */,
|
788395FAAA7CE0AC245C1C3A /* mfc.hpp */,
|
||||||
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */,
|
B9B7FE84CBE1DB36FFD2C4C4 /* windows.hpp */,
|
||||||
);
|
);
|
||||||
|
@ -1030,9 +1074,9 @@
|
||||||
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */,
|
9F2E1C1AF92F330CC0762A5A /* BuildSettingsCompiler.h */,
|
||||||
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */,
|
13F9789407F8C2068CE3D6D4 /* ComponentManager.cpp */,
|
||||||
0A20B0FECCE111702A15EF3E /* ComponentManager.h */,
|
0A20B0FECCE111702A15EF3E /* ComponentManager.h */,
|
||||||
EF78F5224ABA48941E149362 /* Dither.h */,
|
|
||||||
6D2350A8B171F61AF3992EE8 /* FileReader.h */,
|
6D2350A8B171F61AF3992EE8 /* FileReader.h */,
|
||||||
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */,
|
C6F2110A1E5783FCD0659F4A /* FileReaderFwd.h */,
|
||||||
|
B55D7A70F9AC1FE23BD358B0 /* GzipWriter.h */,
|
||||||
830F3566F431D658A9F883A6 /* Logging.cpp */,
|
830F3566F431D658A9F883A6 /* Logging.cpp */,
|
||||||
6303157093E70D62A6FF43B0 /* Logging.h */,
|
6303157093E70D62A6FF43B0 /* Logging.h */,
|
||||||
8F52A05ED3A145D015C87E9E /* Profiler.cpp */,
|
8F52A05ED3A145D015C87E9E /* Profiler.cpp */,
|
||||||
|
@ -1043,9 +1087,7 @@
|
||||||
F78A378464B245F6664535C4 /* mptBaseTypes.h */,
|
F78A378464B245F6664535C4 /* mptBaseTypes.h */,
|
||||||
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */,
|
12DCF57C800503EE8197F3BC /* mptBaseUtils.h */,
|
||||||
BA99A2F415DAF666E9354134 /* mptCPU.h */,
|
BA99A2F415DAF666E9354134 /* mptCPU.h */,
|
||||||
13F63AEAA68404DC0F5CA92A /* mptFileIO.cpp */,
|
|
||||||
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */,
|
50CF7EB4C1F21FA677B8CCF4 /* mptFileIO.h */,
|
||||||
FF7F8F60F37ED8D27869EDA0 /* mptFileTemporary.cpp */,
|
|
||||||
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */,
|
43CBFB4A068C5BBC63C1398A /* mptFileTemporary.h */,
|
||||||
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */,
|
074C76BE5EB1E9B010C004FE /* mptFileType.cpp */,
|
||||||
AFFB10484288DA3AAB617E88 /* mptFileType.h */,
|
AFFB10484288DA3AAB617E88 /* mptFileType.h */,
|
||||||
|
@ -1116,6 +1158,7 @@
|
||||||
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */,
|
1AA25C6F0B99CA61779D4AAF /* check_platform.hpp */,
|
||||||
86260AE5E2AD0F576B4FC925 /* compiletime_warning.hpp */,
|
86260AE5E2AD0F576B4FC925 /* compiletime_warning.hpp */,
|
||||||
021DA33D0EA855AF898D217D /* constexpr_throw.hpp */,
|
021DA33D0EA855AF898D217D /* constexpr_throw.hpp */,
|
||||||
|
C9E029A3906E2115FE7047E3 /* debugging.hpp */,
|
||||||
C3FAC67D5688906FBF6134BD /* detect.hpp */,
|
C3FAC67D5688906FBF6134BD /* detect.hpp */,
|
||||||
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */,
|
1C2F81B7DEEFE2293C24BFF7 /* detect_arch.hpp */,
|
||||||
321030713E9AE2E3B97FAEB1 /* detect_compiler.hpp */,
|
321030713E9AE2E3B97FAEB1 /* detect_compiler.hpp */,
|
||||||
|
@ -1123,7 +1166,7 @@
|
||||||
755174CF6950BE41EE3BD30F /* detect_libcxx.hpp */,
|
755174CF6950BE41EE3BD30F /* detect_libcxx.hpp */,
|
||||||
175234BFDDE02C314BE252FF /* detect_os.hpp */,
|
175234BFDDE02C314BE252FF /* detect_os.hpp */,
|
||||||
107683B90475CD2B8960E1F9 /* detect_quirks.hpp */,
|
107683B90475CD2B8960E1F9 /* detect_quirks.hpp */,
|
||||||
4FB7A50743B6EE79C8A20347 /* floatingpoint.hpp */,
|
FC83067740D1ABE982F8E4B7 /* float.hpp */,
|
||||||
787945A7E5A15419E73443E7 /* integer.hpp */,
|
787945A7E5A15419E73443E7 /* integer.hpp */,
|
||||||
C3E634155673FE07BF4CA255 /* macros.hpp */,
|
C3E634155673FE07BF4CA255 /* macros.hpp */,
|
||||||
4614D43FB73775316CFE227F /* math.hpp */,
|
4614D43FB73775316CFE227F /* math.hpp */,
|
||||||
|
@ -1137,9 +1180,11 @@
|
||||||
D941724BCA38E03D363C608B /* saturate_round.hpp */,
|
D941724BCA38E03D363C608B /* saturate_round.hpp */,
|
||||||
85812219180EEC0B80E79059 /* secure.hpp */,
|
85812219180EEC0B80E79059 /* secure.hpp */,
|
||||||
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */,
|
212A36FD7B2B4DEF4272453D /* semantic_version.hpp */,
|
||||||
|
219A364192BCD73348838481 /* size.hpp */,
|
||||||
A105879DAD903A0F287505DD /* source_location.hpp */,
|
A105879DAD903A0F287505DD /* source_location.hpp */,
|
||||||
F6F37E8F68161F811DDCCCCF /* span.hpp */,
|
F6F37E8F68161F811DDCCCCF /* span.hpp */,
|
||||||
8BDA4A4F76C67041BEAC388F /* tests */,
|
8BDA4A4F76C67041BEAC388F /* tests */,
|
||||||
|
F5DB217BB89B81ED15D05FBB /* type_traits.hpp */,
|
||||||
5609DBF3C331EA65C4C4DA33 /* utility.hpp */,
|
5609DBF3C331EA65C4C4DA33 /* utility.hpp */,
|
||||||
AB10601718386E8919CB5E57 /* version.hpp */,
|
AB10601718386E8919CB5E57 /* version.hpp */,
|
||||||
2C28EA4338B39CB5B3986883 /* wrapping_divide.hpp */,
|
2C28EA4338B39CB5B3986883 /* wrapping_divide.hpp */,
|
||||||
|
@ -1258,25 +1303,35 @@
|
||||||
778D494BBBDBEEBDFE03278B /* ITTools.cpp */,
|
778D494BBBDBEEBDFE03278B /* ITTools.cpp */,
|
||||||
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */,
|
BBEF0B95B5B0C807EFAFC9D5 /* ITTools.h */,
|
||||||
567D9E616834DE53DDA2CCA1 /* InstrumentExtensions.cpp */,
|
567D9E616834DE53DDA2CCA1 /* InstrumentExtensions.cpp */,
|
||||||
|
89879ACD7D86E43F0271F90D /* InstrumentSynth.cpp */,
|
||||||
|
45A87D570868DDC9659DBB97 /* InstrumentSynth.h */,
|
||||||
9E091D790F2BBE6BC4F26BB9 /* IntMixer.h */,
|
9E091D790F2BBE6BC4F26BB9 /* IntMixer.h */,
|
||||||
CB46E6335DD4B025C6AD5473 /* Load_667.cpp */,
|
CB46E6335DD4B025C6AD5473 /* Load_667.cpp */,
|
||||||
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */,
|
B569F9F747F7C3E9B0D06837 /* Load_669.cpp */,
|
||||||
37F80675CA85D067335E74B5 /* Load_amf.cpp */,
|
37F80675CA85D067335E74B5 /* Load_amf.cpp */,
|
||||||
29DC06EFBC69D0E12542752F /* Load_ams.cpp */,
|
29DC06EFBC69D0E12542752F /* Load_ams.cpp */,
|
||||||
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */,
|
B99E396D4C2C035FB504A7AD /* Load_c67.cpp */,
|
||||||
|
EDF8E6598086B04BE95F5499 /* Load_cba.cpp */,
|
||||||
6A66E753FCF4B14565CD5593 /* Load_dbm.cpp */,
|
6A66E753FCF4B14565CD5593 /* Load_dbm.cpp */,
|
||||||
D14936A73E714519400434E7 /* Load_digi.cpp */,
|
D14936A73E714519400434E7 /* Load_digi.cpp */,
|
||||||
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */,
|
36CAA59BC9586F8D323113DB /* Load_dmf.cpp */,
|
||||||
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */,
|
F5D60F958863D987F13C7DD5 /* Load_dsm.cpp */,
|
||||||
9BE2D067090ADED90A9DCEA7 /* Load_dsym.cpp */,
|
9BE2D067090ADED90A9DCEA7 /* Load_dsym.cpp */,
|
||||||
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */,
|
0D18D5B79FA69FA9087F43F7 /* Load_dtm.cpp */,
|
||||||
|
14754CCFA70316C10FDBBB0F /* Load_etx.cpp */,
|
||||||
9BB2E75F2E40B1519719559F /* Load_far.cpp */,
|
9BB2E75F2E40B1519719559F /* Load_far.cpp */,
|
||||||
|
B6BBD03FFB0A75B13D31AE7F /* Load_fc.cpp */,
|
||||||
9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */,
|
9CF744BB2F850EAD985DB2FB /* Load_fmt.cpp */,
|
||||||
|
0C4FEA7B9EDDB46D07B658BB /* Load_ftm.cpp */,
|
||||||
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */,
|
97BF12BD2A4CDCAF932580FD /* Load_gdm.cpp */,
|
||||||
|
D668A71B68F6710DD1CF155B /* Load_gmc.cpp */,
|
||||||
10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */,
|
10E0ADC7A36E77B90C471C07 /* Load_gt2.cpp */,
|
||||||
|
D727124F69B4DC41D28D808F /* Load_ice.cpp */,
|
||||||
34D45985C7622377303AC7C5 /* Load_imf.cpp */,
|
34D45985C7622377303AC7C5 /* Load_imf.cpp */,
|
||||||
|
26B859FFB94623F1221EC83F /* Load_ims.cpp */,
|
||||||
62235C27A6720199E8993A67 /* Load_it.cpp */,
|
62235C27A6720199E8993A67 /* Load_it.cpp */,
|
||||||
6A572747FCE4F13965BD9587 /* Load_itp.cpp */,
|
6A572747FCE4F13965BD9587 /* Load_itp.cpp */,
|
||||||
|
19B6191F86DE27918871175F /* Load_kris.cpp */,
|
||||||
2052C727B2E091191BB93567 /* Load_mdl.cpp */,
|
2052C727B2E091191BB93567 /* Load_mdl.cpp */,
|
||||||
8F093E392197082B8A6FAC79 /* Load_med.cpp */,
|
8F093E392197082B8A6FAC79 /* Load_med.cpp */,
|
||||||
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */,
|
EC1456C17EA220B3E77AC501 /* Load_mid.cpp */,
|
||||||
|
@ -1288,22 +1343,32 @@
|
||||||
6AE995E9FD775FDB66500429 /* Load_okt.cpp */,
|
6AE995E9FD775FDB66500429 /* Load_okt.cpp */,
|
||||||
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */,
|
4E4D213FE0DAEB3149B38F7F /* Load_plm.cpp */,
|
||||||
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */,
|
F1208C2D83AE561FEC86FA6D /* Load_psm.cpp */,
|
||||||
|
BE474F872B6F5DF92D024DC7 /* Load_pt36.cpp */,
|
||||||
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */,
|
0863524F9AF11C4103C9C08F /* Load_ptm.cpp */,
|
||||||
|
6DB68B53DADE99C5DC718993 /* Load_puma.cpp */,
|
||||||
|
079A67139A2831050300D553 /* Load_rtm.cpp */,
|
||||||
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */,
|
1F41A2D3B1CF6CC51AA81113 /* Load_s3m.cpp */,
|
||||||
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */,
|
C950084F5BDDD241C4B6768F /* Load_sfx.cpp */,
|
||||||
|
1D12DDB1AFA0A7A318794BF1 /* Load_stk.cpp */,
|
||||||
0735F17599C3BB67029C5FB5 /* Load_stm.cpp */,
|
0735F17599C3BB67029C5FB5 /* Load_stm.cpp */,
|
||||||
666A8F1BF8F8590D61D0FD5B /* Load_stp.cpp */,
|
666A8F1BF8F8590D61D0FD5B /* Load_stp.cpp */,
|
||||||
7D070D1F43950491B1972B5F /* Load_symmod.cpp */,
|
7D070D1F43950491B1972B5F /* Load_symmod.cpp */,
|
||||||
|
73A166DF062F30D16F07D51F /* Load_tcb.cpp */,
|
||||||
54393E69E6C7085B4F9FACA9 /* Load_uax.cpp */,
|
54393E69E6C7085B4F9FACA9 /* Load_uax.cpp */,
|
||||||
7FD19A57125F64497B380897 /* Load_ult.cpp */,
|
7FD19A57125F64497B380897 /* Load_ult.cpp */,
|
||||||
|
9EEAF28B0C1300FD0DA5F0CB /* Load_unic.cpp */,
|
||||||
694D3F69FBDB095B64B3ADA9 /* Load_wav.cpp */,
|
694D3F69FBDB095B64B3ADA9 /* Load_wav.cpp */,
|
||||||
2A6435F76EB2DB69B0DA1437 /* Load_xm.cpp */,
|
2A6435F76EB2DB69B0DA1437 /* Load_xm.cpp */,
|
||||||
2EF17543C17F3F352A57E383 /* Load_xmf.cpp */,
|
2EF17543C17F3F352A57E383 /* Load_xmf.cpp */,
|
||||||
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */,
|
E59C6F4DDF5E2BBF195D2D8D /* Loaders.h */,
|
||||||
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */,
|
A78B5E5FFEF0D151B0FEEC9F /* MIDIEvents.cpp */,
|
||||||
F42AAB0986B874FBEF911949 /* MIDIEvents.h */,
|
F42AAB0986B874FBEF911949 /* MIDIEvents.h */,
|
||||||
|
C61BC533BA1B0EA53F062373 /* MIDIMacroParser.cpp */,
|
||||||
|
E7ACD57DAA6D35EF07A213BD /* MIDIMacroParser.h */,
|
||||||
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */,
|
50FB747FA860E7715A6F02BF /* MIDIMacros.cpp */,
|
||||||
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */,
|
D37D7529660B3F1BCEE3E369 /* MIDIMacros.h */,
|
||||||
|
99E1AAB12C6F74A3954818F1 /* MODTools.cpp */,
|
||||||
|
8209AB5BF32C4C4DA8F2F99B /* MODTools.h */,
|
||||||
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */,
|
BF406A572C6878C92DFB6897 /* MPEGFrame.cpp */,
|
||||||
A0ADCD61E4FC72D32723ABA1 /* MPEGFrame.h */,
|
A0ADCD61E4FC72D32723ABA1 /* MPEGFrame.h */,
|
||||||
681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */,
|
681E06B9AC6CAC2BEE93E4F9 /* Message.cpp */,
|
||||||
|
@ -1331,6 +1396,10 @@
|
||||||
F1E743CB3635E93D785D220B /* OggStream.h */,
|
F1E743CB3635E93D785D220B /* OggStream.h */,
|
||||||
A7A09A55A16256C7DB615895 /* Paula.cpp */,
|
A7A09A55A16256C7DB615895 /* Paula.cpp */,
|
||||||
1AD54F9F7616A3114970EDDF /* Paula.h */,
|
1AD54F9F7616A3114970EDDF /* Paula.h */,
|
||||||
|
FB77AD1D689FBB8F6A32AB5D /* PlayState.cpp */,
|
||||||
|
A35EA1E7E7AD475929D48027 /* PlayState.h */,
|
||||||
|
EDB72A5D8FA0C64F86C7D89D /* PlaybackTest.cpp */,
|
||||||
|
042BC5075B9137F90D9F5347 /* PlaybackTest.h */,
|
||||||
FFB3088F4401AE018628E6CF /* Resampler.h */,
|
FFB3088F4401AE018628E6CF /* Resampler.h */,
|
||||||
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */,
|
1A88E03F71EE533123FC6E7F /* RowVisitor.cpp */,
|
||||||
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */,
|
F06C78E982FA42DBEBD2E729 /* RowVisitor.h */,
|
||||||
|
@ -1406,6 +1475,7 @@
|
||||||
F76908210E7BA353FE979E61 /* random */ = {
|
F76908210E7BA353FE979E61 /* random */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
E38574ABA645D51D037AB2EB /* any_engine.hpp */,
|
||||||
8DE932C12076FCB3894FA101 /* crand.hpp */,
|
8DE932C12076FCB3894FA101 /* crand.hpp */,
|
||||||
8876678BE2777E7DA9BE75CB /* default_engines.hpp */,
|
8876678BE2777E7DA9BE75CB /* default_engines.hpp */,
|
||||||
1CE2C4318A0AD2A38B9DC271 /* device.hpp */,
|
1CE2C4318A0AD2A38B9DC271 /* device.hpp */,
|
||||||
|
@ -1434,6 +1504,7 @@
|
||||||
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */,
|
23EF16CF7F4F3B81C192DD0F /* filedata_base_buffered.hpp */,
|
||||||
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */,
|
E276AB813DD6D033801A71C1 /* filedata_base_seekable.hpp */,
|
||||||
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */,
|
8ABDA3472E24D0F9455A8987 /* filedata_base_unseekable.hpp */,
|
||||||
|
1BD71CF93D735A2B35E9F339 /* filedata_base_unseekable_buffer.hpp */,
|
||||||
E0CF51E794CB6B19767DA827 /* filedata_callbackstream.hpp */,
|
E0CF51E794CB6B19767DA827 /* filedata_callbackstream.hpp */,
|
||||||
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */,
|
079DA5A7A1C19AD951E77BE7 /* filedata_memory.hpp */,
|
||||||
CE271C83BB8EAF355888A2C3 /* filedata_stdstream.hpp */,
|
CE271C83BB8EAF355888A2C3 /* filedata_stdstream.hpp */,
|
||||||
|
@ -1557,8 +1628,6 @@
|
||||||
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */,
|
B591ED4C6887F6FEB9AA538C /* ComponentManager.cpp in Sources */,
|
||||||
527E833E969254708A63D97E /* Logging.cpp in Sources */,
|
527E833E969254708A63D97E /* Logging.cpp in Sources */,
|
||||||
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */,
|
1CE1B0B6B52E9668E37596F6 /* Profiler.cpp in Sources */,
|
||||||
1CD4D902FBF1F334D7FB4F42 /* mptFileIO.cpp in Sources */,
|
|
||||||
BB65D2D86E5BDC8ABF7E3918 /* mptFileTemporary.cpp in Sources */,
|
|
||||||
1F7082161F13654859681856 /* mptFileType.cpp in Sources */,
|
1F7082161F13654859681856 /* mptFileType.cpp in Sources */,
|
||||||
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */,
|
DF08AE5AEEEDDA8CDB61649A /* mptPathString.cpp in Sources */,
|
||||||
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */,
|
926864F471857F264D8EDB34 /* mptRandom.cpp in Sources */,
|
||||||
|
@ -1584,24 +1653,33 @@
|
||||||
32D83065D0B93117A83776A5 /* ITCompression.cpp in Sources */,
|
32D83065D0B93117A83776A5 /* ITCompression.cpp in Sources */,
|
||||||
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */,
|
E6583D037EA522B5ACEC2343 /* ITTools.cpp in Sources */,
|
||||||
4FD75379AB22A3AB995489B9 /* InstrumentExtensions.cpp in Sources */,
|
4FD75379AB22A3AB995489B9 /* InstrumentExtensions.cpp in Sources */,
|
||||||
|
C6B55BA579AB6557CACDC1E5 /* InstrumentSynth.cpp in Sources */,
|
||||||
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */,
|
5EE7936B3E04AD9D1A0E09AB /* Load_667.cpp in Sources */,
|
||||||
4E13C16F2D30DBA1093A37AF /* Load_669.cpp in Sources */,
|
4E13C16F2D30DBA1093A37AF /* Load_669.cpp in Sources */,
|
||||||
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */,
|
A7B576CD86D290FF62DBED0D /* Load_amf.cpp in Sources */,
|
||||||
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */,
|
BA54A1E79971BC19757B1827 /* Load_ams.cpp in Sources */,
|
||||||
44F9DD452416F77700205385 /* Load_c67.cpp in Sources */,
|
44F9DD452416F77700205385 /* Load_c67.cpp in Sources */,
|
||||||
|
2AE422F10A013D23E60A9931 /* Load_cba.cpp in Sources */,
|
||||||
7B65168B5A8230BD368B8CCB /* Load_dbm.cpp in Sources */,
|
7B65168B5A8230BD368B8CCB /* Load_dbm.cpp in Sources */,
|
||||||
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */,
|
8479AC1F9F461AD1A316B25F /* Load_digi.cpp in Sources */,
|
||||||
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */,
|
C81D1553A73A2F8583438B93 /* Load_dmf.cpp in Sources */,
|
||||||
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */,
|
8B4D81ED6A6A9C1F4673F82D /* Load_dsm.cpp in Sources */,
|
||||||
D2EFC1DFEDBC3091F18CC81F /* Load_dsym.cpp in Sources */,
|
D2EFC1DFEDBC3091F18CC81F /* Load_dsym.cpp in Sources */,
|
||||||
F5A6792FD4C39361B0CCEF6F /* Load_dtm.cpp in Sources */,
|
F5A6792FD4C39361B0CCEF6F /* Load_dtm.cpp in Sources */,
|
||||||
|
CE9155C7ADAE6FF989B7CC07 /* Load_etx.cpp in Sources */,
|
||||||
D1EA5157B1076B898D10C797 /* Load_far.cpp in Sources */,
|
D1EA5157B1076B898D10C797 /* Load_far.cpp in Sources */,
|
||||||
|
C3D725375C240AE98A6B0B77 /* Load_fc.cpp in Sources */,
|
||||||
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */,
|
BD4216739C5F30A578688CB3 /* Load_fmt.cpp in Sources */,
|
||||||
|
609638333FB352651BBCAE73 /* Load_ftm.cpp in Sources */,
|
||||||
707EA3954F9BBDC72BA519D5 /* Load_gdm.cpp in Sources */,
|
707EA3954F9BBDC72BA519D5 /* Load_gdm.cpp in Sources */,
|
||||||
|
81C26ED360DF89053CE8E513 /* Load_gmc.cpp in Sources */,
|
||||||
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */,
|
8676CA3F6593E471419D407F /* Load_gt2.cpp in Sources */,
|
||||||
|
B464B3479381CD796F8B2987 /* Load_ice.cpp in Sources */,
|
||||||
537472DD32918D0F0E9AE91D /* Load_imf.cpp in Sources */,
|
537472DD32918D0F0E9AE91D /* Load_imf.cpp in Sources */,
|
||||||
|
66139DF74530B829213A1437 /* Load_ims.cpp in Sources */,
|
||||||
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */,
|
7FDA539F18273951466E39DF /* Load_it.cpp in Sources */,
|
||||||
E7C01BBFC6DD35F1A2E691FF /* Load_itp.cpp in Sources */,
|
E7C01BBFC6DD35F1A2E691FF /* Load_itp.cpp in Sources */,
|
||||||
|
C806B217E2D320C9E6A3B857 /* Load_kris.cpp in Sources */,
|
||||||
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */,
|
39B7C99F18D4E3D1F4DE3FDF /* Load_mdl.cpp in Sources */,
|
||||||
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */,
|
E76008D1C67D2303A2867F11 /* Load_med.cpp in Sources */,
|
||||||
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */,
|
90C3E5D96FE1000B4BEA5C19 /* Load_mid.cpp in Sources */,
|
||||||
|
@ -1613,19 +1691,27 @@
|
||||||
49C7038128E41DB304ED79C1 /* Load_okt.cpp in Sources */,
|
49C7038128E41DB304ED79C1 /* Load_okt.cpp in Sources */,
|
||||||
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */,
|
247D3937039A5369DFA3AF77 /* Load_plm.cpp in Sources */,
|
||||||
0CEBFC05EC091637C8127245 /* Load_psm.cpp in Sources */,
|
0CEBFC05EC091637C8127245 /* Load_psm.cpp in Sources */,
|
||||||
|
3E00C2FF58CD31B15C9DC93F /* Load_pt36.cpp in Sources */,
|
||||||
7744F34756620D79326B6987 /* Load_ptm.cpp in Sources */,
|
7744F34756620D79326B6987 /* Load_ptm.cpp in Sources */,
|
||||||
|
877C818BA248F03DA61987CB /* Load_puma.cpp in Sources */,
|
||||||
|
E234B24BC151CC7D9D5B288B /* Load_rtm.cpp in Sources */,
|
||||||
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */,
|
9715CA0B7632E43D523C404B /* Load_s3m.cpp in Sources */,
|
||||||
EA420947C95F2379A5687F87 /* Load_sfx.cpp in Sources */,
|
EA420947C95F2379A5687F87 /* Load_sfx.cpp in Sources */,
|
||||||
|
A88063C9879D7DFB63A6DA09 /* Load_stk.cpp in Sources */,
|
||||||
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */,
|
97AC91CD76C9ABFF52D3080D /* Load_stm.cpp in Sources */,
|
||||||
FE6ED6D3DD8BF105B9954D13 /* Load_stp.cpp in Sources */,
|
FE6ED6D3DD8BF105B9954D13 /* Load_stp.cpp in Sources */,
|
||||||
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */,
|
CF116C1742F9E3C965479257 /* Load_symmod.cpp in Sources */,
|
||||||
|
19C908D7F8E62309D4EF7F17 /* Load_tcb.cpp in Sources */,
|
||||||
4174F40120920E33FC9B6A41 /* Load_uax.cpp in Sources */,
|
4174F40120920E33FC9B6A41 /* Load_uax.cpp in Sources */,
|
||||||
F4EF37CFD40C5201B015AE0F /* Load_ult.cpp in Sources */,
|
F4EF37CFD40C5201B015AE0F /* Load_ult.cpp in Sources */,
|
||||||
|
84F9B8439FC626F5A396BE83 /* Load_unic.cpp in Sources */,
|
||||||
BD3885019C559F33785EFB41 /* Load_wav.cpp in Sources */,
|
BD3885019C559F33785EFB41 /* Load_wav.cpp in Sources */,
|
||||||
00BB926F99087821C74F78AF /* Load_xm.cpp in Sources */,
|
00BB926F99087821C74F78AF /* Load_xm.cpp in Sources */,
|
||||||
F57A8B7BD497A5ADB0A101BB /* Load_xmf.cpp in Sources */,
|
F57A8B7BD497A5ADB0A101BB /* Load_xmf.cpp in Sources */,
|
||||||
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */,
|
CCEFFE57CC92E18906E79497 /* MIDIEvents.cpp in Sources */,
|
||||||
|
212E136BD4241D1D254679AB /* MIDIMacroParser.cpp in Sources */,
|
||||||
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */,
|
80EEA677809189A9BAE63CB7 /* MIDIMacros.cpp in Sources */,
|
||||||
|
978580C976A29AFB52ABF709 /* MODTools.cpp in Sources */,
|
||||||
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */,
|
393D72CF5409E18157DA790F /* MPEGFrame.cpp in Sources */,
|
||||||
168C3C51AED92203DD202291 /* Message.cpp in Sources */,
|
168C3C51AED92203DD202291 /* Message.cpp in Sources */,
|
||||||
7A5E5DAB8A4389DD76B713EB /* MixFuncTable.cpp in Sources */,
|
7A5E5DAB8A4389DD76B713EB /* MixFuncTable.cpp in Sources */,
|
||||||
|
@ -1638,6 +1724,8 @@
|
||||||
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */,
|
ABC5779D79E8CB4F00F71DDD /* OPL.cpp in Sources */,
|
||||||
FD083C9917D4AB4B1BA542D9 /* OggStream.cpp in Sources */,
|
FD083C9917D4AB4B1BA542D9 /* OggStream.cpp in Sources */,
|
||||||
33DB2DAD46050A5F79F5F3ED /* Paula.cpp in Sources */,
|
33DB2DAD46050A5F79F5F3ED /* Paula.cpp in Sources */,
|
||||||
|
98C2B4F5B38F23A7B75FBB35 /* PlayState.cpp in Sources */,
|
||||||
|
9580A935A565D56791D95F75 /* PlaybackTest.cpp in Sources */,
|
||||||
119C6E37113F51694B940477 /* RowVisitor.cpp in Sources */,
|
119C6E37113F51694B940477 /* RowVisitor.cpp in Sources */,
|
||||||
D443016FB3601BA18F6977AF /* S3MTools.cpp in Sources */,
|
D443016FB3601BA18F6977AF /* S3MTools.cpp in Sources */,
|
||||||
77A73F692A9D491B7BBFA5A9 /* SampleFormatBRR.cpp in Sources */,
|
77A73F692A9D491B7BBFA5A9 /* SampleFormatBRR.cpp in Sources */,
|
||||||
|
|
|
@ -88,6 +88,9 @@
|
||||||
#define ENABLE_TESTS
|
#define ENABLE_TESTS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Enable generation and verification of playback traces
|
||||||
|
#define MPT_ENABLE_PLAYBACK_TRACE
|
||||||
|
|
||||||
// Disable any file saving functionality (not really useful except for the player library)
|
// Disable any file saving functionality (not really useful except for the player library)
|
||||||
//#define MODPLUG_NO_FILESAVE
|
//#define MODPLUG_NO_FILESAVE
|
||||||
|
|
||||||
|
@ -119,6 +122,10 @@
|
||||||
|
|
||||||
#define MPT_ENABLE_UPDATE
|
#define MPT_ENABLE_UPDATE
|
||||||
|
|
||||||
|
#if defined(MPT_BUILD_DEBUG)
|
||||||
|
#define MPT_ENABLE_PLAYBACK_TEST_MENU
|
||||||
|
#endif
|
||||||
|
|
||||||
// Disable unarchiving support
|
// Disable unarchiving support
|
||||||
//#define NO_ARCHIVE_SUPPORT
|
//#define NO_ARCHIVE_SUPPORT
|
||||||
|
|
||||||
|
@ -157,6 +164,7 @@
|
||||||
|
|
||||||
#if defined(LIBOPENMPT_BUILD_TEST)
|
#if defined(LIBOPENMPT_BUILD_TEST)
|
||||||
#define ENABLE_TESTS
|
#define ENABLE_TESTS
|
||||||
|
#define MPT_ENABLE_PLAYBACK_TRACE
|
||||||
#else
|
#else
|
||||||
#define MODPLUG_NO_FILESAVE
|
#define MODPLUG_NO_FILESAVE
|
||||||
#endif
|
#endif
|
||||||
|
@ -230,19 +238,19 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(MPT_ENABLE_ARCH_INTRINSICS)
|
#if defined(MPT_ENABLE_ARCH_INTRINSICS)
|
||||||
#if MPT_COMPILER_MSVC && MPT_ARCH_X86
|
#if MPT_ARCH_X86
|
||||||
|
|
||||||
#define MPT_ENABLE_ARCH_X86
|
#define MPT_ENABLE_ARCH_X86
|
||||||
|
|
||||||
#define MPT_ENABLE_ARCH_INTRINSICS_SSE
|
#define MPT_WANT_ARCH_INTRINSICS_X86_SSE
|
||||||
#define MPT_ENABLE_ARCH_INTRINSICS_SSE2
|
#define MPT_WANT_ARCH_INTRINSICS_X86_SSE2
|
||||||
|
|
||||||
#elif MPT_COMPILER_MSVC && MPT_ARCH_AMD64
|
#elif MPT_ARCH_AMD64
|
||||||
|
|
||||||
#define MPT_ENABLE_ARCH_AMD64
|
#define MPT_ENABLE_ARCH_AMD64
|
||||||
|
|
||||||
#define MPT_ENABLE_ARCH_INTRINSICS_SSE
|
#define MPT_WANT_ARCH_INTRINSICS_X86_SSE
|
||||||
#define MPT_ENABLE_ARCH_INTRINSICS_SSE2
|
#define MPT_WANT_ARCH_INTRINSICS_X86_SSE2
|
||||||
|
|
||||||
#endif // arch
|
#endif // arch
|
||||||
#endif // MPT_ENABLE_ARCH_INTRINSICS
|
#endif // MPT_ENABLE_ARCH_INTRINSICS
|
||||||
|
@ -327,6 +335,8 @@
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define MPT_CONFIGURATION_IO_READ_FILEDATA_NO_64BIT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// platform configuration
|
// platform configuration
|
||||||
|
|
|
@ -463,12 +463,6 @@ ComponentInfo ComponentManager::GetComponentInfo(std::string name) const
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
mpt::PathString ComponentManager::GetComponentPath() const
|
|
||||||
{
|
|
||||||
return m_Settings.Path();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#endif // MPT_COMPONENT_MANAGER
|
#endif // MPT_COMPONENT_MANAGER
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -308,7 +308,6 @@ public:
|
||||||
virtual bool LoadOnStartup() const = 0;
|
virtual bool LoadOnStartup() const = 0;
|
||||||
virtual bool KeepLoaded() const = 0;
|
virtual bool KeepLoaded() const = 0;
|
||||||
virtual bool IsBlocked(const std::string &key) const = 0;
|
virtual bool IsBlocked(const std::string &key) const = 0;
|
||||||
virtual mpt::PathString Path() const = 0;
|
|
||||||
protected:
|
protected:
|
||||||
virtual ~IComponentManagerSettings() = default;
|
virtual ~IComponentManagerSettings() = default;
|
||||||
};
|
};
|
||||||
|
@ -321,7 +320,6 @@ public:
|
||||||
bool LoadOnStartup() const override { return false; }
|
bool LoadOnStartup() const override { return false; }
|
||||||
bool KeepLoaded() const override { return true; }
|
bool KeepLoaded() const override { return true; }
|
||||||
bool IsBlocked(const std::string & /*key*/ ) const override { return false; }
|
bool IsBlocked(const std::string & /*key*/ ) const override { return false; }
|
||||||
mpt::PathString Path() const override { return mpt::PathString(); }
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -374,7 +372,6 @@ public:
|
||||||
std::shared_ptr<const IComponent> ReloadComponent(const IComponentFactory &componentFactory);
|
std::shared_ptr<const IComponent> ReloadComponent(const IComponentFactory &componentFactory);
|
||||||
std::vector<std::string> GetRegisteredComponents() const;
|
std::vector<std::string> GetRegisteredComponents() const;
|
||||||
ComponentInfo GetComponentInfo(std::string name) const;
|
ComponentInfo GetComponentInfo(std::string name) const;
|
||||||
mpt::PathString GetComponentPath() const;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -423,12 +420,6 @@ std::shared_ptr<const type> ReloadComponent()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
inline mpt::PathString GetComponentPath()
|
|
||||||
{
|
|
||||||
return ComponentManager::Instance()->GetComponentPath();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#else // !MPT_COMPONENT_MANAGER
|
#else // !MPT_COMPONENT_MANAGER
|
||||||
|
|
||||||
|
|
||||||
|
@ -438,8 +429,15 @@ inline mpt::PathString GetComponentPath()
|
||||||
template <typename type>
|
template <typename type>
|
||||||
std::shared_ptr<const type> GetComponent()
|
std::shared_ptr<const type> GetComponent()
|
||||||
{
|
{
|
||||||
|
#if MPT_COMPILER_CLANG
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wexit-time-destructors"
|
||||||
|
#endif // MPT_COMPILER_CLANG
|
||||||
static std::weak_ptr<type> cache;
|
static std::weak_ptr<type> cache;
|
||||||
static mpt::mutex m;
|
static mpt::mutex m;
|
||||||
|
#if MPT_COMPILER_CLANG
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
#endif // MPT_COMPILER_CLANG mpt::lock_guard<mpt::mutex> l(m);
|
||||||
mpt::lock_guard<mpt::mutex> l(m);
|
mpt::lock_guard<mpt::mutex> l(m);
|
||||||
std::shared_ptr<type> component = cache.lock();
|
std::shared_ptr<type> component = cache.lock();
|
||||||
if(!component)
|
if(!component)
|
||||||
|
|
|
@ -1,86 +0,0 @@
|
||||||
/*
|
|
||||||
* Dither.h
|
|
||||||
* --------
|
|
||||||
* Purpose: Dithering when converting to lower resolution sample formats.
|
|
||||||
* Notes : (currently none)
|
|
||||||
* Authors: Olivier Lapicque
|
|
||||||
* OpenMPT Devs
|
|
||||||
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "openmpt/all/BuildSettings.hpp"
|
|
||||||
|
|
||||||
#include "mpt/base/macros.hpp"
|
|
||||||
#include "mpt/string/types.hpp"
|
|
||||||
#include "openmpt/soundbase/Dither.hpp"
|
|
||||||
#include "openmpt/soundbase/DitherModPlug.hpp"
|
|
||||||
#include "openmpt/soundbase/DitherNone.hpp"
|
|
||||||
#include "openmpt/soundbase/DitherSimple.hpp"
|
|
||||||
|
|
||||||
#include "mptRandom.h"
|
|
||||||
|
|
||||||
#include <vector>
|
|
||||||
#include <variant>
|
|
||||||
|
|
||||||
#include <cstddef>
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
|
||||||
|
|
||||||
|
|
||||||
using Dither_Default = Dither_Simple;
|
|
||||||
|
|
||||||
|
|
||||||
class DitherNamesOpenMPT
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
static mpt::ustring GetModeName(std::size_t mode)
|
|
||||||
{
|
|
||||||
mpt::ustring result;
|
|
||||||
switch(mode)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
// no dither
|
|
||||||
result = MPT_USTRING("no");
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
// chosen by OpenMPT code, might change
|
|
||||||
result = MPT_USTRING("default");
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
// rectangular, 0.5 bit depth, no noise shaping (original ModPlug Tracker)
|
|
||||||
result = MPT_USTRING("0.5 bit");
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
// rectangular, 1 bit depth, simple 1st order noise shaping
|
|
||||||
result = MPT_USTRING("1 bit");
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
result = MPT_USTRING("");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
using DithersOpenMPT =
|
|
||||||
Dithers<std::variant<MultiChannelDither<Dither_None>, MultiChannelDither<Dither_Default>, MultiChannelDither<Dither_ModPlug>, MultiChannelDither<Dither_Simple>>, DitherNamesOpenMPT, 4, 1, 0, mpt::good_prng>;
|
|
||||||
|
|
||||||
|
|
||||||
struct DithersWrapperOpenMPT
|
|
||||||
: DithersOpenMPT
|
|
||||||
{
|
|
||||||
template <typename Trd>
|
|
||||||
DithersWrapperOpenMPT(Trd &rd, std::size_t mode = DithersOpenMPT::DefaultDither, std::size_t channels = DithersOpenMPT::DefaultChannels)
|
|
||||||
: DithersOpenMPT(rd, mode, channels)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
|
|
@ -45,11 +45,11 @@ namespace FileReaderExt
|
||||||
// Read a string of length srcSize into fixed-length char array destBuffer using a given read mode.
|
// Read a string of length srcSize into fixed-length char array destBuffer using a given read mode.
|
||||||
// The file cursor is advanced by "srcSize" bytes.
|
// The file cursor is advanced by "srcSize" bytes.
|
||||||
// Returns true if at least one byte could be read or 0 bytes were requested.
|
// Returns true if at least one byte could be read or 0 bytes were requested.
|
||||||
template<mpt::String::ReadWriteMode mode, size_t destSize, typename TFileCursor>
|
template<mpt::String::ReadWriteMode mode, std::size_t destSize, typename TFileCursor>
|
||||||
bool ReadString(TFileCursor &f, char (&destBuffer)[destSize], const typename TFileCursor::pos_type srcSize)
|
bool ReadString(TFileCursor &f, char (&destBuffer)[destSize], const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
||||||
typename TFileCursor::pos_type realSrcSize = source.size(); // In case fewer bytes are available
|
std::size_t realSrcSize = source.size(); // In case fewer bytes are available
|
||||||
mpt::String::WriteAutoBuf(destBuffer) = mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize);
|
mpt::String::WriteAutoBuf(destBuffer) = mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize);
|
||||||
return (realSrcSize > 0 || srcSize == 0);
|
return (realSrcSize > 0 || srcSize == 0);
|
||||||
}
|
}
|
||||||
|
@ -58,11 +58,11 @@ namespace FileReaderExt
|
||||||
// The file cursor is advanced by "srcSize" bytes.
|
// The file cursor is advanced by "srcSize" bytes.
|
||||||
// Returns true if at least one character could be read or 0 characters were requested.
|
// Returns true if at least one character could be read or 0 characters were requested.
|
||||||
template<mpt::String::ReadWriteMode mode, typename TFileCursor>
|
template<mpt::String::ReadWriteMode mode, typename TFileCursor>
|
||||||
bool ReadString(TFileCursor &f, std::string &dest, const typename TFileCursor::pos_type srcSize)
|
bool ReadString(TFileCursor &f, std::string &dest, const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
dest.clear();
|
dest.clear();
|
||||||
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
||||||
typename TFileCursor::pos_type realSrcSize = source.size(); // In case fewer bytes are available
|
std::size_t realSrcSize = source.size(); // In case fewer bytes are available
|
||||||
dest = mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize);
|
dest = mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize);
|
||||||
return (realSrcSize > 0 || srcSize == 0);
|
return (realSrcSize > 0 || srcSize == 0);
|
||||||
}
|
}
|
||||||
|
@ -71,10 +71,10 @@ namespace FileReaderExt
|
||||||
// The file cursor is advanced by "srcSize" bytes.
|
// The file cursor is advanced by "srcSize" bytes.
|
||||||
// Returns true if at least one character could be read or 0 characters were requested.
|
// Returns true if at least one character could be read or 0 characters were requested.
|
||||||
template<mpt::String::ReadWriteMode mode, std::size_t len, typename TFileCursor>
|
template<mpt::String::ReadWriteMode mode, std::size_t len, typename TFileCursor>
|
||||||
bool ReadString(TFileCursor &f, mpt::charbuf<len> &dest, const typename TFileCursor::pos_type srcSize)
|
bool ReadString(TFileCursor &f, mpt::charbuf<len> &dest, const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
||||||
typename TFileCursor::pos_type realSrcSize = source.size(); // In case fewer bytes are available
|
std::size_t realSrcSize = source.size(); // In case fewer bytes are available
|
||||||
dest = mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize);
|
dest = mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize);
|
||||||
return (realSrcSize > 0 || srcSize == 0);
|
return (realSrcSize > 0 || srcSize == 0);
|
||||||
}
|
}
|
||||||
|
@ -83,11 +83,11 @@ namespace FileReaderExt
|
||||||
// The file cursor is advanced by "srcSize" bytes.
|
// The file cursor is advanced by "srcSize" bytes.
|
||||||
// Returns true if at least one character could be read or 0 characters were requested.
|
// Returns true if at least one character could be read or 0 characters were requested.
|
||||||
template<mpt::String::ReadWriteMode mode, typename TFileCursor>
|
template<mpt::String::ReadWriteMode mode, typename TFileCursor>
|
||||||
bool ReadString(TFileCursor &f, mpt::ustring &dest, mpt::Charset charset, const typename TFileCursor::pos_type srcSize)
|
bool ReadString(TFileCursor &f, mpt::ustring &dest, mpt::Charset charset, const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
dest.clear();
|
dest.clear();
|
||||||
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
typename TFileCursor::PinnedView source = f.ReadPinnedView(srcSize); // Make sure the string is cached properly.
|
||||||
typename TFileCursor::pos_type realSrcSize = source.size(); // In case fewer bytes are available
|
std::size_t realSrcSize = source.size(); // In case fewer bytes are available
|
||||||
dest = mpt::ToUnicode(charset, mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize));
|
dest = mpt::ToUnicode(charset, mpt::String::ReadBuf(mode, mpt::byte_cast<const char*>(source.data()), realSrcSize));
|
||||||
return (realSrcSize > 0 || srcSize == 0);
|
return (realSrcSize > 0 || srcSize == 0);
|
||||||
}
|
}
|
||||||
|
@ -95,8 +95,8 @@ namespace FileReaderExt
|
||||||
// Read a string with a preprended length field of type Tsize (must be a packed<*,*> type) into a std::string dest using a given read mode.
|
// Read a string with a preprended length field of type Tsize (must be a packed<*,*> type) into a std::string dest using a given read mode.
|
||||||
// The file cursor is advanced by the string length.
|
// The file cursor is advanced by the string length.
|
||||||
// Returns true if the size field could be read and at least one character could be read or 0 characters were requested.
|
// Returns true if the size field could be read and at least one character could be read or 0 characters were requested.
|
||||||
template<typename Tsize, mpt::String::ReadWriteMode mode, size_t destSize, typename TFileCursor>
|
template<typename Tsize, mpt::String::ReadWriteMode mode, std::size_t destSize, typename TFileCursor>
|
||||||
bool ReadSizedString(TFileCursor &f, char (&destBuffer)[destSize], const typename TFileCursor::pos_type maxLength = std::numeric_limits<typename TFileCursor::pos_type>::max())
|
bool ReadSizedString(TFileCursor &f, char (&destBuffer)[destSize], const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
static_assert(mpt::is_binary_safe<Tsize>::value);
|
static_assert(mpt::is_binary_safe<Tsize>::value);
|
||||||
Tsize srcSize;
|
Tsize srcSize;
|
||||||
|
@ -104,14 +104,14 @@ namespace FileReaderExt
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return FileReaderExt::ReadString<mode>(f, destBuffer, std::min(static_cast<typename TFileCursor::pos_type>(srcSize), maxLength));
|
return FileReaderExt::ReadString<mode>(f, destBuffer, std::min(static_cast<std::size_t>(srcSize), maxLength));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Read a string with a preprended length field of type Tsize (must be a packed<*,*> type) into a std::string dest using a given read mode.
|
// Read a string with a preprended length field of type Tsize (must be a packed<*,*> type) into a std::string dest using a given read mode.
|
||||||
// The file cursor is advanced by the string length.
|
// The file cursor is advanced by the string length.
|
||||||
// Returns true if the size field could be read and at least one character could be read or 0 characters were requested.
|
// Returns true if the size field could be read and at least one character could be read or 0 characters were requested.
|
||||||
template<typename Tsize, mpt::String::ReadWriteMode mode, typename TFileCursor>
|
template<typename Tsize, mpt::String::ReadWriteMode mode, typename TFileCursor>
|
||||||
bool ReadSizedString(TFileCursor &f, std::string &dest, const typename TFileCursor::pos_type maxLength = std::numeric_limits<typename TFileCursor::pos_type>::max())
|
bool ReadSizedString(TFileCursor &f, std::string &dest, const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
static_assert(mpt::is_binary_safe<Tsize>::value);
|
static_assert(mpt::is_binary_safe<Tsize>::value);
|
||||||
Tsize srcSize;
|
Tsize srcSize;
|
||||||
|
@ -119,14 +119,14 @@ namespace FileReaderExt
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return FileReaderExt::ReadString<mode>(f, dest, std::min(static_cast<typename TFileCursor::pos_type>(srcSize), maxLength));
|
return FileReaderExt::ReadString<mode>(f, dest, std::min(static_cast<std::size_t>(srcSize), maxLength));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Read a string with a preprended length field of type Tsize (must be a packed<*,*> type) into a mpt::charbuf dest using a given read mode.
|
// Read a string with a preprended length field of type Tsize (must be a packed<*,*> type) into a mpt::charbuf dest using a given read mode.
|
||||||
// The file cursor is advanced by the string length.
|
// The file cursor is advanced by the string length.
|
||||||
// Returns true if the size field could be read and at least one character could be read or 0 characters were requested.
|
// Returns true if the size field could be read and at least one character could be read or 0 characters were requested.
|
||||||
template<typename Tsize, mpt::String::ReadWriteMode mode, std::size_t len, typename TFileCursor>
|
template<typename Tsize, mpt::String::ReadWriteMode mode, std::size_t len, typename TFileCursor>
|
||||||
bool ReadSizedString(TFileCursor &f, mpt::charbuf<len> &dest, const typename TFileCursor::pos_type maxLength = std::numeric_limits<typename TFileCursor::pos_type>::max())
|
bool ReadSizedString(TFileCursor &f, mpt::charbuf<len> &dest, const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
static_assert(mpt::is_binary_safe<Tsize>::value);
|
static_assert(mpt::is_binary_safe<Tsize>::value);
|
||||||
Tsize srcSize;
|
Tsize srcSize;
|
||||||
|
@ -134,7 +134,7 @@ namespace FileReaderExt
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return FileReaderExt::ReadString<mode>(f, dest, std::min(static_cast<typename TFileCursor::pos_type>(srcSize), maxLength));
|
return FileReaderExt::ReadString<mode>(f, dest, std::min(static_cast<std::size_t>(srcSize), maxLength));
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace FileReaderExt
|
} // namespace FileReaderExt
|
||||||
|
@ -157,7 +157,6 @@ private:
|
||||||
public:
|
public:
|
||||||
|
|
||||||
using pos_type = typename traits_type::pos_type;
|
using pos_type = typename traits_type::pos_type;
|
||||||
using off_t = pos_type;
|
|
||||||
|
|
||||||
using data_type = typename traits_type::data_type;
|
using data_type = typename traits_type::data_type;
|
||||||
using ref_data_type = typename traits_type::ref_data_type;
|
using ref_data_type = typename traits_type::ref_data_type;
|
||||||
|
@ -221,13 +220,13 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T ReadTruncatedIntLE(pos_type size)
|
T ReadTruncatedIntLE(std::size_t size)
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadTruncatedIntLE<T>(*this, size);
|
return mpt::IO::FileReader::ReadTruncatedIntLE<T>(*this, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
T ReadSizedIntLE(pos_type size)
|
T ReadSizedIntLE(std::size_t size)
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadSizedIntLE<T>(*this, size);
|
return mpt::IO::FileReader::ReadSizedIntLE<T>(*this, size);
|
||||||
}
|
}
|
||||||
|
@ -324,17 +323,17 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
size_t ReadStructPartial(T &target, size_t partialSize = sizeof(T))
|
std::size_t ReadStructPartial(T &target, std::size_t partialSize = sizeof(T))
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadStructPartial(*this, target, partialSize);
|
return mpt::IO::FileReader::ReadStructPartial(*this, target, partialSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ReadNullString(std::string &dest, const pos_type maxLength = std::numeric_limits<pos_type>::max())
|
bool ReadNullString(std::string &dest, const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadNullString(*this, dest, maxLength);
|
return mpt::IO::FileReader::ReadNullString(*this, dest, maxLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ReadLine(std::string &dest, const pos_type maxLength = std::numeric_limits<pos_type>::max())
|
bool ReadLine(std::string &dest, const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadLine(*this, dest, maxLength);
|
return mpt::IO::FileReader::ReadLine(*this, dest, maxLength);
|
||||||
}
|
}
|
||||||
|
@ -358,12 +357,12 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
bool ReadVector(std::vector<T> &destVector, size_t destSize)
|
bool ReadVector(std::vector<T> &destVector, std::size_t destSize)
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadVector(*this, destVector, destSize);
|
return mpt::IO::FileReader::ReadVector(*this, destVector, destSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<size_t N>
|
template<std::size_t N>
|
||||||
bool ReadMagic(const char (&magic)[N])
|
bool ReadMagic(const char (&magic)[N])
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadMagic(*this, magic);
|
return mpt::IO::FileReader::ReadMagic(*this, magic);
|
||||||
|
@ -382,61 +381,61 @@ public:
|
||||||
using ChunkList = mpt::IO::FileReader::ChunkList<T, FileReader>;
|
using ChunkList = mpt::IO::FileReader::ChunkList<T, FileReader>;
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
Item<T> ReadNextChunk(off_t alignment)
|
Item<T> ReadNextChunk(pos_type alignment)
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadNextChunk<T, FileReader>(*this, alignment);
|
return mpt::IO::FileReader::ReadNextChunk<T, FileReader>(*this, alignment);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
ChunkList<T> ReadChunks(off_t alignment)
|
ChunkList<T> ReadChunks(pos_type alignment)
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadChunks<T, FileReader>(*this, alignment);
|
return mpt::IO::FileReader::ReadChunks<T, FileReader>(*this, alignment);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
ChunkList<T> ReadChunksUntil(off_t alignment, decltype(T().GetID()) stopAtID)
|
ChunkList<T> ReadChunksUntil(pos_type alignment, decltype(T().GetID()) stopAtID)
|
||||||
{
|
{
|
||||||
return mpt::IO::FileReader::ReadChunksUntil<T, FileReader>(*this, alignment, stopAtID);
|
return mpt::IO::FileReader::ReadChunksUntil<T, FileReader>(*this, alignment, stopAtID);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<mpt::String::ReadWriteMode mode, size_t destSize>
|
template<mpt::String::ReadWriteMode mode, std::size_t destSize>
|
||||||
bool ReadString(char (&destBuffer)[destSize], const pos_type srcSize)
|
bool ReadString(char (&destBuffer)[destSize], const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadString<mode>(*this, destBuffer, srcSize);
|
return FileReaderExt::ReadString<mode>(*this, destBuffer, srcSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<mpt::String::ReadWriteMode mode>
|
template<mpt::String::ReadWriteMode mode>
|
||||||
bool ReadString(std::string &dest, const pos_type srcSize)
|
bool ReadString(std::string &dest, const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadString<mode>(*this, dest, srcSize);
|
return FileReaderExt::ReadString<mode>(*this, dest, srcSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<mpt::String::ReadWriteMode mode, std::size_t len>
|
template<mpt::String::ReadWriteMode mode, std::size_t len>
|
||||||
bool ReadString(mpt::charbuf<len> &dest, const pos_type srcSize)
|
bool ReadString(mpt::charbuf<len> &dest, const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadString<mode>(*this, dest, srcSize);
|
return FileReaderExt::ReadString<mode>(*this, dest, srcSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<mpt::String::ReadWriteMode mode>
|
template<mpt::String::ReadWriteMode mode>
|
||||||
bool ReadString(mpt::ustring &dest, mpt::Charset charset, const pos_type srcSize)
|
bool ReadString(mpt::ustring &dest, mpt::Charset charset, const std::size_t srcSize)
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadString<mode>(*this, dest, charset, srcSize);
|
return FileReaderExt::ReadString<mode>(*this, dest, charset, srcSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename Tsize, mpt::String::ReadWriteMode mode, size_t destSize>
|
template<typename Tsize, mpt::String::ReadWriteMode mode, std::size_t destSize>
|
||||||
bool ReadSizedString(char (&destBuffer)[destSize], const pos_type maxLength = std::numeric_limits<pos_type>::max())
|
bool ReadSizedString(char (&destBuffer)[destSize], const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadSizedString<Tsize, mode>(*this, destBuffer, maxLength);
|
return FileReaderExt::ReadSizedString<Tsize, mode>(*this, destBuffer, maxLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename Tsize, mpt::String::ReadWriteMode mode>
|
template<typename Tsize, mpt::String::ReadWriteMode mode>
|
||||||
bool ReadSizedString(std::string &dest, const pos_type maxLength = std::numeric_limits<pos_type>::max())
|
bool ReadSizedString(std::string &dest, const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadSizedString<Tsize, mode>(*this, dest, maxLength);
|
return FileReaderExt::ReadSizedString<Tsize, mode>(*this, dest, maxLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename Tsize, mpt::String::ReadWriteMode mode, std::size_t len>
|
template<typename Tsize, mpt::String::ReadWriteMode mode, std::size_t len>
|
||||||
bool ReadSizedString(mpt::charbuf<len> &dest, const pos_type maxLength = std::numeric_limits<pos_type>::max())
|
bool ReadSizedString(mpt::charbuf<len> &dest, const std::size_t maxLength = std::numeric_limits<std::size_t>::max())
|
||||||
{
|
{
|
||||||
return FileReaderExt::ReadSizedString<Tsize, mode, len>(*this, dest, maxLength);
|
return FileReaderExt::ReadSizedString<Tsize, mode, len>(*this, dest, maxLength);
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,10 +36,10 @@ class FileCursorFilenameTraits;
|
||||||
template <typename Ttraits, typename Tfilenametraits>
|
template <typename Ttraits, typename Tfilenametraits>
|
||||||
class FileCursor;
|
class FileCursor;
|
||||||
|
|
||||||
}
|
} // namespace IO
|
||||||
|
|
||||||
}
|
} // inline namespace MPT_INLINE_NS
|
||||||
}
|
} // namespace mpt
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
OPENMPT_NAMESPACE_BEGIN
|
||||||
|
|
||||||
|
|
57
Frameworks/OpenMPT/OpenMPT/common/GzipWriter.h
Normal file
57
Frameworks/OpenMPT/OpenMPT/common/GzipWriter.h
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
/*
|
||||||
|
* GzipWriter.h
|
||||||
|
* ------------
|
||||||
|
* Purpose: Simple wrapper around zlib's Gzip writer
|
||||||
|
* Notes : miniz doesn't implement Gzip writing, so this is only compatible with zlib.
|
||||||
|
* Authors: OpenMPT Devs
|
||||||
|
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "openmpt/all/BuildSettings.hpp"
|
||||||
|
|
||||||
|
#include "mptString.h"
|
||||||
|
#include "mpt/io/io.hpp"
|
||||||
|
#include "mpt/io/io_stdstream.hpp"
|
||||||
|
|
||||||
|
#ifdef MPT_WITH_ZLIB
|
||||||
|
|
||||||
|
#include <zlib.h>
|
||||||
|
|
||||||
|
OPENMPT_NAMESPACE_BEGIN
|
||||||
|
|
||||||
|
inline void WriteGzip(std::ostream &output, std::string &outData, const mpt::ustring &fileName)
|
||||||
|
{
|
||||||
|
z_stream strm{};
|
||||||
|
strm.avail_in = static_cast<uInt>(outData.size());
|
||||||
|
strm.next_in = reinterpret_cast<Bytef *>(outData.data());
|
||||||
|
if(deflateInit2(&strm, Z_BEST_COMPRESSION, Z_DEFLATED, 15 | 16, 9, Z_DEFAULT_STRATEGY) != Z_OK)
|
||||||
|
throw std::runtime_error{"zlib init failed"};
|
||||||
|
gz_header gzHeader{};
|
||||||
|
gzHeader.time = static_cast<uLong>(time(nullptr));
|
||||||
|
std::string filenameISO = mpt::ToCharset(mpt::Charset::ISO8859_1, fileName);
|
||||||
|
gzHeader.name = reinterpret_cast<Bytef *>(filenameISO.data());
|
||||||
|
deflateSetHeader(&strm, &gzHeader);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
do
|
||||||
|
{
|
||||||
|
std::array<Bytef, mpt::IO::BUFFERSIZE_TINY> buffer;
|
||||||
|
strm.avail_out = static_cast<uInt>(buffer.size());
|
||||||
|
strm.next_out = buffer.data();
|
||||||
|
deflate(&strm, Z_FINISH);
|
||||||
|
mpt::IO::WritePartial(output, buffer, buffer.size() - strm.avail_out);
|
||||||
|
} while(strm.avail_out == 0);
|
||||||
|
deflateEnd(&strm);
|
||||||
|
} catch(const std::exception &)
|
||||||
|
{
|
||||||
|
deflateEnd(&strm);
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
OPENMPT_NAMESPACE_END
|
||||||
|
|
||||||
|
#endif
|
|
@ -16,8 +16,14 @@
|
||||||
#include "mpt/io/base.hpp"
|
#include "mpt/io/base.hpp"
|
||||||
#include "mpt/io/io.hpp"
|
#include "mpt/io/io.hpp"
|
||||||
#include "mpt/io/io_stdstream.hpp"
|
#include "mpt/io/io_stdstream.hpp"
|
||||||
|
#if defined(MODPLUG_TRACKER)
|
||||||
|
#include "mpt/io_file/fstream.hpp"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(MODPLUG_TRACKER)
|
||||||
#include "mptFileIO.h"
|
#include "mptFileIO.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER)
|
#if defined(MODPLUG_TRACKER)
|
||||||
#include <atomic>
|
#include <atomic>
|
||||||
#endif
|
#endif
|
||||||
|
@ -128,7 +134,7 @@ void GlobalLogger::SendLogMessage(const mpt::source_location &loc, LogLevel leve
|
||||||
#endif
|
#endif
|
||||||
if(mpt::log::FileEnabled)
|
if(mpt::log::FileEnabled)
|
||||||
{
|
{
|
||||||
static std::optional<mpt::ofstream> s_logfile;
|
static std::optional<mpt::IO::ofstream> s_logfile;
|
||||||
if(!s_logfile)
|
if(!s_logfile)
|
||||||
{
|
{
|
||||||
s_logfile.emplace(P_("mptrack.log"), std::ios::app);
|
s_logfile.emplace(P_("mptrack.log"), std::ios::app);
|
||||||
|
@ -318,7 +324,7 @@ bool Dump(const mpt::PathString &filename)
|
||||||
// sort according to index in case of overflows
|
// sort according to index in case of overflows
|
||||||
std::stable_sort(Entries.begin(), Entries.end());
|
std::stable_sort(Entries.begin(), Entries.end());
|
||||||
|
|
||||||
mpt::ofstream f(filename);
|
mpt::IO::ofstream f(filename);
|
||||||
|
|
||||||
f << "Build: OpenMPT " << mpt::transcode<std::string>(mpt::logfile_encoding, Build::GetVersionStringExtended()) << std::endl;
|
f << "Build: OpenMPT " << mpt::transcode<std::string>(mpt::logfile_encoding, Build::GetVersionStringExtended()) << std::endl;
|
||||||
|
|
||||||
|
|
|
@ -12,10 +12,11 @@
|
||||||
|
|
||||||
#include "openmpt/all/BuildSettings.hpp"
|
#include "openmpt/all/BuildSettings.hpp"
|
||||||
|
|
||||||
#include "mpt/base/integer.hpp"
|
|
||||||
#include "mpt/base/floatingpoint.hpp"
|
|
||||||
#include "mpt/base/pointer.hpp"
|
|
||||||
#include "mpt/base/check_platform.hpp"
|
#include "mpt/base/check_platform.hpp"
|
||||||
|
#include "mpt/base/float.hpp"
|
||||||
|
#include "mpt/base/integer.hpp"
|
||||||
|
#include "mpt/base/pointer.hpp"
|
||||||
|
#include "mpt/base/size.hpp"
|
||||||
#include "mpt/base/source_location.hpp"
|
#include "mpt/base/source_location.hpp"
|
||||||
#include "openmpt/base/Types.hpp"
|
#include "openmpt/base/Types.hpp"
|
||||||
|
|
||||||
|
|
|
@ -28,9 +28,6 @@ namespace CPU
|
||||||
#ifdef MPT_ENABLE_ARCH_INTRINSICS
|
#ifdef MPT_ENABLE_ARCH_INTRINSICS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER) && !defined(MPT_BUILD_WINESUPPORT)
|
#if defined(MODPLUG_TRACKER) && !defined(MPT_BUILD_WINESUPPORT)
|
||||||
|
|
||||||
|
|
||||||
|
@ -93,11 +90,6 @@ public:
|
||||||
#endif // MODPLUG_TRACKER
|
#endif // MODPLUG_TRACKER
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// legacy interface
|
|
||||||
|
|
||||||
namespace feature = mpt::arch::current::feature;
|
namespace feature = mpt::arch::current::feature;
|
||||||
namespace mode = mpt::arch::current::mode;
|
namespace mode = mpt::arch::current::mode;
|
||||||
|
|
||||||
|
@ -112,8 +104,6 @@ namespace mode = mpt::arch::current::mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif // MPT_ENABLE_ARCH_INTRINSICS
|
#endif // MPT_ENABLE_ARCH_INTRINSICS
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,100 +0,0 @@
|
||||||
/*
|
|
||||||
* mptFileIO.cpp
|
|
||||||
* -------------
|
|
||||||
* Purpose: File I/O wrappers
|
|
||||||
* Notes : (currently none)
|
|
||||||
* Authors: OpenMPT Devs
|
|
||||||
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#include "stdafx.h"
|
|
||||||
#include "mptFileIO.h"
|
|
||||||
|
|
||||||
#ifdef MODPLUG_TRACKER
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
#include <windows.h>
|
|
||||||
#include <WinIoCtl.h>
|
|
||||||
#include <io.h>
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MPT_ENABLE_FILEIO)
|
|
||||||
|
|
||||||
|
|
||||||
#if !defined(MPT_BUILD_SILENCE_LIBOPENMPT_CONFIGURATION_WARNINGS)
|
|
||||||
|
|
||||||
#if defined(MPT_COMPILER_QUIRK_WINDOWS_FSTREAM_NO_WCHAR)
|
|
||||||
#if MPT_GCC_BEFORE(9,1,0)
|
|
||||||
MPT_WARNING("Warning: MinGW with GCC earlier than 9.1 detected. Standard library does neither provide std::fstream wchar_t overloads nor std::filesystem with wchar_t support. Unicode filename support is thus unavailable.")
|
|
||||||
#endif // MPT_GCC_AT_LEAST(9,1,0)
|
|
||||||
#endif // MPT_COMPILER_QUIRK_WINDOWS_FSTREAM_NO_WCHAR
|
|
||||||
|
|
||||||
#endif // !MPT_BUILD_SILENCE_LIBOPENMPT_CONFIGURATION_WARNINGS
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef MODPLUG_TRACKER
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
bool SetFilesystemCompression(HANDLE hFile)
|
|
||||||
{
|
|
||||||
if(hFile == INVALID_HANDLE_VALUE)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
USHORT format = COMPRESSION_FORMAT_DEFAULT;
|
|
||||||
DWORD dummy = 0;
|
|
||||||
BOOL result = DeviceIoControl(hFile, FSCTL_SET_COMPRESSION, (LPVOID)&format, sizeof(format), NULL, 0, &dummy /*required*/ , NULL);
|
|
||||||
return result != FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool SetFilesystemCompression(int fd)
|
|
||||||
{
|
|
||||||
if(fd < 0)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
uintptr_t fhandle = _get_osfhandle(fd);
|
|
||||||
HANDLE hFile = (HANDLE)fhandle;
|
|
||||||
if(hFile == INVALID_HANDLE_VALUE)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return SetFilesystemCompression(hFile);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool SetFilesystemCompression(const mpt::PathString &filename)
|
|
||||||
{
|
|
||||||
DWORD attributes = GetFileAttributes(mpt::support_long_path(filename.AsNative()).c_str());
|
|
||||||
if(attributes == INVALID_FILE_ATTRIBUTES)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(attributes & FILE_ATTRIBUTE_COMPRESSED)
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
HANDLE hFile = CreateFile(mpt::support_long_path(filename.AsNative()).c_str(), GENERIC_ALL, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, NULL);
|
|
||||||
if(hFile == INVALID_HANDLE_VALUE)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
bool result = SetFilesystemCompression(hFile);
|
|
||||||
CloseHandle(hFile);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
#endif // MPT_ENABLE_FILEIO
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
* mptFileIO.h
|
* mptFileIO.h
|
||||||
* -----------
|
* -----------
|
||||||
* Purpose: A wrapper around std::fstream, enforcing usage of mpt::PathString.
|
* Purpose:
|
||||||
* Notes : You should only ever use these wrappers instead of plain std::fstream classes.
|
* Notes : You should only ever use these wrappers instead of plain std::fstream classes.
|
||||||
* Authors: OpenMPT Devs
|
* Authors: OpenMPT Devs
|
||||||
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
||||||
|
@ -13,23 +13,13 @@
|
||||||
|
|
||||||
#if defined(MPT_ENABLE_FILEIO)
|
#if defined(MPT_ENABLE_FILEIO)
|
||||||
|
|
||||||
#include "mpt/base/detect_libcxx.hpp"
|
|
||||||
#include "mpt/base/namespace.hpp"
|
|
||||||
#include "mpt/io_file/fstream.hpp"
|
|
||||||
#include "mpt/io_file_read/inputfile_filecursor.hpp"
|
#include "mpt/io_file_read/inputfile_filecursor.hpp"
|
||||||
|
|
||||||
#include "../common/mptString.h"
|
|
||||||
#include "../common/mptPathString.h"
|
#include "../common/mptPathString.h"
|
||||||
#include "../common/FileReaderFwd.h"
|
#include "../common/FileReaderFwd.h"
|
||||||
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
|
||||||
#ifdef MODPLUG_TRACKER
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
#include <windows.h>
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
#endif // MPT_ENABLE_FILEIO
|
#endif // MPT_ENABLE_FILEIO
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,29 +29,6 @@ OPENMPT_NAMESPACE_BEGIN
|
||||||
#if defined(MPT_ENABLE_FILEIO)
|
#if defined(MPT_ENABLE_FILEIO)
|
||||||
|
|
||||||
|
|
||||||
// Sets the NTFS compression attribute on the file or directory.
|
|
||||||
// Requires read and write permissions for already opened files.
|
|
||||||
// Returns true if the attribute has been set.
|
|
||||||
// In almost all cases, the return value should be ignored because most filesystems other than NTFS do not support compression.
|
|
||||||
#ifdef MODPLUG_TRACKER
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
bool SetFilesystemCompression(HANDLE hFile);
|
|
||||||
bool SetFilesystemCompression(int fd);
|
|
||||||
bool SetFilesystemCompression(const mpt::PathString &filename);
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
namespace mpt
|
|
||||||
{
|
|
||||||
|
|
||||||
using fstream = mpt::IO::fstream;
|
|
||||||
using ifstream = mpt::IO::ifstream;
|
|
||||||
using ofstream = mpt::IO::ofstream;
|
|
||||||
|
|
||||||
} // namespace mpt
|
|
||||||
|
|
||||||
|
|
||||||
template <typename Targ1>
|
template <typename Targ1>
|
||||||
inline FileCursor GetFileReader(Targ1 &&arg1)
|
inline FileCursor GetFileReader(Targ1 &&arg1)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,114 +0,0 @@
|
||||||
/*
|
|
||||||
* mptFileTemporary.cpp
|
|
||||||
* --------------------
|
|
||||||
* Purpose:
|
|
||||||
* Notes : Currently none.
|
|
||||||
* Authors: OpenMPT Devs
|
|
||||||
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "stdafx.h"
|
|
||||||
#include "mptFileTemporary.h"
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
|
||||||
#include "mpt/fs/common_directories.hpp"
|
|
||||||
#include "mpt/fs/fs.hpp"
|
|
||||||
#include "mpt/io_file_unique/unique_basename.hpp"
|
|
||||||
#include "mpt/io_file_unique/unique_tempfilename.hpp"
|
|
||||||
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
|
||||||
#include "mpt/string_transcode/transcode.hpp"
|
|
||||||
#include "mpt/uuid/uuid.hpp"
|
|
||||||
|
|
||||||
#include "mptRandom.h"
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
#include <windows.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace mpt
|
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TemporaryPathname::TemporaryPathname(const mpt::PathString &fileNameExtension)
|
|
||||||
{
|
|
||||||
mpt::PathString prefix;
|
|
||||||
#if defined(LIBOPENMPT_BUILD)
|
|
||||||
prefix = P_("libopenmpt");
|
|
||||||
#else
|
|
||||||
prefix = P_("OpenMPT");
|
|
||||||
#endif
|
|
||||||
m_Path = mpt::PathString::FromNative(mpt::IO::unique_tempfilename{mpt::IO::unique_basename{prefix, mpt::UUID::GenerateLocalUseOnly(mpt::global_prng())}, fileNameExtension});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TempFileGuard::TempFileGuard(const mpt::TemporaryPathname &pathname)
|
|
||||||
: filename(pathname.GetPathname())
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
mpt::PathString TempFileGuard::GetFilename() const
|
|
||||||
{
|
|
||||||
return filename;
|
|
||||||
}
|
|
||||||
|
|
||||||
TempFileGuard::~TempFileGuard()
|
|
||||||
{
|
|
||||||
if(!filename.empty())
|
|
||||||
{
|
|
||||||
DeleteFile(mpt::support_long_path(filename.AsNative()).c_str());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
TempDirGuard::TempDirGuard(const mpt::TemporaryPathname &pathname)
|
|
||||||
: dirname(pathname.GetPathname().WithTrailingSlash())
|
|
||||||
{
|
|
||||||
if(dirname.empty())
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if(::CreateDirectory(mpt::support_long_path(dirname.AsNative()).c_str(), NULL) == 0)
|
|
||||||
{ // fail
|
|
||||||
dirname = mpt::PathString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
mpt::PathString TempDirGuard::GetDirname() const
|
|
||||||
{
|
|
||||||
return dirname;
|
|
||||||
}
|
|
||||||
|
|
||||||
TempDirGuard::~TempDirGuard()
|
|
||||||
{
|
|
||||||
if(!dirname.empty())
|
|
||||||
{
|
|
||||||
mpt::native_fs{}.delete_tree(dirname);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} // namespace mpt
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#else
|
|
||||||
MPT_MSVC_WORKAROUND_LNK4221(mptFileTemporary)
|
|
||||||
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
|
|
@ -14,7 +14,23 @@
|
||||||
|
|
||||||
#include "mpt/base/namespace.hpp"
|
#include "mpt/base/namespace.hpp"
|
||||||
|
|
||||||
|
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
||||||
|
|
||||||
|
#include "mpt/fs/common_directories.hpp"
|
||||||
|
#include "mpt/fs/fs.hpp"
|
||||||
|
#include "mpt/io_file_unique/unique_basename.hpp"
|
||||||
|
#include "mpt/io_file_unique/unique_tempfilename.hpp"
|
||||||
|
#include "mpt/uuid/uuid.hpp"
|
||||||
|
|
||||||
#include "mptPathString.h"
|
#include "mptPathString.h"
|
||||||
|
#include "mptRandom.h"
|
||||||
|
|
||||||
|
#if MPT_OS_WINDOWS
|
||||||
|
#include <windows.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
OPENMPT_NAMESPACE_BEGIN
|
||||||
|
@ -36,7 +52,16 @@ class TemporaryPathname
|
||||||
private:
|
private:
|
||||||
mpt::PathString m_Path;
|
mpt::PathString m_Path;
|
||||||
public:
|
public:
|
||||||
TemporaryPathname(const mpt::PathString &fileNameExtension = P_("tmp"));
|
TemporaryPathname(const mpt::PathString &fileNameExtension = P_("tmp"))
|
||||||
|
{
|
||||||
|
mpt::PathString prefix;
|
||||||
|
#if defined(LIBOPENMPT_BUILD)
|
||||||
|
prefix = P_("libopenmpt");
|
||||||
|
#else
|
||||||
|
prefix = P_("OpenMPT");
|
||||||
|
#endif
|
||||||
|
m_Path = mpt::PathString::FromNative(mpt::IO::unique_tempfilename{mpt::IO::unique_basename{prefix, mpt::UUID::GenerateLocalUseOnly(mpt::global_prng())}, fileNameExtension});
|
||||||
|
}
|
||||||
public:
|
public:
|
||||||
mpt::PathString GetPathname() const
|
mpt::PathString GetPathname() const
|
||||||
{
|
{
|
||||||
|
@ -53,12 +78,26 @@ class TempFileGuard
|
||||||
private:
|
private:
|
||||||
const mpt::PathString filename;
|
const mpt::PathString filename;
|
||||||
public:
|
public:
|
||||||
TempFileGuard(const mpt::TemporaryPathname &pathname = mpt::TemporaryPathname{});
|
TempFileGuard(const mpt::TemporaryPathname &pathname = mpt::TemporaryPathname{})
|
||||||
mpt::PathString GetFilename() const;
|
: filename(pathname.GetPathname())
|
||||||
~TempFileGuard();
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
mpt::PathString GetFilename() const
|
||||||
|
{
|
||||||
|
return filename;
|
||||||
|
}
|
||||||
|
~TempFileGuard()
|
||||||
|
{
|
||||||
|
if(!filename.empty())
|
||||||
|
{
|
||||||
|
DeleteFile(mpt::support_long_path(filename.AsNative()).c_str());
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Scoped temporary directory guard. Deletes the directory when going out of scope.
|
// Scoped temporary directory guard. Deletes the directory when going out of scope.
|
||||||
// The directory itself is created automatically.
|
// The directory itself is created automatically.
|
||||||
class TempDirGuard
|
class TempDirGuard
|
||||||
|
@ -66,9 +105,29 @@ class TempDirGuard
|
||||||
private:
|
private:
|
||||||
mpt::PathString dirname;
|
mpt::PathString dirname;
|
||||||
public:
|
public:
|
||||||
TempDirGuard(const mpt::TemporaryPathname &pathname = mpt::TemporaryPathname{});
|
TempDirGuard(const mpt::TemporaryPathname &pathname = mpt::TemporaryPathname{})
|
||||||
mpt::PathString GetDirname() const;
|
: dirname(pathname.GetPathname().WithTrailingSlash())
|
||||||
~TempDirGuard();
|
{
|
||||||
|
if(dirname.empty())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(::CreateDirectory(mpt::support_long_path(dirname.AsNative()).c_str(), NULL) == 0)
|
||||||
|
{ // fail
|
||||||
|
dirname = mpt::PathString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mpt::PathString GetDirname() const
|
||||||
|
{
|
||||||
|
return dirname;
|
||||||
|
}
|
||||||
|
~TempDirGuard()
|
||||||
|
{
|
||||||
|
if(!dirname.empty())
|
||||||
|
{
|
||||||
|
mpt::native_fs{}.delete_tree(dirname);
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -10,18 +10,12 @@
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
#include "mptPathString.h"
|
#include "mptPathString.h"
|
||||||
|
|
||||||
#include "mpt/path/os_path_long.hpp"
|
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
||||||
#include <tchar.h>
|
#include <tchar.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
#include <windows.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
OPENMPT_NAMESPACE_BEGIN
|
||||||
|
|
||||||
|
|
||||||
|
@ -31,24 +25,10 @@ namespace mpt
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
#if !MPT_OS_WINDOWS_WINRT
|
|
||||||
|
|
||||||
int PathCompareNoCase(const PathString & a, const PathString & b)
|
|
||||||
{
|
|
||||||
return lstrcmpi(a.AsNative().c_str(), b.AsNative().c_str());
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // !MPT_OS_WINDOWS_WINRT
|
|
||||||
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Convert an absolute path to a path that's relative to "&relativeTo".
|
// Convert an absolute path to a path that's relative to "&relativeTo".
|
||||||
mpt::PathString AbsolutePathToRelative(const mpt::PathString &path, const mpt::PathString &relativeTo)
|
mpt::PathString AbsolutePathToRelative(const mpt::PathString &path, const mpt::PathString &relativeTo)
|
||||||
{
|
{
|
||||||
|
@ -107,59 +87,13 @@ mpt::PathString RelativePathToAbsolute(const mpt::PathString &path, const mpt::P
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
#if !(MPT_WINRT_BEFORE(MPT_WIN_10))
|
|
||||||
|
|
||||||
mpt::PathString GetAbsolutePath(const mpt::PathString &path)
|
|
||||||
{
|
|
||||||
DWORD size = GetFullPathName(path.AsNative().c_str(), 0, nullptr, nullptr);
|
|
||||||
if(size == 0)
|
|
||||||
{
|
|
||||||
return path;
|
|
||||||
}
|
|
||||||
std::vector<TCHAR> fullPathName(size, TEXT('\0'));
|
|
||||||
if(GetFullPathName(path.AsNative().c_str(), size, fullPathName.data(), nullptr) == 0)
|
|
||||||
{
|
|
||||||
return path;
|
|
||||||
}
|
|
||||||
return mpt::PathString::FromNative(fullPathName.data());
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} // namespace mpt
|
} // namespace mpt
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
mpt::ustring SanitizePathComponent(mpt::ustring str)
|
|
||||||
{
|
|
||||||
return mpt::PathString::FromUnicode(str).AsSanitizedComponent().ToUnicode();
|
|
||||||
}
|
|
||||||
|
|
||||||
#if defined(MPT_WITH_MFC)
|
|
||||||
CString SanitizePathComponent(CString str)
|
|
||||||
{
|
|
||||||
return mpt::PathString::FromCString(str).AsSanitizedComponent().ToCString();
|
|
||||||
}
|
|
||||||
#endif // MPT_WITH_MFC
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
OPENMPT_NAMESPACE_END
|
||||||
|
|
|
@ -19,8 +19,16 @@
|
||||||
#include "mpt/path/os_path.hpp"
|
#include "mpt/path/os_path.hpp"
|
||||||
#include "mpt/string/types.hpp"
|
#include "mpt/string/types.hpp"
|
||||||
|
|
||||||
|
#if defined(MODPLUG_TRACKER)
|
||||||
|
#include "mpt/string_transcode/transcode.hpp"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "mptString.h"
|
#include "mptString.h"
|
||||||
|
|
||||||
|
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
||||||
|
#include <windows.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
OPENMPT_NAMESPACE_BEGIN
|
||||||
|
@ -64,14 +72,13 @@ inline mpt::ustring ToUString(const T &x)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
#if defined(MODPLUG_TRACKER)
|
||||||
#if !(MPT_WINRT_BEFORE(MPT_WIN_10))
|
|
||||||
// Returns the absolute path for a potentially relative path and removes ".." or "." components. (same as GetFullPathNameW)
|
|
||||||
mpt::PathString GetAbsolutePath(const mpt::PathString &path);
|
|
||||||
#endif
|
#if MPT_OS_WINDOWS
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER) && MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
// Relative / absolute paths conversion
|
// Relative / absolute paths conversion
|
||||||
|
|
||||||
|
@ -79,15 +86,30 @@ mpt::PathString AbsolutePathToRelative(const mpt::PathString &p, const mpt::Path
|
||||||
|
|
||||||
mpt::PathString RelativePathToAbsolute(const mpt::PathString &p, const mpt::PathString &relativeTo);
|
mpt::PathString RelativePathToAbsolute(const mpt::PathString &p, const mpt::PathString &relativeTo);
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
#if !MPT_OS_WINDOWS_WINRT
|
#if !MPT_OS_WINDOWS_WINRT
|
||||||
int PathCompareNoCase(const PathString &a, const PathString &b);
|
inline int PathCompareNoCase(const PathString &a, const PathString &b)
|
||||||
|
{
|
||||||
|
return lstrcmpi(a.AsNative().c_str(), b.AsNative().c_str());
|
||||||
|
}
|
||||||
#endif // !MPT_OS_WINDOWS_WINRT
|
#endif // !MPT_OS_WINDOWS_WINRT
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif // MPT_OS_WINDOWS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
template <typename Tstring>
|
||||||
|
inline Tstring SanitizePathComponent(const Tstring &str)
|
||||||
|
{
|
||||||
|
return mpt::transcode<Tstring>(mpt::native_path::FromNative(mpt::transcode<mpt::native_path::raw_path_type>(str)).AsSanitizedComponent().AsNative());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif // MODPLUG_TRACKER
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -95,18 +117,4 @@ int PathCompareNoCase(const PathString &a, const PathString &b);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER)
|
|
||||||
|
|
||||||
// Sanitize a filename (remove special chars)
|
|
||||||
|
|
||||||
mpt::ustring SanitizePathComponent(mpt::ustring str);
|
|
||||||
|
|
||||||
#if defined(MPT_WITH_MFC)
|
|
||||||
CString SanitizePathComponent(CString str);
|
|
||||||
#endif // MPT_WITH_MFC
|
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
OPENMPT_NAMESPACE_END
|
||||||
|
|
|
@ -45,13 +45,27 @@ mpt::thread_safe_prng<mpt::default_prng> & global_prng()
|
||||||
|
|
||||||
mpt::random_device & global_random_device()
|
mpt::random_device & global_random_device()
|
||||||
{
|
{
|
||||||
|
#if MPT_COMPILER_CLANG
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wexit-time-destructors"
|
||||||
|
#endif // MPT_COMPILER_CLANG
|
||||||
static mpt::random_device g_rd;
|
static mpt::random_device g_rd;
|
||||||
|
#if MPT_COMPILER_CLANG
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
#endif // MPT_COMPILER_CLANG
|
||||||
return g_rd;
|
return g_rd;
|
||||||
}
|
}
|
||||||
|
|
||||||
mpt::thread_safe_prng<mpt::default_prng> & global_prng()
|
mpt::thread_safe_prng<mpt::default_prng> & global_prng()
|
||||||
{
|
{
|
||||||
|
#if MPT_COMPILER_CLANG
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wexit-time-destructors"
|
||||||
|
#endif // MPT_COMPILER_CLANG
|
||||||
static mpt::thread_safe_prng<mpt::default_prng> g_global_prng(mpt::make_prng<mpt::default_prng>(global_random_device()));
|
static mpt::thread_safe_prng<mpt::default_prng> g_global_prng(mpt::make_prng<mpt::default_prng>(global_random_device()));
|
||||||
|
#if MPT_COMPILER_CLANG
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
#endif // MPT_COMPILER_CLANG
|
||||||
return g_global_prng;
|
return g_global_prng;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,7 @@ public:
|
||||||
#ifdef MPT_BUILD_FUZZER
|
#ifdef MPT_BUILD_FUZZER
|
||||||
|
|
||||||
// Use deterministic seeding
|
// Use deterministic seeding
|
||||||
using random_device = deterministc_random_device;
|
using random_device = deterministic_random_device;
|
||||||
|
|
||||||
#else // !MPT_BUILD_FUZZER
|
#else // !MPT_BUILD_FUZZER
|
||||||
|
|
||||||
|
|
|
@ -408,6 +408,7 @@ inline CString ToCString(Tencoding &&from, Tsrc &&str)
|
||||||
|
|
||||||
#define UC_(x) MPT_UCHAR(x)
|
#define UC_(x) MPT_UCHAR(x)
|
||||||
#define UL_(x) MPT_ULITERAL(x)
|
#define UL_(x) MPT_ULITERAL(x)
|
||||||
|
#define UV_(x) MPT_USTRINGVIEW(x)
|
||||||
#define U_(x) MPT_USTRING(x)
|
#define U_(x) MPT_USTRING(x)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -25,11 +25,12 @@
|
||||||
#include <optional>
|
#include <optional>
|
||||||
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
#endif // MODPLUG_TRACKER && MPT_OS_WINDOWS
|
||||||
|
|
||||||
|
#if defined(MPT_FALLBACK_TIMEZONE_C)
|
||||||
|
#include <ctime>
|
||||||
|
#endif // MPT_FALLBACK_TIMEZONE_C
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
#if MPT_OS_WINDOWS
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#if defined(MODPLUG_TRACKER)
|
|
||||||
#include <mmsystem.h>
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -41,6 +42,8 @@ namespace mpt
|
||||||
namespace Date
|
namespace Date
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER)
|
#if defined(MODPLUG_TRACKER)
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
#if MPT_OS_WINDOWS
|
||||||
|
@ -51,7 +54,11 @@ namespace ANSI
|
||||||
uint64 Now()
|
uint64 Now()
|
||||||
{
|
{
|
||||||
FILETIME filetime;
|
FILETIME filetime;
|
||||||
|
#if MPT_WIN_AT_LEAST(MPT_WIN_8)
|
||||||
|
GetSystemTimePreciseAsFileTime(&filetime);
|
||||||
|
#else
|
||||||
GetSystemTimeAsFileTime(&filetime);
|
GetSystemTimeAsFileTime(&filetime);
|
||||||
|
#endif
|
||||||
return ((uint64)filetime.dwHighDateTime << 32 | filetime.dwLowDateTime);
|
return ((uint64)filetime.dwHighDateTime << 32 | filetime.dwLowDateTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -91,6 +98,8 @@ mpt::ustring ToUString(uint64 time100ns)
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
#endif // MODPLUG_TRACKER
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace nochrono
|
namespace nochrono
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -393,100 +402,4 @@ mpt::ustring ToShortenedISO8601(Local date)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef MODPLUG_TRACKER
|
|
||||||
|
|
||||||
namespace Util
|
|
||||||
{
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
void MultimediaClock::Init()
|
|
||||||
{
|
|
||||||
m_CurrentPeriod = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void MultimediaClock::SetPeriod(uint32 ms)
|
|
||||||
{
|
|
||||||
TIMECAPS caps = {};
|
|
||||||
if(timeGetDevCaps(&caps, sizeof(caps)) != MMSYSERR_NOERROR)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if((caps.wPeriodMax == 0) || (caps.wPeriodMin > caps.wPeriodMax))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
ms = std::clamp(mpt::saturate_cast<UINT>(ms), caps.wPeriodMin, caps.wPeriodMax);
|
|
||||||
if(timeBeginPeriod(ms) != MMSYSERR_NOERROR)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
m_CurrentPeriod = ms;
|
|
||||||
}
|
|
||||||
|
|
||||||
void MultimediaClock::Cleanup()
|
|
||||||
{
|
|
||||||
if(m_CurrentPeriod > 0)
|
|
||||||
{
|
|
||||||
if(timeEndPeriod(m_CurrentPeriod) != MMSYSERR_NOERROR)
|
|
||||||
{
|
|
||||||
// should not happen
|
|
||||||
MPT_ASSERT_NOTREACHED();
|
|
||||||
}
|
|
||||||
m_CurrentPeriod = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
MultimediaClock::MultimediaClock()
|
|
||||||
{
|
|
||||||
Init();
|
|
||||||
}
|
|
||||||
|
|
||||||
MultimediaClock::MultimediaClock(uint32 ms)
|
|
||||||
{
|
|
||||||
Init();
|
|
||||||
SetResolution(ms);
|
|
||||||
}
|
|
||||||
|
|
||||||
MultimediaClock::~MultimediaClock()
|
|
||||||
{
|
|
||||||
Cleanup();
|
|
||||||
}
|
|
||||||
|
|
||||||
uint32 MultimediaClock::SetResolution(uint32 ms)
|
|
||||||
{
|
|
||||||
if(m_CurrentPeriod == ms)
|
|
||||||
{
|
|
||||||
return m_CurrentPeriod;
|
|
||||||
}
|
|
||||||
Cleanup();
|
|
||||||
if(ms != 0)
|
|
||||||
{
|
|
||||||
SetPeriod(ms);
|
|
||||||
}
|
|
||||||
return GetResolution();
|
|
||||||
}
|
|
||||||
|
|
||||||
uint32 MultimediaClock::GetResolution() const
|
|
||||||
{
|
|
||||||
return m_CurrentPeriod;
|
|
||||||
}
|
|
||||||
|
|
||||||
uint32 MultimediaClock::Now() const
|
|
||||||
{
|
|
||||||
return timeGetTime();
|
|
||||||
}
|
|
||||||
|
|
||||||
uint64 MultimediaClock::NowNanoseconds() const
|
|
||||||
{
|
|
||||||
return (uint64)timeGetTime() * (uint64)1000000;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
} // namespace Util
|
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
OPENMPT_NAMESPACE_END
|
||||||
|
|
|
@ -15,10 +15,13 @@
|
||||||
#if MPT_CXX_AT_LEAST(20) && !defined(MPT_LIBCXX_QUIRK_NO_CHRONO) && !defined(MPT_LIBCXX_QUIRK_NO_CHRONO_DATE)
|
#if MPT_CXX_AT_LEAST(20) && !defined(MPT_LIBCXX_QUIRK_NO_CHRONO) && !defined(MPT_LIBCXX_QUIRK_NO_CHRONO_DATE)
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
#include <exception>
|
#include <exception>
|
||||||
|
#elif MPT_CXX_AT_LEAST(17) && !defined(MPT_LIBCXX_QUIRK_NO_CHRONO) && defined(MODPLUG_TRACKER)
|
||||||
|
#include <chrono>
|
||||||
#endif
|
#endif
|
||||||
#include <string>
|
|
||||||
|
|
||||||
|
#if MPT_CXX_BEFORE(20) || defined(MPT_LIBCXX_QUIRK_NO_CHRONO) || defined(MPT_LIBCXX_QUIRK_NO_CHRONO_DATE)
|
||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
#endif
|
||||||
|
|
||||||
#if MPT_WINNT_AT_LEAST(MPT_WIN_8)
|
#if MPT_WINNT_AT_LEAST(MPT_WIN_8)
|
||||||
#define MPT_FALLBACK_TIMEZONE_WINDOWS_HISTORIC
|
#define MPT_FALLBACK_TIMEZONE_WINDOWS_HISTORIC
|
||||||
|
@ -37,11 +40,35 @@ OPENMPT_NAMESPACE_BEGIN
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(MODPLUG_TRACKER) && !defined(MPT_LIBCXX_QUIRK_NO_CHRONO)
|
||||||
|
|
||||||
|
namespace mpt {
|
||||||
|
namespace chrono {
|
||||||
|
#if MPT_CXX_AT_LEAST(20)
|
||||||
|
using days = std::chrono::days;
|
||||||
|
using weeks = std::chrono::weeks;
|
||||||
|
using years = std::chrono::years;
|
||||||
|
using months = std::chrono::months;
|
||||||
|
#else
|
||||||
|
using days = std::chrono::duration<int, std::ratio_multiply<std::ratio<24>, std::chrono::hours::period>>;
|
||||||
|
using weeks = std::chrono::duration<int, std::ratio_multiply<std::ratio<7>, mpt::chrono::days::period>>;
|
||||||
|
using years = std::chrono::duration<int, std::ratio_multiply<std::ratio<146097, 400>, mpt::chrono::days::period>>;
|
||||||
|
using months = std::chrono::duration<int, std::ratio_divide<mpt::chrono::years::period, std::ratio<12>>>;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // !MPT_LIBCXX_QUIRK_NO_CHRONO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
namespace mpt
|
namespace mpt
|
||||||
{
|
{
|
||||||
namespace Date
|
namespace Date
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER)
|
#if defined(MODPLUG_TRACKER)
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
#if MPT_OS_WINDOWS
|
||||||
|
@ -60,6 +87,8 @@ mpt::ustring ToUString(uint64 time100ns); // i.e. 2015-01-15 18:32:01.718
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
#endif // MODPLUG_TRACKER
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
enum class LogicalTimezone
|
enum class LogicalTimezone
|
||||||
{
|
{
|
||||||
Unspecified,
|
Unspecified,
|
||||||
|
@ -146,11 +175,15 @@ struct Unix
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#if MPT_CXX_BEFORE(20) || defined(MPT_LIBCXX_QUIRK_NO_CHRONO) || defined(MPT_LIBCXX_QUIRK_NO_CHRONO_DATE)
|
||||||
|
|
||||||
inline Unix UnixNow()
|
inline Unix UnixNow()
|
||||||
{
|
{
|
||||||
return Unix{static_cast<int64>(std::time(nullptr))};
|
return Unix{static_cast<int64>(std::time(nullptr))};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
inline int64 UnixAsSeconds(Unix tp)
|
inline int64 UnixAsSeconds(Unix tp)
|
||||||
{
|
{
|
||||||
return tp.value;
|
return tp.value;
|
||||||
|
@ -238,6 +271,7 @@ inline mpt::Date::UTC UnixAsUTC(Unix tp)
|
||||||
|
|
||||||
inline mpt::Date::Unix UnixFromLocal(Local local)
|
inline mpt::Date::Unix UnixFromLocal(Local local)
|
||||||
{
|
{
|
||||||
|
#if !defined(MPT_LIBCXX_QUIRK_CHRONO_DATE_NO_ZONED_TIME)
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
std::chrono::time_point<std::chrono::local_t, std::chrono::seconds> local_tp =
|
std::chrono::time_point<std::chrono::local_t, std::chrono::seconds> local_tp =
|
||||||
|
@ -255,6 +289,7 @@ inline mpt::Date::Unix UnixFromLocal(Local local)
|
||||||
return std::chrono::zoned_time{std::chrono::current_zone(), local_tp}.get_sys_time();
|
return std::chrono::zoned_time{std::chrono::current_zone(), local_tp}.get_sys_time();
|
||||||
#endif
|
#endif
|
||||||
} catch(const std::exception &)
|
} catch(const std::exception &)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
return mpt::Date::UnixFromSeconds(mpt::Date::nochrono::UnixAsSeconds(mpt::Date::nochrono::UnixFromLocal(local)));
|
return mpt::Date::UnixFromSeconds(mpt::Date::nochrono::UnixAsSeconds(mpt::Date::nochrono::UnixFromLocal(local)));
|
||||||
}
|
}
|
||||||
|
@ -262,6 +297,7 @@ inline mpt::Date::Unix UnixFromLocal(Local local)
|
||||||
|
|
||||||
inline mpt::Date::Local UnixAsLocal(Unix tp)
|
inline mpt::Date::Local UnixAsLocal(Unix tp)
|
||||||
{
|
{
|
||||||
|
#if !defined(MPT_LIBCXX_QUIRK_CHRONO_DATE_NO_ZONED_TIME)
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
std::chrono::zoned_time local_tp{ std::chrono::current_zone(), tp };
|
std::chrono::zoned_time local_tp{ std::chrono::current_zone(), tp };
|
||||||
|
@ -277,6 +313,7 @@ inline mpt::Date::Local UnixAsLocal(Unix tp)
|
||||||
result.seconds = static_cast<int64>(hms.seconds().count());
|
result.seconds = static_cast<int64>(hms.seconds().count());
|
||||||
return result;
|
return result;
|
||||||
} catch(const std::exception &)
|
} catch(const std::exception &)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
return mpt::Date::nochrono::UnixAsLocal(mpt::Date::nochrono::UnixFromSeconds(mpt::Date::UnixAsSeconds(tp)));
|
return mpt::Date::nochrono::UnixAsLocal(mpt::Date::nochrono::UnixFromSeconds(mpt::Date::UnixAsSeconds(tp)));
|
||||||
}
|
}
|
||||||
|
@ -317,52 +354,4 @@ mpt::ustring ToShortenedISO8601(Local date); // i.e. 2015-01-15T18:32:01
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef MODPLUG_TRACKER
|
|
||||||
|
|
||||||
namespace Util
|
|
||||||
{
|
|
||||||
|
|
||||||
#if MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
// RAII wrapper around timeBeginPeriod/timeEndPeriod/timeGetTime (on Windows).
|
|
||||||
// This clock is monotonic, even across changing its resolution.
|
|
||||||
// This is needed to synchronize time in Steinberg APIs (ASIO and VST).
|
|
||||||
class MultimediaClock
|
|
||||||
{
|
|
||||||
private:
|
|
||||||
uint32 m_CurrentPeriod;
|
|
||||||
private:
|
|
||||||
void Init();
|
|
||||||
void SetPeriod(uint32 ms);
|
|
||||||
void Cleanup();
|
|
||||||
public:
|
|
||||||
MultimediaClock();
|
|
||||||
MultimediaClock(uint32 ms);
|
|
||||||
~MultimediaClock();
|
|
||||||
public:
|
|
||||||
// Sets the desired resolution in milliseconds, returns the obtained resolution in milliseconds.
|
|
||||||
// A parameter of 0 causes the resolution to be reset to system defaults.
|
|
||||||
// A return value of 0 means the resolution is unknown, but timestamps will still be valid.
|
|
||||||
uint32 SetResolution(uint32 ms);
|
|
||||||
// Returns obtained resolution in milliseconds.
|
|
||||||
// A return value of 0 means the resolution is unknown, but timestamps will still be valid.
|
|
||||||
uint32 GetResolution() const;
|
|
||||||
// Returns current instantaneous timestamp in milliseconds.
|
|
||||||
// The epoch (offset) of the timestamps is undefined but constant until the next system reboot.
|
|
||||||
// The resolution is the value returned from GetResolution().
|
|
||||||
uint32 Now() const;
|
|
||||||
// Returns current instantaneous timestamp in nanoseconds.
|
|
||||||
// The epoch (offset) of the timestamps is undefined but constant until the next system reboot.
|
|
||||||
// The resolution is the value returned from GetResolution() in milliseconds.
|
|
||||||
uint64 NowNanoseconds() const;
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif // MPT_OS_WINDOWS
|
|
||||||
|
|
||||||
} // namespace Util
|
|
||||||
|
|
||||||
#endif // MODPLUG_TRACKER
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
OPENMPT_NAMESPACE_END
|
||||||
|
|
|
@ -60,7 +60,6 @@ enum class StatusLevel : uint8
|
||||||
Failure = 0x2,
|
Failure = 0x2,
|
||||||
Note = 0x1,
|
Note = 0x1,
|
||||||
None = 0x0,
|
None = 0x0,
|
||||||
Max = 0xff,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class StatusMessages : uint32
|
enum class StatusMessages : uint32
|
||||||
|
@ -89,8 +88,6 @@ enum class StatusMessages : uint32
|
||||||
SNW_INSUFFICIENT_DATASIZETYPE = 0x00'10'00'00,
|
SNW_INSUFFICIENT_DATASIZETYPE = 0x00'10'00'00,
|
||||||
|
|
||||||
SNRW_BADGIVEN_STREAM = 0x01'00'00'00,
|
SNRW_BADGIVEN_STREAM = 0x01'00'00'00,
|
||||||
|
|
||||||
Max = 0xffffffff,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Status
|
struct Status
|
||||||
|
@ -149,6 +146,7 @@ enum Rwf
|
||||||
RwfRTwoBytesDescChar, // Read. True if map description characters are two bytes.
|
RwfRTwoBytesDescChar, // Read. True if map description characters are two bytes.
|
||||||
RwfRHeaderIsRead, // Read. True when header is read.
|
RwfRHeaderIsRead, // Read. True when header is read.
|
||||||
RwfRwHasMap, // Read/write. True if map exists.
|
RwfRwHasMap, // Read/write. True if map exists.
|
||||||
|
|
||||||
RwfNumFlags
|
RwfNumFlags
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -15,11 +15,7 @@
|
||||||
|
|
||||||
// has to be first
|
// has to be first
|
||||||
#include "openmpt/all/BuildSettings.hpp"
|
#include "openmpt/all/BuildSettings.hpp"
|
||||||
|
#include "openmpt/all/PlatformFixes.hpp"
|
||||||
|
|
||||||
#if defined(__MINGW32__) && !defined(__MINGW64__)
|
|
||||||
#include <sys/types.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(MODPLUG_TRACKER)
|
#if defined(MODPLUG_TRACKER)
|
||||||
|
@ -66,6 +62,7 @@
|
||||||
|
|
||||||
#include "mpt/check/compiler.hpp"
|
#include "mpt/check/compiler.hpp"
|
||||||
#include "mpt/check/libc.hpp"
|
#include "mpt/check/libc.hpp"
|
||||||
|
#include "mpt/check/libcxx.hpp"
|
||||||
#if defined(MPT_WITH_MFC)
|
#if defined(MPT_WITH_MFC)
|
||||||
#include "mpt/check/mfc.hpp"
|
#include "mpt/check/mfc.hpp"
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -629,15 +629,12 @@ mpt::ustring GetFullCreditsString()
|
||||||
"http://modplug-xmms.sourceforge.net/\n"
|
"http://modplug-xmms.sourceforge.net/\n"
|
||||||
"\n"
|
"\n"
|
||||||
#ifdef MODPLUG_TRACKER
|
#ifdef MODPLUG_TRACKER
|
||||||
"Stephan M. Bernsee for pitch shifting source code\n"
|
"Geraint Luff for Signalsmith Stretch\n"
|
||||||
"http://www.dspdimension.com/\n"
|
"https://signalsmith-audio.co.uk/code/stretch/\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Aleksey Vaneev of Voxengo for r8brain sample rate converter\n"
|
"Aleksey Vaneev of Voxengo for r8brain sample rate converter\n"
|
||||||
"https://github.com/avaneev/r8brain-free-src\n"
|
"https://github.com/avaneev/r8brain-free-src\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Olli Parviainen for SoundTouch Library (time stretching)\n"
|
|
||||||
"https://www.surina.net/soundtouch/\n"
|
|
||||||
"\n"
|
|
||||||
#endif
|
#endif
|
||||||
#ifdef MPT_WITH_VST
|
#ifdef MPT_WITH_VST
|
||||||
"Hermann Seib for his example VST Host implementation\n"
|
"Hermann Seib for his example VST Host implementation\n"
|
||||||
|
|
|
@ -10,14 +10,10 @@
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "openmpt/all/BuildSettings.hpp"
|
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_BEGIN
|
|
||||||
|
|
||||||
// Version definitions. The only thing that needs to be changed when changing version number.
|
// Version definitions. The only thing that needs to be changed when changing version number.
|
||||||
#define VER_MAJORMAJOR 1
|
#define VER_MAJORMAJOR 1
|
||||||
#define VER_MAJOR 31
|
#define VER_MAJOR 32
|
||||||
#define VER_MINOR 14
|
#define VER_MINOR 01
|
||||||
#define VER_MINORMINOR 00
|
#define VER_MINORMINOR 00
|
||||||
|
|
||||||
OPENMPT_NAMESPACE_END
|
|
||||||
|
|
|
@ -10,6 +10,8 @@ amf="DMF\x0E"
|
||||||
ams="Extreme"
|
ams="Extreme"
|
||||||
ams="AMShdr\x1A\x00\x02\x02"
|
ams="AMShdr\x1A\x00\x02\x02"
|
||||||
|
|
||||||
|
cba="CBA\xF9"
|
||||||
|
|
||||||
#dbm="DBM0"
|
#dbm="DBM0"
|
||||||
dbm="NAME"
|
dbm="NAME"
|
||||||
dbm="INFO"
|
dbm="INFO"
|
||||||
|
@ -48,11 +50,18 @@ dtm="S.Q."
|
||||||
dtm="DAPT"
|
dtm="DAPT"
|
||||||
dtm="DAIT"
|
dtm="DAIT"
|
||||||
|
|
||||||
|
etx="EASYTRAX 1.0\x01\x00z\x01\x20\x00\x00\x00\x20\x04\x00\x00"
|
||||||
|
|
||||||
far="FAR\xFE"
|
far="FAR\xFE"
|
||||||
far="\x0D\x0A\x1A"
|
far="\x0D\x0A\x1A"
|
||||||
|
|
||||||
|
fc="SMOD"
|
||||||
|
fc="FC14"
|
||||||
|
|
||||||
fmt="FMTracker\x01\x01"
|
fmt="FMTracker\x01\x01"
|
||||||
|
|
||||||
|
ftm="FTMN\x03\x03\x00\x08\x20\x20\x00\xFF\x3F\x03\x06\x10"
|
||||||
|
|
||||||
gdm="GDM\xFE"
|
gdm="GDM\xFE"
|
||||||
gdm="\x0D\x0A\x1AGMFS\x01\x00"
|
gdm="\x0D\x0A\x1AGMFS\x01\x00"
|
||||||
|
|
||||||
|
@ -126,6 +135,8 @@ j2b="ORDR"
|
||||||
j2b="AI "
|
j2b="AI "
|
||||||
j2b="AS "
|
j2b="AS "
|
||||||
|
|
||||||
|
kris="KRIS"
|
||||||
|
|
||||||
MDL="DMDL"
|
MDL="DMDL"
|
||||||
# Most chunk IDs are commented out as they are substrings of other dictionary entries
|
# Most chunk IDs are commented out as they are substrings of other dictionary entries
|
||||||
#mdl="IN"
|
#mdl="IN"
|
||||||
|
@ -146,9 +157,7 @@ mo3="MO3\x05"
|
||||||
# A couple of magic bytes are commented out because they do not modify the loader's behaviour, apart from setting a "made with" string.
|
# A couple of magic bytes are commented out because they do not modify the loader's behaviour, apart from setting a "made with" string.
|
||||||
mod="M.K."
|
mod="M.K."
|
||||||
#mod="M!K!"
|
#mod="M!K!"
|
||||||
mod="M&K!"
|
|
||||||
mod="N.T."
|
mod="N.T."
|
||||||
#mod="FEST"
|
|
||||||
#mod="NSMS"
|
#mod="NSMS"
|
||||||
#mod="LARD"
|
#mod="LARD"
|
||||||
mod="OKTA"
|
mod="OKTA"
|
||||||
|
@ -170,6 +179,10 @@ sfx="SO31"
|
||||||
stam="ST1.3 ModuleINFO"
|
stam="ST1.3 ModuleINFO"
|
||||||
stam="AudioSculpture10"
|
stam="AudioSculpture10"
|
||||||
|
|
||||||
|
hmn="M&K!"
|
||||||
|
#hmn="FEST"
|
||||||
|
hmn="Mupp"
|
||||||
|
|
||||||
mptm="->MPT_ORIGINAL_IT<-"
|
mptm="->MPT_ORIGINAL_IT<-"
|
||||||
mptm=".tpm"
|
mptm=".tpm"
|
||||||
mptm="mptm"
|
mptm="mptm"
|
||||||
|
@ -239,8 +252,14 @@ stp="STP3\x02"
|
||||||
|
|
||||||
symmod="SymM\x00\x00\x00\x01\xFF\xFF\xFF\xFF\x00\x00\x00"
|
symmod="SymM\x00\x00\x00\x01\xFF\xFF\xFF\xFF\x00\x00\x00"
|
||||||
|
|
||||||
|
tcb="AN COOL.\x01\x00\x00\x00\x0D\x00"
|
||||||
|
#tcb="AN COOL!"
|
||||||
|
|
||||||
ult="MAS_UTrack_V004"
|
ult="MAS_UTrack_V004"
|
||||||
|
|
||||||
|
#unic="UNIC"
|
||||||
|
#unic="\x00\x00\x00\x00"
|
||||||
|
|
||||||
umx="\xC1\x83\x2A\x9E"
|
umx="\xC1\x83\x2A\x9E"
|
||||||
umx="music"
|
umx="music"
|
||||||
umx="sound"
|
umx="sound"
|
||||||
|
@ -348,3 +367,9 @@ iff="CHAN"
|
||||||
iff="MHDR"
|
iff="MHDR"
|
||||||
iff="MDAT"
|
iff="MDAT"
|
||||||
iff="NAME"
|
iff="NAME"
|
||||||
|
|
||||||
|
puma="patt"
|
||||||
|
puma="inst"
|
||||||
|
puma="insf"
|
||||||
|
|
||||||
|
rtm="RTMM "
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
cd ../..
|
cd ../..
|
||||||
AFL_HARDEN=1 CONFIG=afl make clean all EXAMPLES=0 TEST=0 OPENMPT123=0 NO_VORBIS=1 NO_VORBISFILE=1 NO_MPG123=1 CHECKED_ADDRESS=1
|
AFL_LLVM_CMPLOG=1 AFL_USE_ASAN=1 CONFIG=afl make clean all EXAMPLES=0 TEST=0 OPENMPT123=0 NO_VORBIS=1 NO_VORBISFILE=1 NO_MPG123=1 CHECKED_ADDRESS=1
|
||||||
|
|
|
@ -9,5 +9,4 @@ rm -rf $FUZZING_TEMPDIR/bin
|
||||||
mkdir $FUZZING_TEMPDIR/bin
|
mkdir $FUZZING_TEMPDIR/bin
|
||||||
cp -d ../../bin/* $FUZZING_TEMPDIR/bin/
|
cp -d ../../bin/* $FUZZING_TEMPDIR/bin/
|
||||||
|
|
||||||
#export AFL_PRELOAD=$AFL_DIR/libdislocator.so
|
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -M fuzzer01 $FUZZING_TEMPDIR/bin/fuzz
|
||||||
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $AFL_DIR/afl-fuzz -p exploit -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -D -M fuzzer01 $FUZZING_TEMPDIR/bin/fuzz
|
|
||||||
|
|
|
@ -2,5 +2,4 @@
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
. ./fuzz-settings.sh
|
. ./fuzz-settings.sh
|
||||||
|
|
||||||
#export AFL_PRELOAD=$AFL_DIR/libdislocator.so
|
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -c0 -l2 -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer02 $FUZZING_TEMPDIR/bin/fuzz
|
||||||
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $AFL_DIR/afl-fuzz -p coe -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer02 $FUZZING_TEMPDIR/bin/fuzz
|
|
||||||
|
|
|
@ -2,5 +2,4 @@
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
. ./fuzz-settings.sh
|
. ./fuzz-settings.sh
|
||||||
|
|
||||||
#export AFL_PRELOAD=$AFL_DIR/libdislocator.so
|
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -p fast -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer03 $FUZZING_TEMPDIR/bin/fuzz
|
||||||
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $AFL_DIR/afl-fuzz -p explore -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer03 $FUZZING_TEMPDIR/bin/fuzz
|
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
cd "${0%/*}"
|
||||||
|
. ./fuzz-settings.sh
|
||||||
|
|
||||||
|
unset AFL_DISABLE_TRIM
|
||||||
|
LD_LIBRARY_PATH=$FUZZING_TEMPDIR/bin $FUZZING_AFL_DIR/afl-fuzz -p exploit -P 300 -a binary -x all_formats.dict -t $FUZZING_TIMEOUT $FUZZING_INPUT -o $FUZZING_FINDINGS_DIR -S fuzzer04 $FUZZING_TEMPDIR/bin/fuzz
|
|
@ -15,4 +15,13 @@ FUZZING_FINDINGS_DIR=~/libopenmpt-fuzzing
|
||||||
# Fuzzer timeout in ms, + = don't abort on timeout
|
# Fuzzer timeout in ms, + = don't abort on timeout
|
||||||
FUZZING_TIMEOUT=5000+
|
FUZZING_TIMEOUT=5000+
|
||||||
# Path to afl-fuzz binary
|
# Path to afl-fuzz binary
|
||||||
AFL_DIR=afl
|
FUZZING_AFL_DIR=afl
|
||||||
|
|
||||||
|
# AFL specific envs
|
||||||
|
AFL_TRY_AFFINITY=1
|
||||||
|
AFL_CMPLOG_ONLY_NEW=1
|
||||||
|
AFL_NO_WARN_INSTABILITY=1
|
||||||
|
AFL_FAST_CAL=1
|
||||||
|
AFL_IMPORT_FIRST=1
|
||||||
|
AFL_DISABLE_TRIM=1
|
||||||
|
AFL_IGNORE_SEED_PROBLEMS=1
|
||||||
|
|
|
@ -10,13 +10,13 @@ Contents:
|
||||||
module formats to make the life of the fuzzer a bit easier.
|
module formats to make the life of the fuzzer a bit easier.
|
||||||
* `fuzz-main.sh`: Script to launch the main fuzzing process. If you want to
|
* `fuzz-main.sh`: Script to launch the main fuzzing process. If you want to
|
||||||
use just one fuzzer instance, run this one.
|
use just one fuzzer instance, run this one.
|
||||||
* `fuzz-secondary[1|2].sh`: Scripts to launch the secondary fuzzing process. It
|
* `fuzz-secondary[1|2|3].sh`: Scripts to launch the secondary fuzzing processes.
|
||||||
is recommended to run at least two fuzzer instances, as the deterministic and
|
It is recommended to run at least 2 fuzzer instances, as the deterministic and
|
||||||
random fuzz mode have been found to complement each other really well. The two
|
random fuzz mode have been found to complement each other really well. The two
|
||||||
scripts are set up to use different exploration strategies.
|
scripts are set up to use different exploration strategies.
|
||||||
* `fuzz-settings.sh`: Set up your preferences and afl settings here before the
|
* `fuzz-settings.sh`: Set up your preferences and afl settings here before the
|
||||||
first run.
|
first run.
|
||||||
* `fuzz.c`: A tiny C program that is used by the fuzzer to test libopenmpt.
|
* `fuzz.cpp`: A tiny C++ program that is used by the fuzzer to test libopenmpt.
|
||||||
* `get-afl.sh`: A simple script to obtain the latest version of afl++.
|
* `get-afl.sh`: A simple script to obtain the latest version of afl++.
|
||||||
You can also make it download from a specific branch or tag, e.g.
|
You can also make it download from a specific branch or tag, e.g.
|
||||||
`GET_AFL_VERSION=stable ./get-afl.sh` to download the latest stable but
|
`GET_AFL_VERSION=stable ./get-afl.sh` to download the latest stable but
|
||||||
|
@ -43,9 +43,8 @@ How to use
|
||||||
The default setup mounts a tmpfs folder for all temporary files. You may
|
The default setup mounts a tmpfs folder for all temporary files. You may
|
||||||
change this behaviour if you do not have root privileges.
|
change this behaviour if you do not have root privileges.
|
||||||
* Run `fuzz-main.sh` for the first (deterministic) instance of afl-fuzz.
|
* Run `fuzz-main.sh` for the first (deterministic) instance of afl-fuzz.
|
||||||
* For a "secondary" instance to run on another core, run `fuzz-secondary1.sh`
|
* For a "secondary" instance to run on another core, run `fuzz-secondary1.sh`,
|
||||||
and/or `fuzz-secondary2.sh`.
|
`fuzz-secondary2.sh` and `fuzz-secondary3.sh`.
|
||||||
* If you want to make use of even more cores, create more copies of
|
* If you want to make use of even more cores, create more copies of
|
||||||
`fuzz-secondary2.sh` and adjust "infile03" / "fuzzer03" to
|
`fuzz-secondary2.sh` and adjust "fuzzer03" to "fuzzer05" and so on (they need to be unique).
|
||||||
"infile04" / "fuzzer04" and so on (they need to be unique). Try varying the
|
Try varying the fuzzing strategy (the -p parameter) to get more varied results quickly.
|
||||||
fuzzing strategey (the -p parameter) to get results more quickly.
|
|
||||||
|
|
|
@ -17,13 +17,13 @@ General hints
|
||||||
a subset of ProTracker MOD).
|
a subset of ProTracker MOD).
|
||||||
* When reading binary structs from the file, use our data types with defined
|
* When reading binary structs from the file, use our data types with defined
|
||||||
endianness, which can be found in `common/Endianness.h`:
|
endianness, which can be found in `common/Endianness.h`:
|
||||||
* Big-Endian: (u)int8/16/32/64be, float32be, float64be
|
* Big-Endian: (u)int8/16/24/32/64be, float32be, float64be
|
||||||
* Little-Endian: (u)int8/16/32/64le, float32le, float64le
|
* Little-Endian: (u)int8/16/24/32/64le, float32le, float64le
|
||||||
|
|
||||||
Entire structs containing integers with defined endianness can be read in one
|
Entire structs containing integers with defined endianness can be read in one
|
||||||
go if they are tagged with `MPT_BINARY_STRUCT` (see existing loaders for an
|
go if they are tagged with `MPT_BINARY_STRUCT` (see existing loaders for an
|
||||||
example).
|
example).
|
||||||
* `CSoundFile::m_nChannels` **MUST NOT** be changed after a pattern has been
|
* `CSoundFile::ChnSettings` **MUST NOT** be resized after a pattern has been
|
||||||
created, as existing patterns will be interpreted incorrectly. For module
|
created, as existing patterns will be interpreted incorrectly. For module
|
||||||
formats that support per-pattern channel amounts, the maximum number of
|
formats that support per-pattern channel amounts, the maximum number of
|
||||||
channels must be determined beforehand.
|
channels must be determined beforehand.
|
||||||
|
@ -38,8 +38,8 @@ General hints
|
||||||
thread-safe for libopenmpt.
|
thread-safe for libopenmpt.
|
||||||
* `FileReader` instances may be used to treat a portion of a file as its own
|
* `FileReader` instances may be used to treat a portion of a file as its own
|
||||||
independent file (through `FileReader::ReadChunk`). This can be useful with
|
independent file (through `FileReader::ReadChunk`). This can be useful with
|
||||||
"embedded files" such as WAV or Ogg samples. Container formats such as UMX
|
"embedded files" such as WAV or Ogg samples (see MO3 or SymMOD for examples).
|
||||||
are another good example for this usage.
|
Container formats such as UMX are another good example for this usage.
|
||||||
* Samples *either* use middle-C frequency *or* finetune + transpose. For the few
|
* Samples *either* use middle-C frequency *or* finetune + transpose. For the few
|
||||||
weird formats that use both, it may make sense to translate everything into
|
weird formats that use both, it may make sense to translate everything into
|
||||||
middle-C frequency.
|
middle-C frequency.
|
||||||
|
@ -66,7 +66,7 @@ General hints
|
||||||
(which may e.g. cause a song title starting with if ..." in various other
|
(which may e.g. cause a song title starting with if ..." in various other
|
||||||
formats to be interpreted as a 669 module), and of course
|
formats to be interpreted as a 669 module), and of course
|
||||||
Ultimate SoundTracker modules, which have no magic bytes at all.
|
Ultimate SoundTracker modules, which have no magic bytes at all.
|
||||||
* Avoid use of functions tagged with [[deprecated]].
|
* Avoid use of functions tagged with `[[deprecated]]`.
|
||||||
|
|
||||||
Probing
|
Probing
|
||||||
-------
|
-------
|
||||||
|
@ -85,7 +85,7 @@ the first `CSoundFile::ProbeRecommendedSize` bytes of the file.
|
||||||
any file that would normally be accepted by the loader. In particular, this
|
any file that would normally be accepted by the loader. In particular, this
|
||||||
means that any header checks must not be any more aggressive than they would
|
means that any header checks must not be any more aggressive than they would
|
||||||
be in the real loader (hence it is a good idea to not copy-paste this code but
|
be in the real loader (hence it is a good idea to not copy-paste this code but
|
||||||
rather put it in a separate function), and the minimum additional size passed
|
rather put it in a reusable function), and the minimum additional size passed
|
||||||
to `CSoundFile::ProbeAdditionalSize` must not be higher than the biggest size
|
to `CSoundFile::ProbeAdditionalSize` must not be higher than the biggest size
|
||||||
that would cause a hard failure (i.e. returning `false`) in the module loader.
|
that would cause a hard failure (i.e. returning `false`) in the module loader.
|
||||||
* Probing functions **may** return ProbeSuccess for files that would be rejected
|
* Probing functions **may** return ProbeSuccess for files that would be rejected
|
||||||
|
@ -103,5 +103,8 @@ that need to be updated:
|
||||||
* Run `build/regenerate_vs_projects.sh` / `build/regenerate_vs_projects.cmd`
|
* Run `build/regenerate_vs_projects.sh` / `build/regenerate_vs_projects.cmd`
|
||||||
(depending on your platform)
|
(depending on your platform)
|
||||||
* Add file extension to `installer/filetypes-*.iss`.
|
* Add file extension to `installer/filetypes-*.iss`.
|
||||||
* Add file extension to `CTrackApp::OpenModulesDialog` in `mptrack/Mptrack.cpp`.
|
* Add file extension to `CTrackApp::OpenModulesDialog` in `mptrack/Mptrack.cpp`
|
||||||
|
as required (e.g. if it's a compressed container format or if it's relevant
|
||||||
|
enough to be mentioned).
|
||||||
* Add format information to `soundlib/Tables.cpp`.
|
* Add format information to `soundlib/Tables.cpp`.
|
||||||
|
* Add magic bytes to `contrib/fuzzing/all_formats.dict`.
|
||||||
|
|
|
@ -72,10 +72,10 @@
|
||||||
#define BUFFERSIZE 480
|
#define BUFFERSIZE 480
|
||||||
#define SAMPLERATE 48000
|
#define SAMPLERATE 48000
|
||||||
|
|
||||||
static int16_t left[BUFFERSIZE];
|
static float left[BUFFERSIZE];
|
||||||
static int16_t right[BUFFERSIZE];
|
static float right[BUFFERSIZE];
|
||||||
static int16_t * const buffers[2] = { left, right };
|
static float * const buffers[2] = { left, right };
|
||||||
static int16_t interleaved_buffer[BUFFERSIZE * 2];
|
static float interleaved_buffer[BUFFERSIZE * 2];
|
||||||
static int is_interleaved = 0;
|
static int is_interleaved = 0;
|
||||||
|
|
||||||
static void libopenmpt_example_logfunc( const char * message, void * userdata ) {
|
static void libopenmpt_example_logfunc( const char * message, void * userdata ) {
|
||||||
|
@ -208,10 +208,10 @@ int main( int argc, char * argv[] ) {
|
||||||
}
|
}
|
||||||
pa_initialized = 1;
|
pa_initialized = 1;
|
||||||
|
|
||||||
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paInt16 | paNonInterleaved, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paFloat32 | paNonInterleaved, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
||||||
if ( pa_error == paSampleFormatNotSupported ) {
|
if ( pa_error == paSampleFormatNotSupported ) {
|
||||||
is_interleaved = 1;
|
is_interleaved = 1;
|
||||||
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paInt16, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paFloat32, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
||||||
}
|
}
|
||||||
if ( pa_error != paNoError ) {
|
if ( pa_error != paNoError ) {
|
||||||
fprintf( stderr, "Error: %s\n", "Pa_OpenStream() failed." );
|
fprintf( stderr, "Error: %s\n", "Pa_OpenStream() failed." );
|
||||||
|
@ -231,7 +231,7 @@ int main( int argc, char * argv[] ) {
|
||||||
while ( 1 ) {
|
while ( 1 ) {
|
||||||
|
|
||||||
openmpt_module_error_clear( mod );
|
openmpt_module_error_clear( mod );
|
||||||
count = is_interleaved ? openmpt_module_read_interleaved_stereo( mod, SAMPLERATE, BUFFERSIZE, interleaved_buffer ) : openmpt_module_read_stereo( mod, SAMPLERATE, BUFFERSIZE, left, right );
|
count = is_interleaved ? openmpt_module_read_interleaved_float_stereo( mod, SAMPLERATE, BUFFERSIZE, interleaved_buffer ) : openmpt_module_read_float_stereo( mod, SAMPLERATE, BUFFERSIZE, left, right );
|
||||||
mod_err = openmpt_module_error_get_last( mod );
|
mod_err = openmpt_module_error_get_last( mod );
|
||||||
mod_err_str = openmpt_module_error_get_last_message( mod );
|
mod_err_str = openmpt_module_error_get_last_message( mod );
|
||||||
if ( mod_err != OPENMPT_ERROR_OK ) {
|
if ( mod_err != OPENMPT_ERROR_OK ) {
|
||||||
|
|
|
@ -44,10 +44,10 @@
|
||||||
#define BUFFERSIZE 480
|
#define BUFFERSIZE 480
|
||||||
#define SAMPLERATE 48000
|
#define SAMPLERATE 48000
|
||||||
|
|
||||||
static int16_t left[BUFFERSIZE];
|
static float left[BUFFERSIZE];
|
||||||
static int16_t right[BUFFERSIZE];
|
static float right[BUFFERSIZE];
|
||||||
static int16_t * const buffers[2] = { left, right };
|
static float * const buffers[2] = { left, right };
|
||||||
static int16_t interleaved_buffer[BUFFERSIZE * 2];
|
static float interleaved_buffer[BUFFERSIZE * 2];
|
||||||
static int is_interleaved = 0;
|
static int is_interleaved = 0;
|
||||||
|
|
||||||
static void libopenmpt_example_logfunc( const char * message, void * userdata ) {
|
static void libopenmpt_example_logfunc( const char * message, void * userdata ) {
|
||||||
|
@ -254,10 +254,10 @@ int main( int argc, char * argv[] ) {
|
||||||
pa_initialized = 1;
|
pa_initialized = 1;
|
||||||
|
|
||||||
is_interleaved = 0;
|
is_interleaved = 0;
|
||||||
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paInt16 | paNonInterleaved, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paFloat32 | paNonInterleaved, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
||||||
if ( pa_error == paSampleFormatNotSupported ) {
|
if ( pa_error == paSampleFormatNotSupported ) {
|
||||||
is_interleaved = 1;
|
is_interleaved = 1;
|
||||||
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paInt16, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
pa_error = Pa_OpenDefaultStream( &stream, 0, 2, paFloat32, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
||||||
}
|
}
|
||||||
if ( pa_error != paNoError ) {
|
if ( pa_error != paNoError ) {
|
||||||
fprintf( stderr, "Error: %s\n", "Pa_OpenStream() failed." );
|
fprintf( stderr, "Error: %s\n", "Pa_OpenStream() failed." );
|
||||||
|
@ -277,7 +277,7 @@ int main( int argc, char * argv[] ) {
|
||||||
while ( 1 ) {
|
while ( 1 ) {
|
||||||
|
|
||||||
openmpt_module_error_clear( mod );
|
openmpt_module_error_clear( mod );
|
||||||
count = is_interleaved ? openmpt_module_read_interleaved_stereo( mod, SAMPLERATE, BUFFERSIZE, interleaved_buffer ) : openmpt_module_read_stereo( mod, SAMPLERATE, BUFFERSIZE, left, right );
|
count = is_interleaved ? openmpt_module_read_interleaved_float_stereo( mod, SAMPLERATE, BUFFERSIZE, interleaved_buffer ) : openmpt_module_read_float_stereo( mod, SAMPLERATE, BUFFERSIZE, left, right );
|
||||||
mod_err = openmpt_module_error_get_last( mod );
|
mod_err = openmpt_module_error_get_last( mod );
|
||||||
mod_err_str = openmpt_module_error_get_last_message( mod );
|
mod_err_str = openmpt_module_error_get_last_message( mod );
|
||||||
if ( mod_err != OPENMPT_ERROR_OK ) {
|
if ( mod_err != OPENMPT_ERROR_OK ) {
|
||||||
|
|
|
@ -46,9 +46,9 @@
|
||||||
#define BUFFERSIZE 480
|
#define BUFFERSIZE 480
|
||||||
#define SAMPLERATE 48000
|
#define SAMPLERATE 48000
|
||||||
|
|
||||||
static int16_t left[BUFFERSIZE];
|
static float left[BUFFERSIZE];
|
||||||
static int16_t right[BUFFERSIZE];
|
static float right[BUFFERSIZE];
|
||||||
static int16_t * const buffers[2] = { left, right };
|
static float * const buffers[2] = { left, right };
|
||||||
|
|
||||||
#if defined( __DJGPP__ )
|
#if defined( __DJGPP__ )
|
||||||
/* clang-format off */
|
/* clang-format off */
|
||||||
|
@ -88,10 +88,10 @@ int main( int argc, char * argv[] ) {
|
||||||
#endif
|
#endif
|
||||||
fclose( file );
|
fclose( file );
|
||||||
Pa_Initialize();
|
Pa_Initialize();
|
||||||
Pa_OpenDefaultStream( &stream, 0, 2, paInt16 | paNonInterleaved, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
Pa_OpenDefaultStream( &stream, 0, 2, paFloat32 | paNonInterleaved, SAMPLERATE, paFramesPerBufferUnspecified, NULL, NULL );
|
||||||
Pa_StartStream( stream );
|
Pa_StartStream( stream );
|
||||||
while ( 1 ) {
|
while ( 1 ) {
|
||||||
count = openmpt_module_read_stereo( mod, SAMPLERATE, BUFFERSIZE, left, right );
|
count = openmpt_module_read_float_stereo( mod, SAMPLERATE, BUFFERSIZE, left, right );
|
||||||
if ( count == 0 ) {
|
if ( count == 0 ) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@ https://github.com/nothings/stb/blob/master/stb_vorbis.c v1.22
|
||||||
commit 5a0bb8b1c1b1ca3f4e2485f4114c1c8ea021b781 (2021-07-12)
|
commit 5a0bb8b1c1b1ca3f4e2485f4114c1c8ea021b781 (2021-07-12)
|
||||||
|
|
||||||
Modifications:
|
Modifications:
|
||||||
|
* <https://github.com/nothings/stb/pull/1746> has been applied.
|
||||||
* Use of alloca has been replaced with malloc, as alloca is not in C99 and
|
* Use of alloca has been replaced with malloc, as alloca is not in C99 and
|
||||||
fails to compile.
|
fails to compile.
|
||||||
* Macro redefinition of alloca with mingw-w64 has been fixed.
|
* Macro redefinition of alloca with mingw-w64 has been fixed.
|
||||||
|
@ -10,4 +11,3 @@ Modifications:
|
||||||
|
|
||||||
For building, premake is used to generate Visual Studio project files.
|
For building, premake is used to generate Visual Studio project files.
|
||||||
See ../build/premake/ for details.
|
See ../build/premake/ for details.
|
||||||
|
|
||||||
|
|
|
@ -1410,7 +1410,7 @@ static int set_file_offset(stb_vorbis *f, unsigned int loc)
|
||||||
#endif
|
#endif
|
||||||
f->eof = 0;
|
f->eof = 0;
|
||||||
if (USE_MEMORY(f)) {
|
if (USE_MEMORY(f)) {
|
||||||
if (f->stream_start + loc >= f->stream_end || f->stream_start + loc < f->stream_start) {
|
if (loc >= f->stream_len) {
|
||||||
f->stream = f->stream_end;
|
f->stream = f->stream_end;
|
||||||
f->eof = 1;
|
f->eof = 1;
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -775,6 +775,25 @@ Declare Function openmpt_module_select_subsong(ByVal module As openmpt_module Pt
|
||||||
'/
|
'/
|
||||||
Declare Function openmpt_module_get_selected_subsong(ByVal module As openmpt_module Ptr) As Long
|
Declare Function openmpt_module_get_selected_subsong(ByVal module As openmpt_module Ptr) As Long
|
||||||
|
|
||||||
|
/'* \brief Get the restart order of the specified sub-song
|
||||||
|
|
||||||
|
\param module The module handle to work on.
|
||||||
|
\param subsong Index of the sub-song to retrieve the restart position from.
|
||||||
|
\return The restart order of the specified sub-song. This is the order to which playback returns after the last pattern row of the song has been played. -1 is returned if if sub-song is not in range [0,openmpt_module_get_num_subsongs()[
|
||||||
|
\sa openmpt_module_get_restart_row
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_get_restart_order(ByVal module As openmpt_module Ptr, ByVal subsong As Long) As Long
|
||||||
|
/'* \brief Get the restart row of the specified sub-song
|
||||||
|
|
||||||
|
\param module The module handle to work on.
|
||||||
|
\param subsong Index of the sub-song to retrieve the restart position from.
|
||||||
|
\return The restart row of the specified sub-song. This is the first played row of the order to which playback returns after the last pattern row of the song has been played. -1 is returned if if sub-song is not in range [0,openmpt_module_get_num_subsongs()[
|
||||||
|
\sa openmpt_module_get_restart_order
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_get_restart_row(ByVal module As openmpt_module Ptr, ByVal subsong As Long) As Long
|
||||||
|
|
||||||
/'* \brief Set Repeat Count
|
/'* \brief Set Repeat Count
|
||||||
|
|
||||||
\param module The module handle to work on.
|
\param module The module handle to work on.
|
||||||
|
@ -806,6 +825,18 @@ Declare Function openmpt_module_get_repeat_count(ByVal module As openmpt_module
|
||||||
'/
|
'/
|
||||||
Declare Function openmpt_module_get_duration_seconds(ByVal module As openmpt_module Ptr) As Double
|
Declare Function openmpt_module_get_duration_seconds(ByVal module As openmpt_module Ptr) As Double
|
||||||
|
|
||||||
|
/'* \brief Get approximate playback time in seconds at given position
|
||||||
|
|
||||||
|
\param module The module handle to work on.
|
||||||
|
\param order The order position at which the time should be retrieved.
|
||||||
|
\param row The pattern row number at which the time should be retrieved.
|
||||||
|
\return Approximate playback time in seconds of current sub-song at the start of the given order and row combination. Negative if the position does not exist, or the pattern data is too complex to evaluate.
|
||||||
|
\remarks If an order / row combination is played multiple times (e.g. due the pattern loops), the first occurence of this position is returned.
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_get_time_at_position(ByVal module As openmpt_module Ptr, ByVal order As Long, ByVal row As Long) As Double
|
||||||
|
|
||||||
|
|
||||||
/'* \brief Set approximate current song position
|
/'* \brief Set approximate current song position
|
||||||
|
|
||||||
\param module The module handle to work on.
|
\param module The module handle to work on.
|
||||||
|
@ -1273,6 +1304,39 @@ Declare Function openmpt_module_get_sample_name_ Alias "openmpt_module_get_sampl
|
||||||
'/
|
'/
|
||||||
Declare Function openmpt_module_get_order_pattern(ByVal module As openmpt_module Ptr, ByVal order As Long) As Long
|
Declare Function openmpt_module_get_order_pattern(ByVal module As openmpt_module Ptr, ByVal order As Long) As Long
|
||||||
|
|
||||||
|
/'* \brief Check if specified order is a skip ("+++") item
|
||||||
|
|
||||||
|
\param order The order index to check.
|
||||||
|
\return Returns non-zero value if the pattern index at the given order position represents a skip item. During playback, this item is ignored and playback resumes at the next order list item.
|
||||||
|
\sa openmpt_module_is_order_stop_entry, openmpt_module_is_pattern_skip_item
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_is_order_skip_entry(ByVal module As openmpt_module Ptr, ByVal order As Long) As Long
|
||||||
|
/'* \brief Check if specified pattern index is a skip ("+++") item
|
||||||
|
|
||||||
|
\param pattern The pattern index to check.
|
||||||
|
\return Returns non-zero value if the pattern index represents a skip item. During playback, this item is ignored and playback resumes at the next order list item.
|
||||||
|
\sa openmpt_module_is_pattern_stop_item, openmpt_module_is_order_skip_entry, openmpt_module_get_order_pattern
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_is_pattern_skip_item(ByVal module As openmpt_module Ptr, ByVal pattern As Long) As Long
|
||||||
|
/'* \brief Check if specified order is a stop ("---") item
|
||||||
|
|
||||||
|
\param order The order index to check.
|
||||||
|
\return Returns non-zero value if the pattern index at the given order position represents a stop item. When this item is reached, playback continues at the restart position of the current sub-song.
|
||||||
|
\sa openmpt_module_is_order_skip_entry, openmpt_module_is_pattern_stop_item
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_is_order_stop_entry(ByVal module As openmpt_module Ptr, ByVal order As Long) As Long
|
||||||
|
/'* \brief Check if specified pattern index is a stop ("---") item
|
||||||
|
|
||||||
|
\param pattern The pattern index to check.
|
||||||
|
\return Returns non-zero value if the pattern index represents a stop item. When this item is reached, playback continues at the restart position of the current sub-song.
|
||||||
|
\sa openmpt_module_is_pattern_skip_item, openmpt_module_is_order_stop_entry, openmpt_module_get_order_pattern
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_is_pattern_stop_item(ByVal module As openmpt_module Ptr, ByVal pattern As Long) As Long
|
||||||
|
|
||||||
/'* \brief Get the number of rows in a pattern
|
/'* \brief Get the number of rows in a pattern
|
||||||
|
|
||||||
\param module The module handle to work on.
|
\param module The module handle to work on.
|
||||||
|
@ -1281,6 +1345,26 @@ Declare Function openmpt_module_get_order_pattern(ByVal module As openmpt_module
|
||||||
'/
|
'/
|
||||||
Declare Function openmpt_module_get_pattern_num_rows(ByVal module As openmpt_module Ptr, ByVal pattern As Long) As Long
|
Declare Function openmpt_module_get_pattern_num_rows(ByVal module As openmpt_module Ptr, ByVal pattern As Long) As Long
|
||||||
|
|
||||||
|
/'* \brief Get the rows per beat of a pattern
|
||||||
|
|
||||||
|
\param mod The module handle to work on.
|
||||||
|
\param pattern The pattern whose time signature should be retrieved.
|
||||||
|
\return The rows per beat of the given pattern. If the pattern does not exist or the time signature is not defined, 0 is returned.
|
||||||
|
\remarks Many module formats lack time signature metadata. In this case, the returned value may be an incorrect estimation.
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_get_pattern_rows_per_beat(ByVal module As openmpt_module Ptr, ByVal pattern As Long) As Long
|
||||||
|
|
||||||
|
/'* \brief Get the rows per measure of a pattern
|
||||||
|
|
||||||
|
\param mod The module handle to work on.
|
||||||
|
\param pattern The pattern whose time signature should be retrieved.
|
||||||
|
\return The rows per measure of the given pattern. If the pattern does not exist or the time signature is not defined, 0 is returned.
|
||||||
|
\remarks Many module formats lack time signature metadata. In this case, the returned value may be an incorrect estimation.
|
||||||
|
\since 0.8.0
|
||||||
|
'/
|
||||||
|
Declare Function openmpt_module_get_pattern_rows_per_measure(ByVal module As openmpt_module Ptr, ByVal pattern As Long) As Long
|
||||||
|
|
||||||
/'* \brief Get raw pattern content
|
/'* \brief Get raw pattern content
|
||||||
|
|
||||||
\param module The module handle to work on.
|
\param module The module handle to work on.
|
||||||
|
|
|
@ -212,11 +212,7 @@ static std::basic_string<TCHAR> generate_infotext( const std::basic_string<TCHAR
|
||||||
}
|
}
|
||||||
|
|
||||||
static void config( HWND hwndParent ) {
|
static void config( HWND hwndParent ) {
|
||||||
#if 1
|
|
||||||
libopenmpt::plugin::gui_edit_settings( &self->settings, hwndParent, TEXT(SHORT_TITLE) );
|
libopenmpt::plugin::gui_edit_settings( &self->settings, hwndParent, TEXT(SHORT_TITLE) );
|
||||||
#else
|
|
||||||
static_cast<void>(hwndParent);
|
|
||||||
#endif
|
|
||||||
apply_options();
|
apply_options();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -227,18 +223,9 @@ static void about( HWND hwndParent ) {
|
||||||
about << " OpenMPT version " << openmpt::string::get( "core_version" ) << std::endl;
|
about << " OpenMPT version " << openmpt::string::get( "core_version" ) << std::endl;
|
||||||
about << std::endl;
|
about << std::endl;
|
||||||
about << openmpt::string::get( "contact" ) << std::endl;
|
about << openmpt::string::get( "contact" ) << std::endl;
|
||||||
about << std::endl;
|
|
||||||
about << "Show full credits?" << std::endl;
|
|
||||||
if ( MessageBox( hwndParent, StringToWINAPI( StringDecode( about.str(), CP_UTF8 ) ).c_str(), TEXT(SHORT_TITLE), MB_ICONINFORMATION | MB_YESNOCANCEL | MB_DEFBUTTON1 ) != IDYES ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
std::ostringstream credits;
|
std::ostringstream credits;
|
||||||
credits << openmpt::string::get( "credits" );
|
credits << openmpt::string::get( "credits" ) << std::endl;
|
||||||
#if 1
|
libopenmpt::plugin::gui_show_about( hwndParent, TEXT(SHORT_TITLE), StringReplace( StringToWINAPI( StringDecode( about.str(), CP_UTF8 ) ), TEXT("\n"), TEXT("\r\n") ), StringReplace( StringToWINAPI( StringDecode( credits.str(), CP_UTF8 ) ), TEXT("\n"), TEXT("\r\n") ) );
|
||||||
libopenmpt::plugin::gui_show_file_info( hwndParent, TEXT(SHORT_TITLE), StringToWINAPI( StringReplace( StringDecode( credits.str(), CP_UTF8 ), L"\n", L"\r\n" ) ) );
|
|
||||||
#else
|
|
||||||
MessageBox( hwndParent, StringToWINAPI( StringReplace(StringDecode(credits.str(), CP_UTF8 ), L"\n", L"\r\n" ) ).c_str(), TEXT(SHORT_TITLE), MB_OK );
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void init() {
|
static void init() {
|
||||||
|
|
|
@ -875,6 +875,26 @@ LIBOPENMPT_API int openmpt_module_select_subsong( openmpt_module * mod, int32_t
|
||||||
* \since 0.3.0
|
* \since 0.3.0
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_API int32_t openmpt_module_get_selected_subsong( openmpt_module * mod );
|
LIBOPENMPT_API int32_t openmpt_module_get_selected_subsong( openmpt_module * mod );
|
||||||
|
|
||||||
|
/*! \brief Get the restart order of the specified sub-song
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param subsong Index of the sub-song to retrieve the restart position from.
|
||||||
|
* \return The restart order of the specified sub-song. This is the order to which playback returns after the last pattern row of the song has been played. -1 is returned if if sub-song is not in range [0,openmpt_module_get_num_subsongs()[
|
||||||
|
* \sa openmpt_module_get_restart_row
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int32_t openmpt_module_get_restart_order( openmpt_module * mod, int32_t subsong );
|
||||||
|
/*! \brief Get the restart row of the specified sub-song
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param subsong Index of the sub-song to retrieve the restart position from.
|
||||||
|
* \return The restart row of the specified sub-song. This is the first played row of the order to which playback returns after the last pattern row of the song has been played. -1 is returned if if sub-song is not in range [0,openmpt_module_get_num_subsongs()[
|
||||||
|
* \sa openmpt_module_get_restart_order
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int32_t openmpt_module_get_restart_row( openmpt_module * mod, int32_t subsong );
|
||||||
|
|
||||||
/*! \brief Set Repeat Count
|
/*! \brief Set Repeat Count
|
||||||
*
|
*
|
||||||
* \param mod The module handle to work on.
|
* \param mod The module handle to work on.
|
||||||
|
@ -905,6 +925,17 @@ LIBOPENMPT_API int32_t openmpt_module_get_repeat_count( openmpt_module * mod );
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_API double openmpt_module_get_duration_seconds( openmpt_module * mod );
|
LIBOPENMPT_API double openmpt_module_get_duration_seconds( openmpt_module * mod );
|
||||||
|
|
||||||
|
/*! \brief Get approximate playback time in seconds at given position
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param order The order position at which the time should be retrieved.
|
||||||
|
* \param row The pattern row number at which the time should be retrieved.
|
||||||
|
* \return Approximate playback time in seconds of current sub-song at the start of the given order and row combination. Negative if the position does not exist, or the pattern data is too complex to evaluate.
|
||||||
|
* \remarks If an order / row combination is played multiple times (e.g. due the pattern loops), the first occurence of this position is returned.
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API double openmpt_module_get_time_at_position( openmpt_module * mod, int32_t order, int32_t row );
|
||||||
|
|
||||||
/*! \brief Set approximate current song position
|
/*! \brief Set approximate current song position
|
||||||
*
|
*
|
||||||
* \param mod The module handle to work on.
|
* \param mod The module handle to work on.
|
||||||
|
@ -1330,6 +1361,44 @@ LIBOPENMPT_API const char * openmpt_module_get_sample_name( openmpt_module * mod
|
||||||
* \return The pattern index found at the given order position of the current sequence.
|
* \return The pattern index found at the given order position of the current sequence.
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_API int32_t openmpt_module_get_order_pattern( openmpt_module * mod, int32_t order );
|
LIBOPENMPT_API int32_t openmpt_module_get_order_pattern( openmpt_module * mod, int32_t order );
|
||||||
|
|
||||||
|
/*! \brief Check if specified order is a skip ("+++") item
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param order The order index to check.
|
||||||
|
* \return Returns non-zero value if the pattern index at the given order position represents a skip item. During playback, this item is ignored and playback resumes at the next order list item.
|
||||||
|
* \sa openmpt_module_is_order_stop_entry, openmpt_module_is_pattern_skip_item
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int openmpt_module_is_order_skip_entry( openmpt_module * mod, int32_t order );
|
||||||
|
/*! \brief Check if specified pattern index is a skip ("+++") item
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param pattern The pattern index to check.
|
||||||
|
* \return Returns non-zero value if the pattern index represents a skip item. During playback, this item is ignored and playback resumes at the next order list item.
|
||||||
|
* \sa openmpt_module_is_pattern_stop_item, openmpt_module_is_order_skip_entry, openmpt_module_get_order_pattern
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int openmpt_module_is_pattern_skip_item( openmpt_module * mod, int32_t pattern );
|
||||||
|
/*! \brief Check if specified order is a stop ("---") item
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param order The order index to check.
|
||||||
|
* \return Returns non-zero value if the pattern index at the given order position represents a stop item. When this item is reached, playback continues at the restart position of the current sub-song.
|
||||||
|
* \sa openmpt_module_is_order_skip_entry, openmpt_module_is_pattern_stop_item
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int openmpt_module_is_order_stop_entry( openmpt_module * mod, int32_t order );
|
||||||
|
/*! \brief Check if specified pattern index is a stop ("---") item
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param pattern The pattern index to check.
|
||||||
|
* \return Returns non-zero value if the pattern index represents a stop item. When this item is reached, playback continues at the restart position of the current sub-song.
|
||||||
|
* \sa openmpt_module_is_pattern_skip_item, openmpt_module_is_order_stop_entry, openmpt_module_get_order_pattern
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int openmpt_module_is_pattern_stop_item( openmpt_module * mod, int32_t pattern );
|
||||||
|
|
||||||
/*! \brief Get the number of rows in a pattern
|
/*! \brief Get the number of rows in a pattern
|
||||||
*
|
*
|
||||||
* \param mod The module handle to work on.
|
* \param mod The module handle to work on.
|
||||||
|
@ -1338,6 +1407,25 @@ LIBOPENMPT_API int32_t openmpt_module_get_order_pattern( openmpt_module * mod, i
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_API int32_t openmpt_module_get_pattern_num_rows( openmpt_module * mod, int32_t pattern );
|
LIBOPENMPT_API int32_t openmpt_module_get_pattern_num_rows( openmpt_module * mod, int32_t pattern );
|
||||||
|
|
||||||
|
/*! \brief Get the rows per beat of a pattern
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param pattern The pattern whose time signature should be retrieved.
|
||||||
|
* \return The rows per beat of the given pattern. If the pattern does not exist or the time signature is not defined, 0 is returned.
|
||||||
|
* \remarks Many module formats lack time signature metadata. In this case, the returned value may be an incorrect estimation.
|
||||||
|
* \since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int32_t openmpt_module_get_pattern_rows_per_beat( openmpt_module * mod, int32_t pattern );
|
||||||
|
|
||||||
|
/*! \brief Get the rows per measure of a pattern
|
||||||
|
*
|
||||||
|
* \param mod The module handle to work on.
|
||||||
|
* \param pattern The pattern whose time signature should be retrieved.
|
||||||
|
* \return The rows per measure of the given pattern. If the pattern does not exist or the time signature is not defined, 0 is returned.
|
||||||
|
* \remarks Many module formats lack time signature metadata. In this case, the returned value may be an incorrect estimation.
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_API int32_t openmpt_module_get_pattern_rows_per_measure( openmpt_module * mod, int32_t pattern );
|
||||||
|
|
||||||
/*! \brief Get raw pattern content
|
/*! \brief Get raw pattern content
|
||||||
*
|
*
|
||||||
* \param mod The module handle to work on.
|
* \param mod The module handle to work on.
|
||||||
|
|
|
@ -592,6 +592,26 @@ public:
|
||||||
\since 0.3.0
|
\since 0.3.0
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_selected_subsong() const;
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_selected_subsong() const;
|
||||||
|
|
||||||
|
//! Get the restart order of the specified sub-song
|
||||||
|
/*!
|
||||||
|
\param subsong Index of the sub-song to retrieve the restart position from.
|
||||||
|
\return The restart order of the specified sub-song. This is the order to which playback returns after the last pattern row of the song has been played.
|
||||||
|
\throws openmpt::exception Throws an exception derived from openmpt::exception if sub-song is not in range [0,openmpt::module::get_num_subsongs()[
|
||||||
|
\sa openmpt::module::get_restart_row
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_restart_order( std::int32_t subsong ) const;
|
||||||
|
//! Get the restart row of the specified sub-song
|
||||||
|
/*!
|
||||||
|
\param subsong Index of the sub-song to retrieve the restart position from.
|
||||||
|
\return The restart row of the specified sub-song. This is the first played row of the order to which playback returns after the last pattern row of the song has been played.
|
||||||
|
\throws openmpt::exception Throws an exception derived from openmpt::exception if sub-song is not in range [0,openmpt::module::get_num_subsongs()[
|
||||||
|
\sa openmpt::module::get_restart_order
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_restart_row( std::int32_t subsong ) const;
|
||||||
|
|
||||||
//! Set Repeat Count
|
//! Set Repeat Count
|
||||||
/*!
|
/*!
|
||||||
\param repeat_count Repeat Count
|
\param repeat_count Repeat Count
|
||||||
|
@ -618,6 +638,16 @@ public:
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_CXX_API_MEMBER double get_duration_seconds() const;
|
LIBOPENMPT_CXX_API_MEMBER double get_duration_seconds() const;
|
||||||
|
|
||||||
|
//! Get approximate playback time in seconds at given position
|
||||||
|
/*!
|
||||||
|
\param order The order position at which the time should be retrieved.
|
||||||
|
\param row The pattern row number at which the time should be retrieved.
|
||||||
|
\return Approximate playback time in seconds of current sub-song at the start of the given order and row combination. Negative if the position does not exist, or the pattern data is too complex to evaluate.
|
||||||
|
\remarks If an order / row combination is played multiple times (e.g. due the pattern loops), the first occurence of this position is returned.
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER double get_time_at_position( std::int32_t order, std::int32_t row ) const;
|
||||||
|
|
||||||
//! Set approximate current song position
|
//! Set approximate current song position
|
||||||
/*!
|
/*!
|
||||||
\param seconds Seconds to seek to. If seconds is out of range, the position gets set to song start or end respectively.
|
\param seconds Seconds to seek to. If seconds is out of range, the position gets set to song start or end respectively.
|
||||||
|
@ -989,6 +1019,39 @@ public:
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_order_pattern( std::int32_t order ) const;
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_order_pattern( std::int32_t order ) const;
|
||||||
|
|
||||||
|
//! Check if specified order is a skip ("+++") item
|
||||||
|
/*!
|
||||||
|
\param order The order index to check.
|
||||||
|
\return Returns true if the pattern index at the given order position represents a skip item. During playback, this item is ignored and playback resumes at the next order list item.
|
||||||
|
\sa openmpt::module::is_order_stop_entry, openmpt::module::is_pattern_skip_item
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER bool is_order_skip_entry( std::int32_t order ) const ;
|
||||||
|
//! Check if specified pattern index is a skip ("+++") item
|
||||||
|
/*!
|
||||||
|
\param pattern The pattern index to check.
|
||||||
|
\return Returns true if the pattern index represents a skip item. During playback, this item is ignored and playback resumes at the next order list item.
|
||||||
|
\sa openmpt::module::is_pattern_stop_item, openmpt::module::is_order_skip_entry, openmpt::module::get_order_pattern
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER bool is_pattern_skip_item( std::int32_t pattern ) const;
|
||||||
|
//! Check if specified order is a stop ("---") item
|
||||||
|
/*!
|
||||||
|
\param order The order index to check.
|
||||||
|
\return Returns true if the pattern index at the given order position represents a stop item. When this item is reached, playback continues at the restart position of the current sub-song.
|
||||||
|
\sa openmpt::module::is_order_skip_entry, openmpt::module::is_pattern_stop_item
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER bool is_order_stop_entry( std::int32_t order ) const;
|
||||||
|
//! Check if specified pattern index is a stop ("---") item
|
||||||
|
/*!
|
||||||
|
\param pattern The pattern index to check.
|
||||||
|
\return Returns true if the pattern index represents a stop item. When this item is reached, playback continues at the restart position of the current sub-song.
|
||||||
|
\sa openmpt::module::is_pattern_skip_item, openmpt::module::is_order_stop_entry, openmpt::module::get_order_pattern
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER bool is_pattern_stop_item( std::int32_t pattern ) const;
|
||||||
|
|
||||||
//! Get the number of rows in a pattern
|
//! Get the number of rows in a pattern
|
||||||
/*!
|
/*!
|
||||||
\param pattern The pattern whose row count should be retrieved.
|
\param pattern The pattern whose row count should be retrieved.
|
||||||
|
@ -996,6 +1059,24 @@ public:
|
||||||
*/
|
*/
|
||||||
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_pattern_num_rows( std::int32_t pattern ) const;
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_pattern_num_rows( std::int32_t pattern ) const;
|
||||||
|
|
||||||
|
//! Get the rows per beat of a pattern
|
||||||
|
/*!
|
||||||
|
\param pattern The pattern whose time signature should be retrieved.
|
||||||
|
\return The rows per beat of the given pattern. If the pattern does not exist or the time signature is not defined, 0 is returned.
|
||||||
|
\remarks Many module formats lack time signature metadata. In this case, the returned value may be an incorrect estimation.
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_pattern_rows_per_beat( std::int32_t pattern ) const;
|
||||||
|
|
||||||
|
//! Get the rows per measure of a pattern
|
||||||
|
/*!
|
||||||
|
\param pattern The pattern whose time signature should be retrieved.
|
||||||
|
\return The rows per measure of the given pattern. If the pattern does not exist or the time signature is not defined, 0 is returned.
|
||||||
|
\remarks Many module formats lack time signature metadata. In this case, the returned value may be an incorrect estimation.
|
||||||
|
\since 0.8.0
|
||||||
|
*/
|
||||||
|
LIBOPENMPT_CXX_API_MEMBER std::int32_t get_pattern_rows_per_measure( std::int32_t pattern ) const;
|
||||||
|
|
||||||
//! Get raw pattern content
|
//! Get raw pattern content
|
||||||
/*!
|
/*!
|
||||||
\param pattern The pattern whose data should be retrieved.
|
\param pattern The pattern whose data should be retrieved.
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
#include <limits>
|
#include <limits>
|
||||||
#include <new>
|
#include <new>
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
|
#include <string_view>
|
||||||
|
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
#include <cstdio>
|
#include <cstdio>
|
||||||
|
@ -741,6 +742,26 @@ int32_t openmpt_module_get_selected_subsong( openmpt_module * mod ) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32_t openmpt_module_get_restart_order( openmpt_module * mod, int32_t subsong ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->get_restart_order( subsong );
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t openmpt_module_get_restart_row( openmpt_module * mod, int32_t subsong ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->get_restart_row( subsong );
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
int openmpt_module_set_repeat_count( openmpt_module * mod, int32_t repeat_count ) {
|
int openmpt_module_set_repeat_count( openmpt_module * mod, int32_t repeat_count ) {
|
||||||
try {
|
try {
|
||||||
openmpt::interface::check_soundfile( mod );
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
@ -771,6 +792,16 @@ double openmpt_module_get_duration_seconds( openmpt_module * mod ) {
|
||||||
return 0.0;
|
return 0.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
double openmpt_module_get_time_at_position( openmpt_module * mod, int32_t order, int32_t row ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->get_time_at_position( order, row );
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return -1.0;
|
||||||
|
}
|
||||||
|
|
||||||
double openmpt_module_set_position_seconds( openmpt_module * mod, double seconds ) {
|
double openmpt_module_set_position_seconds( openmpt_module * mod, double seconds ) {
|
||||||
try {
|
try {
|
||||||
openmpt::interface::check_soundfile( mod );
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
@ -1225,6 +1256,44 @@ int32_t openmpt_module_get_order_pattern( openmpt_module * mod, int32_t order )
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int openmpt_module_is_order_skip_entry( openmpt_module * mod, int32_t order ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->is_order_skip_entry( order ) ? 1 : 0;
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
int openmpt_module_is_pattern_skip_item( openmpt_module * mod, int32_t pattern ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->is_pattern_skip_item( pattern ) ? 1 : 0;
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
int openmpt_module_is_order_stop_entry( openmpt_module * mod, int32_t order ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->is_order_stop_entry( order ) ? 1 : 0;
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
int openmpt_module_is_pattern_stop_item( openmpt_module * mod, int32_t pattern ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->is_pattern_stop_item( pattern ) ? 1 : 0;
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int32_t openmpt_module_get_pattern_num_rows( openmpt_module * mod, int32_t pattern ) {
|
int32_t openmpt_module_get_pattern_num_rows( openmpt_module * mod, int32_t pattern ) {
|
||||||
try {
|
try {
|
||||||
openmpt::interface::check_soundfile( mod );
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
@ -1235,6 +1304,25 @@ int32_t openmpt_module_get_pattern_num_rows( openmpt_module * mod, int32_t patte
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32_t openmpt_module_get_pattern_rows_per_beat( openmpt_module * mod, int32_t pattern ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->get_pattern_rows_per_beat( pattern );
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
int32_t openmpt_module_get_pattern_rows_per_measure( openmpt_module * mod, int32_t pattern ) {
|
||||||
|
try {
|
||||||
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
return mod->impl->get_pattern_rows_per_measure( pattern );
|
||||||
|
} catch ( ... ) {
|
||||||
|
openmpt::report_exception( __func__, mod );
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
uint8_t openmpt_module_get_pattern_row_channel_command( openmpt_module * mod, int32_t pattern, int32_t row, int32_t channel, int command ) {
|
uint8_t openmpt_module_get_pattern_row_channel_command( openmpt_module * mod, int32_t pattern, int32_t row, int32_t channel, int command ) {
|
||||||
try {
|
try {
|
||||||
openmpt::interface::check_soundfile( mod );
|
openmpt::interface::check_soundfile( mod );
|
||||||
|
@ -1823,12 +1911,13 @@ int openmpt_module_ext_get_interface( openmpt_module_ext * mod_ext, const char *
|
||||||
openmpt::interface::check_pointer( interface );
|
openmpt::interface::check_pointer( interface );
|
||||||
std::memset( interface, 0, interface_size );
|
std::memset( interface, 0, interface_size );
|
||||||
int result = 0;
|
int result = 0;
|
||||||
if ( !std::strcmp( interface_id, "" ) ) {
|
std::string_view interface_id_sv = interface_id;
|
||||||
|
if ( interface_id_sv == "" ) {
|
||||||
result = 0;
|
result = 0;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else if ( !std::strcmp( interface_id, LIBOPENMPT_EXT_C_INTERFACE_PATTERN_VIS ) && ( interface_size == sizeof( openmpt_module_ext_interface_pattern_vis ) ) ) {
|
} else if ( ( interface_id_sv == LIBOPENMPT_EXT_C_INTERFACE_PATTERN_VIS ) && ( interface_size == sizeof( openmpt_module_ext_interface_pattern_vis ) ) ) {
|
||||||
openmpt_module_ext_interface_pattern_vis * i = static_cast< openmpt_module_ext_interface_pattern_vis * >( interface );
|
openmpt_module_ext_interface_pattern_vis * i = static_cast< openmpt_module_ext_interface_pattern_vis * >( interface );
|
||||||
i->get_pattern_row_channel_volume_effect_type = &get_pattern_row_channel_volume_effect_type;
|
i->get_pattern_row_channel_volume_effect_type = &get_pattern_row_channel_volume_effect_type;
|
||||||
i->get_pattern_row_channel_effect_type = &get_pattern_row_channel_effect_type;
|
i->get_pattern_row_channel_effect_type = &get_pattern_row_channel_effect_type;
|
||||||
|
@ -1836,7 +1925,7 @@ int openmpt_module_ext_get_interface( openmpt_module_ext * mod_ext, const char *
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else if ( !std::strcmp( interface_id, LIBOPENMPT_EXT_C_INTERFACE_INTERACTIVE ) && ( interface_size == sizeof( openmpt_module_ext_interface_interactive ) ) ) {
|
} else if ( ( interface_id_sv == LIBOPENMPT_EXT_C_INTERFACE_INTERACTIVE ) && ( interface_size == sizeof( openmpt_module_ext_interface_interactive ) ) ) {
|
||||||
openmpt_module_ext_interface_interactive * i = static_cast< openmpt_module_ext_interface_interactive * >( interface );
|
openmpt_module_ext_interface_interactive * i = static_cast< openmpt_module_ext_interface_interactive * >( interface );
|
||||||
i->set_current_speed = &set_current_speed;
|
i->set_current_speed = &set_current_speed;
|
||||||
i->set_current_tempo = &set_current_tempo;
|
i->set_current_tempo = &set_current_tempo;
|
||||||
|
@ -1858,7 +1947,7 @@ int openmpt_module_ext_get_interface( openmpt_module_ext * mod_ext, const char *
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else if ( !std::strcmp( interface_id, LIBOPENMPT_EXT_C_INTERFACE_INTERACTIVE2 ) && ( interface_size == sizeof( openmpt_module_ext_interface_interactive2 ) ) ) {
|
} else if ( ( interface_id_sv == LIBOPENMPT_EXT_C_INTERFACE_INTERACTIVE2 ) && ( interface_size == sizeof( openmpt_module_ext_interface_interactive2 ) ) ) {
|
||||||
openmpt_module_ext_interface_interactive2 * i = static_cast< openmpt_module_ext_interface_interactive2 * >( interface );
|
openmpt_module_ext_interface_interactive2 * i = static_cast< openmpt_module_ext_interface_interactive2 * >( interface );
|
||||||
i->note_off = ¬e_off;
|
i->note_off = ¬e_off;
|
||||||
i->note_fade = ¬e_fade;
|
i->note_fade = ¬e_fade;
|
||||||
|
@ -1870,7 +1959,7 @@ int openmpt_module_ext_get_interface( openmpt_module_ext * mod_ext, const char *
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else if ( !std::strcmp( interface_id, LIBOPENMPT_EXT_C_INTERFACE_INTERACTIVE3 ) && ( interface_size == sizeof( openmpt_module_ext_interface_interactive3 ) ) ) {
|
} else if ( ( interface_id_sv == LIBOPENMPT_EXT_C_INTERFACE_INTERACTIVE3 ) && ( interface_size == sizeof( openmpt_module_ext_interface_interactive3 ) ) ) {
|
||||||
openmpt_module_ext_interface_interactive3 * i = static_cast< openmpt_module_ext_interface_interactive3 * >( interface );
|
openmpt_module_ext_interface_interactive3 * i = static_cast< openmpt_module_ext_interface_interactive3 * >( interface );
|
||||||
i->set_current_tempo2 = &set_current_tempo2;
|
i->set_current_tempo2 = &set_current_tempo2;
|
||||||
result = 1;
|
result = 1;
|
||||||
|
|
|
@ -240,6 +240,13 @@ std::int32_t module::get_selected_subsong() const {
|
||||||
return impl->get_selected_subsong();
|
return impl->get_selected_subsong();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::int32_t module::get_restart_order( std::int32_t subsong ) const {
|
||||||
|
return impl->get_restart_order( subsong );
|
||||||
|
}
|
||||||
|
std::int32_t module::get_restart_row( std::int32_t subsong ) const {
|
||||||
|
return impl->get_restart_row( subsong );
|
||||||
|
}
|
||||||
|
|
||||||
void module::set_repeat_count( std::int32_t repeat_count ) {
|
void module::set_repeat_count( std::int32_t repeat_count ) {
|
||||||
impl->set_repeat_count( repeat_count );
|
impl->set_repeat_count( repeat_count );
|
||||||
}
|
}
|
||||||
|
@ -251,6 +258,10 @@ double module::get_duration_seconds() const {
|
||||||
return impl->get_duration_seconds();
|
return impl->get_duration_seconds();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
double module::get_time_at_position( std::int32_t order, std::int32_t row ) const {
|
||||||
|
return impl->get_time_at_position( order, row );
|
||||||
|
}
|
||||||
|
|
||||||
double module::set_position_seconds( double seconds ) {
|
double module::set_position_seconds( double seconds ) {
|
||||||
return impl->set_position_seconds( seconds );
|
return impl->set_position_seconds( seconds );
|
||||||
}
|
}
|
||||||
|
@ -389,10 +400,32 @@ std::vector<std::string> module::get_sample_names() const {
|
||||||
std::int32_t module::get_order_pattern( std::int32_t order ) const {
|
std::int32_t module::get_order_pattern( std::int32_t order ) const {
|
||||||
return impl->get_order_pattern( order );
|
return impl->get_order_pattern( order );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool module::is_order_skip_entry(std::int32_t order) const {
|
||||||
|
return impl->is_order_skip_entry( order );
|
||||||
|
}
|
||||||
|
bool module::is_pattern_skip_item( std::int32_t pattern ) const {
|
||||||
|
return module_impl::is_pattern_skip_item( pattern );
|
||||||
|
}
|
||||||
|
bool module::is_order_stop_entry( std::int32_t order ) const {
|
||||||
|
return impl->is_order_stop_entry( order );
|
||||||
|
}
|
||||||
|
bool module::is_pattern_stop_item( std::int32_t pattern ) const {
|
||||||
|
return module_impl::is_pattern_stop_item( pattern );
|
||||||
|
}
|
||||||
|
|
||||||
std::int32_t module::get_pattern_num_rows( std::int32_t pattern ) const {
|
std::int32_t module::get_pattern_num_rows( std::int32_t pattern ) const {
|
||||||
return impl->get_pattern_num_rows( pattern );
|
return impl->get_pattern_num_rows( pattern );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::int32_t module::get_pattern_rows_per_beat( std::int32_t pattern ) const {
|
||||||
|
return impl->get_pattern_rows_per_beat( pattern );
|
||||||
|
}
|
||||||
|
|
||||||
|
std::int32_t module::get_pattern_rows_per_measure( std::int32_t pattern ) const {
|
||||||
|
return impl->get_pattern_rows_per_measure( pattern );
|
||||||
|
}
|
||||||
|
|
||||||
std::uint8_t module::get_pattern_row_channel_command( std::int32_t pattern, std::int32_t row, std::int32_t channel, int command ) const {
|
std::uint8_t module::get_pattern_row_channel_command( std::int32_t pattern, std::int32_t row, std::int32_t channel, int command ) const {
|
||||||
return impl->get_pattern_row_channel_command( pattern, row, channel, command );
|
return impl->get_pattern_row_channel_command( pattern, row, channel, command );
|
||||||
}
|
}
|
||||||
|
|
|
@ -183,7 +183,7 @@ namespace openmpt {
|
||||||
if ( volume < 0.0 || volume > 1.0 ) {
|
if ( volume < 0.0 || volume > 1.0 ) {
|
||||||
throw openmpt::exception("invalid global volume");
|
throw openmpt::exception("invalid global volume");
|
||||||
}
|
}
|
||||||
m_sndFile->m_PlayState.Chn[channel].nGlobalVol = mpt::saturate_round<std::int32_t>(volume * 64.0);
|
m_sndFile->m_PlayState.Chn[channel].nGlobalVol = mpt::saturate_round<std::uint8_t>(volume * 64.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
double module_ext_impl::get_channel_volume( std::int32_t channel ) const {
|
double module_ext_impl::get_channel_volume( std::int32_t channel ) const {
|
||||||
|
|
|
@ -46,7 +46,6 @@
|
||||||
|
|
||||||
#include "common/version.h"
|
#include "common/version.h"
|
||||||
#include "common/misc_util.h"
|
#include "common/misc_util.h"
|
||||||
#include "common/Dither.h"
|
|
||||||
#include "common/FileReader.h"
|
#include "common/FileReader.h"
|
||||||
#include "common/Logging.h"
|
#include "common/Logging.h"
|
||||||
#include "soundlib/Sndfile.h"
|
#include "soundlib/Sndfile.h"
|
||||||
|
@ -77,6 +76,14 @@ MPT_WARNING("Warning: Platform (Windows) supports multi-threading, however the t
|
||||||
MPT_WARNING("Warning: libopenmpt is known to trigger bad code generation with Clang 5..10 on powerpc (32bit) when using -O3. See <https://bugs.llvm.org/show_bug.cgi?id=46683>.")
|
MPT_WARNING("Warning: libopenmpt is known to trigger bad code generation with Clang 5..10 on powerpc (32bit) when using -O3. See <https://bugs.llvm.org/show_bug.cgi?id=46683>.")
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(ENABLE_TESTS)
|
||||||
|
#if defined(MPT_COMPILER_QUIRK_WINDOWS_FSTREAM_NO_WCHAR)
|
||||||
|
#if MPT_GCC_BEFORE(9,1,0)
|
||||||
|
MPT_WARNING("Warning: MinGW with GCC earlier than 9.1 detected. Standard library does neither provide std::fstream wchar_t overloads nor std::filesystem with wchar_t support. Unicode filename support is thus unavailable.")
|
||||||
|
#endif // MPT_GCC_AT_LEAST(9,1,0)
|
||||||
|
#endif // MPT_COMPILER_QUIRK_WINDOWS_FSTREAM_NO_WCHAR
|
||||||
|
#endif // ENABLE_TESTS
|
||||||
|
|
||||||
#endif // !MPT_BUILD_SILENCE_LIBOPENMPT_CONFIGURATION_WARNINGS
|
#endif // !MPT_BUILD_SILENCE_LIBOPENMPT_CONFIGURATION_WARNINGS
|
||||||
|
|
||||||
#if defined(MPT_ASSERT_HANDLER_NEEDED) && !defined(ENABLE_TESTS)
|
#if defined(MPT_ASSERT_HANDLER_NEEDED) && !defined(ENABLE_TESTS)
|
||||||
|
@ -224,7 +231,7 @@ std::string get_string( const std::string & key ) {
|
||||||
return get_source_revision_string();
|
return get_source_revision_string();
|
||||||
} else if ( key == "source_is_modified" ) {
|
} else if ( key == "source_is_modified" ) {
|
||||||
return OpenMPT::SourceInfo::Current().IsDirty() ? "1" : "0";
|
return OpenMPT::SourceInfo::Current().IsDirty() ? "1" : "0";
|
||||||
} else if ( key == "source_has_mixed_revision" ) {
|
} else if ( key == "source_has_mixed_revisions" ) {
|
||||||
return OpenMPT::SourceInfo::Current().HasMixedRevisions() ? "1" : "0";
|
return OpenMPT::SourceInfo::Current().HasMixedRevisions() ? "1" : "0";
|
||||||
} else if ( key == "source_is_package" ) {
|
} else if ( key == "source_is_package" ) {
|
||||||
return OpenMPT::SourceInfo::Current().IsPackage() ? "1" : "0";
|
return OpenMPT::SourceInfo::Current().IsPackage() ? "1" : "0";
|
||||||
|
@ -306,11 +313,13 @@ void module_impl::PushToCSoundFileLog( int loglevel, const std::string & text )
|
||||||
m_sndFile->AddToLog( static_cast<OpenMPT::LogLevel>( loglevel ), mpt::transcode<mpt::ustring>( mpt::common_encoding::utf8, text ) );
|
m_sndFile->AddToLog( static_cast<OpenMPT::LogLevel>( loglevel ), mpt::transcode<mpt::ustring>( mpt::common_encoding::utf8, text ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
module_impl::subsong_data::subsong_data( double duration, std::int32_t start_row, std::int32_t start_order, std::int32_t sequence )
|
module_impl::subsong_data::subsong_data( double duration, std::int32_t start_row, std::int32_t start_order, std::int32_t sequence, std::int32_t restart_row, std::int32_t restart_order )
|
||||||
: duration(duration)
|
: duration(duration)
|
||||||
, start_row(start_row)
|
, start_row(start_row)
|
||||||
, start_order(start_order)
|
, start_order(start_order)
|
||||||
, sequence(sequence)
|
, sequence(sequence)
|
||||||
|
, restart_row(restart_row)
|
||||||
|
, restart_order(restart_order)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -436,7 +445,7 @@ module_impl::subsongs_type module_impl::get_subsongs() const {
|
||||||
for ( OpenMPT::SEQUENCEINDEX seq = 0; seq < m_sndFile->Order.GetNumSequences(); ++seq ) {
|
for ( OpenMPT::SEQUENCEINDEX seq = 0; seq < m_sndFile->Order.GetNumSequences(); ++seq ) {
|
||||||
const std::vector<OpenMPT::GetLengthType> lengths = m_sndFile->GetLength( OpenMPT::eNoAdjust, OpenMPT::GetLengthTarget( true ).StartPos( seq, 0, 0 ) );
|
const std::vector<OpenMPT::GetLengthType> lengths = m_sndFile->GetLength( OpenMPT::eNoAdjust, OpenMPT::GetLengthTarget( true ).StartPos( seq, 0, 0 ) );
|
||||||
for ( const auto & l : lengths ) {
|
for ( const auto & l : lengths ) {
|
||||||
subsongs.push_back( subsong_data( l.duration, l.startRow, l.startOrder, seq ) );
|
subsongs.push_back( subsong_data( l.duration, l.startRow, l.startOrder, seq, l.restartRow, l.restartOrder ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return subsongs;
|
return subsongs;
|
||||||
|
@ -512,7 +521,7 @@ std::size_t module_impl::read_wrapper( std::size_t count, std::int16_t * left, s
|
||||||
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_planar<std::int16_t>> target( mpt::audio_span_planar<std::int16_t>( buffers, valid_channels( buffers, std::size( buffers ) ), count ), *m_Dithers, m_Gain );
|
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_planar<std::int16_t>> target( mpt::audio_span_planar<std::int16_t>( buffers, valid_channels( buffers, std::size( buffers ) ), count ), *m_Dithers, m_Gain );
|
||||||
while ( count > 0 ) {
|
while ( count > 0 ) {
|
||||||
std::size_t count_chunk = m_sndFile->Read(
|
std::size_t count_chunk = m_sndFile->Read(
|
||||||
static_cast<OpenMPT::CSoundFile::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::CSoundFile::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
static_cast<OpenMPT::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
||||||
target
|
target
|
||||||
);
|
);
|
||||||
if ( count_chunk == 0 ) {
|
if ( count_chunk == 0 ) {
|
||||||
|
@ -523,7 +532,7 @@ std::size_t module_impl::read_wrapper( std::size_t count, std::int16_t * left, s
|
||||||
}
|
}
|
||||||
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
||||||
// This is the song end, but allow the song or loop to restart on the next call
|
// This is the song end, but allow the song or loop to restart on the next call
|
||||||
m_sndFile->m_SongFlags.reset(OpenMPT::SONG_ENDREACHED);
|
m_sndFile->m_PlayState.m_flags.reset(OpenMPT::SONG_ENDREACHED);
|
||||||
}
|
}
|
||||||
return count_read;
|
return count_read;
|
||||||
}
|
}
|
||||||
|
@ -535,7 +544,7 @@ std::size_t module_impl::read_wrapper( std::size_t count, float * left, float *
|
||||||
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_planar<float>> target( mpt::audio_span_planar<float>( buffers, valid_channels( buffers, std::size( buffers ) ), count ), *m_Dithers, m_Gain );
|
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_planar<float>> target( mpt::audio_span_planar<float>( buffers, valid_channels( buffers, std::size( buffers ) ), count ), *m_Dithers, m_Gain );
|
||||||
while ( count > 0 ) {
|
while ( count > 0 ) {
|
||||||
std::size_t count_chunk = m_sndFile->Read(
|
std::size_t count_chunk = m_sndFile->Read(
|
||||||
static_cast<OpenMPT::CSoundFile::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::CSoundFile::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
static_cast<OpenMPT::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
||||||
target
|
target
|
||||||
);
|
);
|
||||||
if ( count_chunk == 0 ) {
|
if ( count_chunk == 0 ) {
|
||||||
|
@ -546,7 +555,7 @@ std::size_t module_impl::read_wrapper( std::size_t count, float * left, float *
|
||||||
}
|
}
|
||||||
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
||||||
// This is the song end, but allow the song or loop to restart on the next call
|
// This is the song end, but allow the song or loop to restart on the next call
|
||||||
m_sndFile->m_SongFlags.reset(OpenMPT::SONG_ENDREACHED);
|
m_sndFile->m_PlayState.m_flags.reset(OpenMPT::SONG_ENDREACHED);
|
||||||
}
|
}
|
||||||
return count_read;
|
return count_read;
|
||||||
}
|
}
|
||||||
|
@ -557,7 +566,7 @@ std::size_t module_impl::read_interleaved_wrapper( std::size_t count, std::size_
|
||||||
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_interleaved<std::int16_t>> target( mpt::audio_span_interleaved<std::int16_t>( interleaved, channels, count ), *m_Dithers, m_Gain );
|
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_interleaved<std::int16_t>> target( mpt::audio_span_interleaved<std::int16_t>( interleaved, channels, count ), *m_Dithers, m_Gain );
|
||||||
while ( count > 0 ) {
|
while ( count > 0 ) {
|
||||||
std::size_t count_chunk = m_sndFile->Read(
|
std::size_t count_chunk = m_sndFile->Read(
|
||||||
static_cast<OpenMPT::CSoundFile::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::CSoundFile::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
static_cast<OpenMPT::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
||||||
target
|
target
|
||||||
);
|
);
|
||||||
if ( count_chunk == 0 ) {
|
if ( count_chunk == 0 ) {
|
||||||
|
@ -568,7 +577,7 @@ std::size_t module_impl::read_interleaved_wrapper( std::size_t count, std::size_
|
||||||
}
|
}
|
||||||
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
||||||
// This is the song end, but allow the song or loop to restart on the next call
|
// This is the song end, but allow the song or loop to restart on the next call
|
||||||
m_sndFile->m_SongFlags.reset(OpenMPT::SONG_ENDREACHED);
|
m_sndFile->m_PlayState.m_flags.reset(OpenMPT::SONG_ENDREACHED);
|
||||||
}
|
}
|
||||||
return count_read;
|
return count_read;
|
||||||
}
|
}
|
||||||
|
@ -579,7 +588,7 @@ std::size_t module_impl::read_interleaved_wrapper( std::size_t count, std::size_
|
||||||
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_interleaved<float>> target( mpt::audio_span_interleaved<float>( interleaved, channels, count ), *m_Dithers, m_Gain );
|
OpenMPT::AudioTargetBufferWithGain<mpt::audio_span_interleaved<float>> target( mpt::audio_span_interleaved<float>( interleaved, channels, count ), *m_Dithers, m_Gain );
|
||||||
while ( count > 0 ) {
|
while ( count > 0 ) {
|
||||||
std::size_t count_chunk = m_sndFile->Read(
|
std::size_t count_chunk = m_sndFile->Read(
|
||||||
static_cast<OpenMPT::CSoundFile::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::CSoundFile::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
static_cast<OpenMPT::samplecount_t>( std::min( static_cast<std::uint64_t>( count ), static_cast<std::uint64_t>( std::numeric_limits<OpenMPT::samplecount_t>::max() / 2 / 4 / 4 ) ) ), // safety margin / samplesize / channels
|
||||||
target
|
target
|
||||||
);
|
);
|
||||||
if ( count_chunk == 0 ) {
|
if ( count_chunk == 0 ) {
|
||||||
|
@ -590,7 +599,7 @@ std::size_t module_impl::read_interleaved_wrapper( std::size_t count, std::size_
|
||||||
}
|
}
|
||||||
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
if ( count_read == 0 && m_ctl_play_at_end == song_end_action::continue_song ) {
|
||||||
// This is the song end, but allow the song or loop to restart on the next call
|
// This is the song end, but allow the song or loop to restart on the next call
|
||||||
m_sndFile->m_SongFlags.reset(OpenMPT::SONG_ENDREACHED);
|
m_sndFile->m_PlayState.m_flags.reset(OpenMPT::SONG_ENDREACHED);
|
||||||
}
|
}
|
||||||
return count_read;
|
return count_read;
|
||||||
}
|
}
|
||||||
|
@ -1075,6 +1084,15 @@ double module_impl::get_duration_seconds() const {
|
||||||
}
|
}
|
||||||
return subsongs[m_current_subsong].duration;
|
return subsongs[m_current_subsong].duration;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
double module_impl::get_time_at_position( std::int32_t order, std::int32_t row ) const {
|
||||||
|
const auto t = m_sndFile->GetLength( OpenMPT::eNoAdjust, OpenMPT::GetLengthTarget( static_cast<OpenMPT::ORDERINDEX>( order ), static_cast<OpenMPT::ROWINDEX>( row ) ) ).back();
|
||||||
|
if ( t.targetReached )
|
||||||
|
return t.duration;
|
||||||
|
else
|
||||||
|
return -1.0;
|
||||||
|
}
|
||||||
|
|
||||||
void module_impl::select_subsong( std::int32_t subsong ) {
|
void module_impl::select_subsong( std::int32_t subsong ) {
|
||||||
std::unique_ptr<subsongs_type> subsongs_temp = has_subsongs_inited() ? std::unique_ptr<subsongs_type>() : std::make_unique<subsongs_type>( get_subsongs() );
|
std::unique_ptr<subsongs_type> subsongs_temp = has_subsongs_inited() ? std::unique_ptr<subsongs_type>() : std::make_unique<subsongs_type>( get_subsongs() );
|
||||||
const subsongs_type & subsongs = has_subsongs_inited() ? m_subsongs : *subsongs_temp;
|
const subsongs_type & subsongs = has_subsongs_inited() ? m_subsongs : *subsongs_temp;
|
||||||
|
@ -1093,6 +1111,24 @@ void module_impl::select_subsong( std::int32_t subsong ) {
|
||||||
std::int32_t module_impl::get_selected_subsong() const {
|
std::int32_t module_impl::get_selected_subsong() const {
|
||||||
return m_current_subsong;
|
return m_current_subsong;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::int32_t module_impl::get_restart_order( std::int32_t subsong ) const {
|
||||||
|
std::unique_ptr<subsongs_type> subsongs_temp = has_subsongs_inited() ? std::unique_ptr<subsongs_type>() : std::make_unique<subsongs_type>( get_subsongs() );
|
||||||
|
const subsongs_type & subsongs = has_subsongs_inited() ? m_subsongs : *subsongs_temp;
|
||||||
|
if ( subsong < 0 || subsong >= static_cast<std::int32_t>( subsongs.size() ) ) {
|
||||||
|
throw openmpt::exception( "invalid subsong" );
|
||||||
|
}
|
||||||
|
return subsongs[subsong].restart_order;
|
||||||
|
}
|
||||||
|
std::int32_t module_impl::get_restart_row( std::int32_t subsong ) const {
|
||||||
|
std::unique_ptr<subsongs_type> subsongs_temp = has_subsongs_inited() ? std::unique_ptr<subsongs_type>() : std::make_unique<subsongs_type>( get_subsongs() );
|
||||||
|
const subsongs_type & subsongs = has_subsongs_inited() ? m_subsongs : *subsongs_temp;
|
||||||
|
if ( subsong < 0 || subsong >= static_cast<std::int32_t>( subsongs.size() ) ) {
|
||||||
|
throw openmpt::exception( "invalid subsong" );
|
||||||
|
}
|
||||||
|
return subsongs[subsong].restart_row;
|
||||||
|
}
|
||||||
|
|
||||||
void module_impl::set_repeat_count( std::int32_t repeat_count ) {
|
void module_impl::set_repeat_count( std::int32_t repeat_count ) {
|
||||||
m_sndFile->SetRepeatCount( repeat_count );
|
m_sndFile->SetRepeatCount( repeat_count );
|
||||||
}
|
}
|
||||||
|
@ -1123,8 +1159,8 @@ double module_impl::set_position_seconds( double seconds ) {
|
||||||
}
|
}
|
||||||
m_sndFile->SetCurrentOrder( static_cast<OpenMPT::ORDERINDEX>( subsong->start_order ) );
|
m_sndFile->SetCurrentOrder( static_cast<OpenMPT::ORDERINDEX>( subsong->start_order ) );
|
||||||
OpenMPT::GetLengthType t = m_sndFile->GetLength( m_ctl_seek_sync_samples ? OpenMPT::eAdjustSamplePositions : OpenMPT::eAdjust, OpenMPT::GetLengthTarget( seconds ).StartPos( static_cast<OpenMPT::SEQUENCEINDEX>( subsong->sequence ), static_cast<OpenMPT::ORDERINDEX>( subsong->start_order ), static_cast<OpenMPT::ROWINDEX>( subsong->start_row ) ) ).back();
|
OpenMPT::GetLengthType t = m_sndFile->GetLength( m_ctl_seek_sync_samples ? OpenMPT::eAdjustSamplePositions : OpenMPT::eAdjust, OpenMPT::GetLengthTarget( seconds ).StartPos( static_cast<OpenMPT::SEQUENCEINDEX>( subsong->sequence ), static_cast<OpenMPT::ORDERINDEX>( subsong->start_order ), static_cast<OpenMPT::ROWINDEX>( subsong->start_row ) ) ).back();
|
||||||
m_sndFile->m_PlayState.m_nNextOrder = m_sndFile->m_PlayState.m_nCurrentOrder = t.targetReached ? t.lastOrder : t.endOrder;
|
m_sndFile->m_PlayState.m_nNextOrder = m_sndFile->m_PlayState.m_nCurrentOrder = t.targetReached ? t.restartOrder : t.endOrder;
|
||||||
m_sndFile->m_PlayState.m_nNextRow = t.targetReached ? t.lastRow : t.endRow;
|
m_sndFile->m_PlayState.m_nNextRow = t.targetReached ? t.restartRow : t.endRow;
|
||||||
m_sndFile->m_PlayState.m_nTickCount = OpenMPT::CSoundFile::TICKS_ROW_FINISHED;
|
m_sndFile->m_PlayState.m_nTickCount = OpenMPT::CSoundFile::TICKS_ROW_FINISHED;
|
||||||
m_currentPositionSeconds = base_seconds + t.duration;
|
m_currentPositionSeconds = base_seconds + t.duration;
|
||||||
return m_currentPositionSeconds;
|
return m_currentPositionSeconds;
|
||||||
|
@ -1415,9 +1451,9 @@ std::vector<std::string> module_impl::get_order_names() const {
|
||||||
if ( m_sndFile->Patterns.IsValidIndex( pat ) ) {
|
if ( m_sndFile->Patterns.IsValidIndex( pat ) ) {
|
||||||
retval.push_back( mod_string_to_utf8( m_sndFile->Patterns[ m_sndFile->Order()[i] ].GetName() ) );
|
retval.push_back( mod_string_to_utf8( m_sndFile->Patterns[ m_sndFile->Order()[i] ].GetName() ) );
|
||||||
} else {
|
} else {
|
||||||
if ( pat == m_sndFile->Order.GetIgnoreIndex() ) {
|
if ( pat == OpenMPT::PATTERNINDEX_SKIP ) {
|
||||||
retval.push_back( "+++ skip" );
|
retval.push_back( "+++ skip" );
|
||||||
} else if ( pat == m_sndFile->Order.GetInvalidPatIndex() ) {
|
} else if ( pat == OpenMPT::PATTERNINDEX_INVALID ) {
|
||||||
retval.push_back( "--- stop" );
|
retval.push_back( "--- stop" );
|
||||||
} else {
|
} else {
|
||||||
retval.push_back( "???" );
|
retval.push_back( "???" );
|
||||||
|
@ -1457,6 +1493,26 @@ std::int32_t module_impl::get_order_pattern( std::int32_t o ) const {
|
||||||
}
|
}
|
||||||
return m_sndFile->Order()[o];
|
return m_sndFile->Order()[o];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool module_impl::is_order_skip_entry( std::int32_t order ) const {
|
||||||
|
if ( order < 0 || order >= m_sndFile->Order().GetLengthTailTrimmed() ) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return is_pattern_skip_item( m_sndFile->Order()[order] );
|
||||||
|
}
|
||||||
|
bool module_impl::is_pattern_skip_item( std::int32_t pattern ) {
|
||||||
|
return pattern == OpenMPT::PATTERNINDEX_SKIP;
|
||||||
|
}
|
||||||
|
bool module_impl::is_order_stop_entry( std::int32_t order ) const {
|
||||||
|
if ( order < 0 || order >= m_sndFile->Order().GetLengthTailTrimmed() ) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return is_pattern_stop_item( m_sndFile->Order()[order] );
|
||||||
|
}
|
||||||
|
bool module_impl::is_pattern_stop_item( std::int32_t pattern ) {
|
||||||
|
return pattern == OpenMPT::PATTERNINDEX_INVALID;
|
||||||
|
}
|
||||||
|
|
||||||
std::int32_t module_impl::get_pattern_num_rows( std::int32_t p ) const {
|
std::int32_t module_impl::get_pattern_num_rows( std::int32_t p ) const {
|
||||||
if ( !mpt::is_in_range( p, std::numeric_limits<OpenMPT::PATTERNINDEX>::min(), std::numeric_limits<OpenMPT::PATTERNINDEX>::max() ) || !m_sndFile->Patterns.IsValidPat( static_cast<OpenMPT::PATTERNINDEX>( p ) ) ) {
|
if ( !mpt::is_in_range( p, std::numeric_limits<OpenMPT::PATTERNINDEX>::min(), std::numeric_limits<OpenMPT::PATTERNINDEX>::max() ) || !m_sndFile->Patterns.IsValidPat( static_cast<OpenMPT::PATTERNINDEX>( p ) ) ) {
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1464,6 +1520,26 @@ std::int32_t module_impl::get_pattern_num_rows( std::int32_t p ) const {
|
||||||
return m_sndFile->Patterns[p].GetNumRows();
|
return m_sndFile->Patterns[p].GetNumRows();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::int32_t module_impl::get_pattern_rows_per_beat( std::int32_t p ) const {
|
||||||
|
if ( !mpt::is_in_range( p, std::numeric_limits<OpenMPT::PATTERNINDEX>::min(), std::numeric_limits<OpenMPT::PATTERNINDEX>::max() ) || !m_sndFile->Patterns.IsValidPat( static_cast<OpenMPT::PATTERNINDEX>( p ) ) ) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if ( m_sndFile->Patterns[p].GetOverrideSignature() ) {
|
||||||
|
return m_sndFile->Patterns[p].GetRowsPerBeat();
|
||||||
|
}
|
||||||
|
return m_sndFile->m_nDefaultRowsPerBeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
std::int32_t module_impl::get_pattern_rows_per_measure( std::int32_t p ) const {
|
||||||
|
if ( !mpt::is_in_range( p, std::numeric_limits<OpenMPT::PATTERNINDEX>::min(), std::numeric_limits<OpenMPT::PATTERNINDEX>::max() ) || !m_sndFile->Patterns.IsValidPat( static_cast<OpenMPT::PATTERNINDEX>( p ) ) ) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if ( m_sndFile->Patterns[p].GetOverrideSignature() ) {
|
||||||
|
return m_sndFile->Patterns[p].GetRowsPerMeasure();
|
||||||
|
}
|
||||||
|
return m_sndFile->m_nDefaultRowsPerMeasure;
|
||||||
|
}
|
||||||
|
|
||||||
std::uint8_t module_impl::get_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const {
|
std::uint8_t module_impl::get_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const {
|
||||||
if ( !mpt::is_in_range( p, std::numeric_limits<OpenMPT::PATTERNINDEX>::min(), std::numeric_limits<OpenMPT::PATTERNINDEX>::max() ) || !m_sndFile->Patterns.IsValidPat( static_cast<OpenMPT::PATTERNINDEX>( p ) ) ) {
|
if ( !mpt::is_in_range( p, std::numeric_limits<OpenMPT::PATTERNINDEX>::min(), std::numeric_limits<OpenMPT::PATTERNINDEX>::max() ) || !m_sndFile->Patterns.IsValidPat( static_cast<OpenMPT::PATTERNINDEX>( p ) ) ) {
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1539,7 +1615,7 @@ std::pair< std::string, std::string > module_impl::format_and_highlight_pattern_
|
||||||
break;
|
break;
|
||||||
case module::command_volumeffect:
|
case module::command_volumeffect:
|
||||||
return std::make_pair(
|
return std::make_pair(
|
||||||
cell.IsPcNote() ? std::string(" ") : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string( 1, m_sndFile->GetModSpecifications().GetVolEffectLetter( cell.volcmd ) ) : std::string(" ")
|
cell.IsPcNote() ? std::string(" ") : std::string( 1, OpenMPT::CModSpecifications::GetGenericVolEffectLetter( cell.volcmd ) )
|
||||||
,
|
,
|
||||||
cell.IsPcNote() ? std::string(" ") : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string("u") : std::string(" ")
|
cell.IsPcNote() ? std::string(" ") : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string("u") : std::string(" ")
|
||||||
);
|
);
|
||||||
|
@ -1605,7 +1681,7 @@ std::pair< std::string, std::string > module_impl::format_and_highlight_pattern_
|
||||||
high += cell.instr ? std::string("ii") : std::string("..");
|
high += cell.instr ? std::string("ii") : std::string("..");
|
||||||
}
|
}
|
||||||
if ( ( width == 0 ) || ( width >= 9 ) ) {
|
if ( ( width == 0 ) || ( width >= 9 ) ) {
|
||||||
text += cell.IsPcNote() ? std::string(" ") + OpenMPT::mpt::afmt::HEX0<2>( cell.GetValueVolCol() & 0xff ) : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string( 1, m_sndFile->GetModSpecifications().GetVolEffectLetter( cell.volcmd ) ) + OpenMPT::mpt::afmt::HEX0<2>( cell.vol ) : std::string(" ..");
|
text += cell.IsPcNote() ? std::string(" ") + OpenMPT::mpt::afmt::HEX0<2>( cell.GetValueVolCol() & 0xff ) : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string( 1, OpenMPT::CModSpecifications::GetGenericVolEffectLetter( cell.volcmd ) ) + OpenMPT::mpt::afmt::HEX0<2>( cell.vol ) : std::string(" ..");
|
||||||
high += cell.IsPcNote() ? std::string(" vv") : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string("uvv") : std::string(" ..");
|
high += cell.IsPcNote() ? std::string(" vv") : cell.volcmd != OpenMPT::VOLCMD_NONE ? std::string("uvv") : std::string(" ..");
|
||||||
}
|
}
|
||||||
if ( ( width == 0 ) || ( width >= 13 ) ) {
|
if ( ( width == 0 ) || ( width >= 13 ) ) {
|
||||||
|
|
|
@ -107,7 +107,9 @@ protected:
|
||||||
std::int32_t start_row;
|
std::int32_t start_row;
|
||||||
std::int32_t start_order;
|
std::int32_t start_order;
|
||||||
std::int32_t sequence;
|
std::int32_t sequence;
|
||||||
subsong_data( double duration, std::int32_t start_row, std::int32_t start_order, std::int32_t sequence );
|
std::int32_t restart_row;
|
||||||
|
std::int32_t restart_order;
|
||||||
|
subsong_data( double duration, std::int32_t start_row, std::int32_t start_order, std::int32_t sequence, std::int32_t restart_row, std::int32_t restart_order );
|
||||||
}; // struct subsong_data
|
}; // struct subsong_data
|
||||||
|
|
||||||
typedef std::vector<subsong_data> subsongs_type;
|
typedef std::vector<subsong_data> subsongs_type;
|
||||||
|
@ -198,9 +200,14 @@ public:
|
||||||
public:
|
public:
|
||||||
void select_subsong( std::int32_t subsong );
|
void select_subsong( std::int32_t subsong );
|
||||||
std::int32_t get_selected_subsong() const;
|
std::int32_t get_selected_subsong() const;
|
||||||
|
|
||||||
|
std::int32_t get_restart_order( std::int32_t subsong ) const;
|
||||||
|
std::int32_t get_restart_row( std::int32_t subsong ) const;
|
||||||
|
|
||||||
void set_repeat_count( std::int32_t repeat_count );
|
void set_repeat_count( std::int32_t repeat_count );
|
||||||
std::int32_t get_repeat_count() const;
|
std::int32_t get_repeat_count() const;
|
||||||
double get_duration_seconds() const;
|
double get_duration_seconds() const;
|
||||||
|
double get_time_at_position( std::int32_t order, std::int32_t row ) const;
|
||||||
double set_position_seconds( double seconds );
|
double set_position_seconds( double seconds );
|
||||||
double get_position_seconds() const;
|
double get_position_seconds() const;
|
||||||
double set_position_order_row( std::int32_t order, std::int32_t row );
|
double set_position_order_row( std::int32_t order, std::int32_t row );
|
||||||
|
@ -244,7 +251,13 @@ public:
|
||||||
std::vector<std::string> get_instrument_names() const;
|
std::vector<std::string> get_instrument_names() const;
|
||||||
std::vector<std::string> get_sample_names() const;
|
std::vector<std::string> get_sample_names() const;
|
||||||
std::int32_t get_order_pattern( std::int32_t o ) const;
|
std::int32_t get_order_pattern( std::int32_t o ) const;
|
||||||
|
bool is_order_skip_entry( std::int32_t order ) const;
|
||||||
|
static bool is_pattern_skip_item( std::int32_t pattern );
|
||||||
|
bool is_order_stop_entry( std::int32_t order ) const;
|
||||||
|
static bool is_pattern_stop_item( std::int32_t pattern );
|
||||||
std::int32_t get_pattern_num_rows( std::int32_t p ) const;
|
std::int32_t get_pattern_num_rows( std::int32_t p ) const;
|
||||||
|
std::int32_t get_pattern_rows_per_beat( std::int32_t pattern ) const;
|
||||||
|
std::int32_t get_pattern_rows_per_measure( std::int32_t pattern ) const;
|
||||||
std::uint8_t get_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const;
|
std::uint8_t get_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const;
|
||||||
std::string format_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const;
|
std::string format_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const;
|
||||||
std::string highlight_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const;
|
std::string highlight_pattern_row_channel_command( std::int32_t p, std::int32_t r, std::int32_t c, int cmd ) const;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue