diff --git a/pcsx2/CMakeLists.txt b/pcsx2/CMakeLists.txt index 47a3b83ccc..71bc59aa79 100644 --- a/pcsx2/CMakeLists.txt +++ b/pcsx2/CMakeLists.txt @@ -476,25 +476,54 @@ set(pcsx2RDebugHeaders RDebug/deci2_ttyp.h) # Recording sources +set(rec_src "Recording") +set(rec_vp_src "${rec_src}/VirtualPad") set(pcsx2RecordingSources - Recording/InputRecording.cpp - Recording/InputRecordingControls.cpp - Recording/InputRecordingFile.cpp - Recording/NewRecordingFrame.cpp - Recording/PadData.cpp - Recording/RecordingInputManager.cpp - Recording/VirtualPad.cpp + ${rec_src}/InputRecording.cpp + ${rec_src}/InputRecordingControls.cpp + ${rec_src}/InputRecordingFile.cpp + ${rec_src}/NewRecordingFrame.cpp + ${rec_src}/PadData.cpp + ${rec_vp_src}/VirtualPad.cpp + ${rec_vp_src}/VirtualPadData.cpp + ${rec_vp_src}/VirtualPadResources.cpp ) # Recording headers set(pcsx2RecordingHeaders - Recording/InputRecording.h - Recording/InputRecordingControls.h - Recording/InputRecordingFile.h - Recording/NewRecordingFrame.h - Recording/PadData.h - Recording/RecordingInputManager.h - Recording/VirtualPad.h + ${rec_src}/InputRecording.h + ${rec_src}/InputRecordingControls.h + ${rec_src}/InputRecordingFile.h + ${rec_src}/NewRecordingFrame.h + ${rec_src}/PadData.h + ${rec_vp_src}/VirtualPad.h + ${rec_vp_src}/VirtualPadData.h + ${rec_vp_src}/VirtualPadResources.h +) + +# Warning: the declaration of the .h are mandatory in case of resources files. It will ensure the creation +# from the bin2cpp tools at the good moment (ie .h must be created before the pcsx2 compilation) +# Recording - VirtualPad resources headers +set(res_rec_vp_bin "${CMAKE_BINARY_DIR}/pcsx2/Recording/VirtualPad/img") +set(res_rec_vp_src "${CMAKE_SOURCE_DIR}/pcsx2/Recording/VirtualPad/img") +set(pcsx2RecordingVirtualPadResources + ${res_rec_vp_bin}/circlePressed.h + ${res_rec_vp_bin}/controller.h + ${res_rec_vp_bin}/crossPressed.h + ${res_rec_vp_bin}/downPressed.h + ${res_rec_vp_bin}/l1Pressed.h + ${res_rec_vp_bin}/l2Pressed.h + ${res_rec_vp_bin}/l3Pressed.h + ${res_rec_vp_bin}/leftPressed.h + ${res_rec_vp_bin}/r1Pressed.h + ${res_rec_vp_bin}/r2Pressed.h + ${res_rec_vp_bin}/r3Pressed.h + ${res_rec_vp_bin}/rightPressed.h + ${res_rec_vp_bin}/selectPressed.h + ${res_rec_vp_bin}/squarePressed.h + ${res_rec_vp_bin}/startPressed.h + ${res_rec_vp_bin}/trianglePressed.h + ${res_rec_vp_bin}/upPressed.h ) # System sources @@ -631,6 +660,7 @@ set(Common ${pcsx2ps2Headers} ${pcsx2RecordingSources} ${pcsx2RecordingHeaders} + ${pcsx2RecordingVirtualPadResources} ${pcsx2SystemSources} ${pcsx2SystemHeaders} ${pcsx2UtilitiesSources} @@ -728,6 +758,15 @@ foreach(res_file IN ITEMS add_custom_command(OUTPUT "${res_bin}/${res_file}.h" COMMAND perl ${CMAKE_SOURCE_DIR}/linux_various/hex2h.pl "${res_src}/${res_file}.png" "${res_bin}/${res_file}" ) endforeach() +### Generate Recording resource files +file(MAKE_DIRECTORY ${res_rec_vp_bin}) + +foreach(res_file IN ITEMS + circlePressed controller crossPressed downPressed l1Pressed l2Pressed l3Pressed leftPressed + r1Pressed r2Pressed r3Pressed rightPressed selectPressed squarePressed startPressed trianglePressed upPressed) + add_custom_command(OUTPUT "${res_rec_vp_bin}/${res_file}.h" COMMAND perl ${CMAKE_SOURCE_DIR}/linux_various/hex2h.pl "${res_rec_vp_src}/${res_file}.png" "${res_rec_vp_bin}/${res_file}" ) +endforeach() + if(USE_VTUNE) set(pcsx2FinalLibs ${pcsx2FinalLibs} ${VTUNE_LIBRARIES}) endif() @@ -776,4 +815,4 @@ if(dev9ghzdrk) else() install(CODE "execute_process(COMMAND /bin/bash -c \"echo 'Enabling networking capability on Linux...';set -x; [ -f ${CMAKE_SOURCE_DIR}/bin/${Output} ] && sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' ${CMAKE_SOURCE_DIR}/bin/${Output}; set +x\")") endif() -endif() +endif() \ No newline at end of file diff --git a/pcsx2/Recording/InputRecording.cpp b/pcsx2/Recording/InputRecording.cpp index cfb2ea06de..a179e90049 100644 --- a/pcsx2/Recording/InputRecording.cpp +++ b/pcsx2/Recording/InputRecording.cpp @@ -15,6 +15,8 @@ #include "PrecompiledHeader.h" +#ifndef DISABLE_RECORDING + #include #include "AppSaveStates.h" diff --git a/pcsx2/Recording/PadData.cpp b/pcsx2/Recording/PadData.cpp index cb70bfec93..225cc7b184 100644 --- a/pcsx2/Recording/PadData.cpp +++ b/pcsx2/Recording/PadData.cpp @@ -15,6 +15,8 @@ #include "PrecompiledHeader.h" +#ifndef DISABLE_RECORDING + #include "DebugTools/Debug.h" #include "Recording/PadData.h" diff --git a/pcsx2/Recording/VirtualPad/VirtualPad.cpp b/pcsx2/Recording/VirtualPad/VirtualPad.cpp index 19a9120b92..729fd5b15c 100644 --- a/pcsx2/Recording/VirtualPad/VirtualPad.cpp +++ b/pcsx2/Recording/VirtualPad/VirtualPad.cpp @@ -15,6 +15,8 @@ #include "PrecompiledHeader.h" +#ifndef DISABLE_RECORDING + #include #include "App.h" @@ -244,13 +246,13 @@ void VirtualPad::enablePadElements(bool enable) void VirtualPad::SetReadOnlyMode() { - enablePadElements(true); + enablePadElements(false); readOnlyMode = true; } void VirtualPad::ClearReadOnlyMode() { - enablePadElements(false); + enablePadElements(true); readOnlyMode = false; } diff --git a/pcsx2/Recording/VirtualPad/VirtualPadData.cpp b/pcsx2/Recording/VirtualPad/VirtualPadData.cpp index b946275655..0c8f50de6a 100644 --- a/pcsx2/Recording/VirtualPad/VirtualPadData.cpp +++ b/pcsx2/Recording/VirtualPad/VirtualPadData.cpp @@ -15,6 +15,8 @@ #include "PrecompiledHeader.h" +#ifndef DISABLE_RECORDING + #include "Recording/VirtualPad/VirtualPadData.h" bool VirtualPadData::UpdateVirtualPadData(u16 bufIndex, PadData *padData, bool ignoreRealController, bool readOnly) diff --git a/pcsx2/Recording/VirtualPad/VirtualPadResources.cpp b/pcsx2/Recording/VirtualPad/VirtualPadResources.cpp index d9a6360cf9..5486dcde69 100644 --- a/pcsx2/Recording/VirtualPad/VirtualPadResources.cpp +++ b/pcsx2/Recording/VirtualPad/VirtualPadResources.cpp @@ -15,6 +15,8 @@ #include "PrecompiledHeader.h" +#ifndef DISABLE_RECORDING + #include #include "Recording/VirtualPad/VirtualPadResources.h"