Files
ppsspp/UI/CMakeLists.txt
Henrik RydgårdandClaude Opus 5 57e96b2d81 Add a PSP Firmware screen under Settings > Tools
Shows what's actually in PSP/NAND - nothing, a fonts-only partial install, or
a full firmware with its version, build date and region - read from
flash0:/vsh/etc/version.txt, which is present both in a PSAR-unpacked install
and a NAND dumped off hardware.

Also offers to install an updater, erase the NAND, and launch the XMB, the
last one gated on FirmwareVersionSupportsVSH() since the module patches that
get vshmain.prx running are tied to 6.61's offsets.

Installing a firmware now erases flash0/flash1/ipl first - two firmwares can't
be merged, a file the new one doesn't have would linger and still get loaded.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-09 12:07:28 -06:00

132 lines
2.8 KiB
CMake

set(UISource)
if(NOT LIBRETRO)
list(APPEND UISource
AudioCommon.h
AudioCommon.cpp
)
endif()
list(APPEND UISource
ImDebugger/ImDebugger.cpp
ImDebugger/ImDebugger.h
ImDebugger/ImGe.cpp
ImDebugger/ImGe.h
ImDebugger/ImConsole.cpp
ImDebugger/ImConsole.h
ImDebugger/ImDisasmView.cpp
ImDebugger/ImDisasmView.h
ImDebugger/ImMemView.cpp
ImDebugger/ImMemView.h
ImDebugger/ImStructViewer.cpp
ImDebugger/ImStructViewer.h
ImDebugger/ImJitViewer.cpp
ImDebugger/ImJitViewer.h
DiscordIntegration.cpp
NativeApp.cpp
AdhocServerScreen.h
AdhocServerScreen.cpp
BackgroundAudio.h
BackgroundAudio.cpp
Background.h
Background.cpp
ChatScreen.h
ChatScreen.cpp
BaseScreens.h
BaseScreens.cpp
DebugOverlay.cpp
DebugOverlay.h
DevScreens.cpp
DevScreens.h
DisplayLayoutScreen.cpp
DisplayLayoutScreen.h
EmuScreen.h
EmuScreen.cpp
GameInfoCache.h
GameInfoCache.cpp
IAPScreen.cpp
IAPScreen.h
MainScreen.h
MainScreen.cpp
GameBrowser.h
GameBrowser.cpp
MiscScreens.h
MiscScreens.cpp
MiscViews.h
MiscViews.cpp
PauseScreen.h
PauseScreen.cpp
SimpleDialogScreen.h
SimpleDialogScreen.cpp
TabbedDialogScreen.h
TabbedDialogScreen.cpp
GameScreen.h
GameScreen.cpp
GameSettingsScreen.h
GameSettingsScreen.cpp
DeveloperToolsScreen.h
DeveloperToolsScreen.cpp
DriverManagerScreen.h
DriverManagerScreen.cpp
GPUDriverTestScreen.h
GPUDriverTestScreen.cpp
TiltAnalogSettingsScreen.h
TiltAnalogSettingsScreen.cpp
TouchControlLayoutScreen.h
TouchControlLayoutScreen.cpp
TouchControlVisibilityScreen.h
TouchControlVisibilityScreen.cpp
GamepadEmu.h
GamepadEmu.cpp
JoystickHistoryView.h
JoystickHistoryView.cpp
LoadStateConfirmScreen.h
LoadStateConfirmScreen.cpp
OnScreenDisplay.h
OnScreenDisplay.cpp
ControlMappingScreen.h
ControlMappingScreen.cpp
RemoteISOScreen.h
RemoteISOScreen.cpp
ReportScreen.h
ReportScreen.cpp
SavedataScreen.h
SavedataScreen.cpp
SystemInfoScreen.h
SystemInfoScreen.cpp
Store.h
Store.cpp
UploadScreen.h
UploadScreen.cpp
CwCheatScreen.h
CwCheatScreen.cpp
FirmwareScreen.h
FirmwareScreen.cpp
InstallUpdateScreen.h
InstallUpdateScreen.cpp
InstallZipScreen.h
InstallZipScreen.cpp
InstallPkgScreen.h
InstallPkgScreen.cpp
JitCompareScreen.h
JitCompareScreen.cpp
MemStickScreen.h
MemStickScreen.cpp
ProfilerDraw.h
ProfilerDraw.cpp
CustomButtonMappingScreen.h
CustomButtonMappingScreen.cpp
Theme.h
Theme.cpp
UIAtlas.h
UIAtlas.cpp
RetroAchievementScreens.cpp
RetroAchievementScreens.h
)
# Headless and unit test builds never link this - they don't have a UI to show. See the
# comment above add_subdirectory(UI) in the root CMakeLists.txt for why USE_DISCORD=1 has
# to be defined before this add_subdirectory() call rather than in here.
add_library(ppsspp_ui STATIC ${UISource})
target_link_libraries(ppsspp_ui Common Core)
setup_target_project(ppsspp_ui UI)