fpPS4-Temmie-s-Launcher/App/index.htm
2024-02-25 23:21:12 -03:00

467 lines
20 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>fpPS4 Temmie's Launcher - Loading...</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" id="stylesheet" type="text/css" href="css/style.css">
<link rel="shortcut icon" type="image/png" href="img/logo.png" sizes="551x547"/>
</head>
<body>
<!-- fpPS4 Updater -->
<div class="DIV_FPPS4_UPDATER" id="DIV_FPPS4_UPDATER">
<!-- GUI Design -->
<div class="DIV_DESIGN_LINES LINE_TOP"></div>
<div class="DIV_DESIGN_LINES LINE_BOTTOM"></div>
<!-- Status -->
<label class="LABEL_FLEX_MARGIN">
<label id="LABEL_FPPS4_UPDATER_STATUS_LANG">Status</label>:
</label>
<label id="LABEL_FPPS4_UPDATER_STATUS">???</label>
<!-- Progressbar -->
<div class="DIV_PROGRESSBAR">
<div class="DIV_PROGRESSBAR_INTERNAL" id="DIV_PROGRESSBAR_UPDATE_FPPS4"></div>
</div>
</div>
<!-- Launcher Settings -->
<div class="DIV_SETTINGS_HOLDER" id="DIV_SETTINGS">
<div class="DIV_SETTINGS">
<div class="DIV_TITLE" id="DIV_SETTINGS_TITLE">Launcher Settings</div>
<!-- BG -->
<div class="DIV_SETTINGS_BG"></div>
<!-- Settings List -->
<div class="DIV_SETTINGS_LIST">
<!-- General -->
<div class="DIV_settingsH2" id="DIV_SETTINGS_GENERAL">General</div>
<div class="DIV_settingsEntry">
<div class="DIV_settingsEntryFlex">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_GUI_ZOOM_SCALE">
Interface zoom scale:
</label>
<input type="range" min="1" max="1.5" step="0.01" value="1" id="RANGE_settingsGuiZoomScale" onmouseup="APP.design.renderSettings(!0);" onkeyup="APP.design.renderSettings(!0);">
</div>
<i>(<label id="LABEL_SETTINGS_GUI_ZOOM_SCALE_INFO">
Warning: It's not recommended changing this setting if your screen res. is lower than <code>1920x1080</code>
</label>)</i>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsStartEmuFullscreen">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_START_EMU_FULLSCREEN" onclick="APP.tools.processCheckbox('CHECKBOX_settingsStartEmuFullscreen');">
Start fpPS4 in fullscreen mode
</label>
</div>
<div class="SEPARATOR_00"></div>
<!-- Language -->
<div class="DIV_settingsH2" id="DIV_SETTINGS_LANGUAGE">Language</div>
<div class="DIV_settingsEntry">
<label id="LABEL_SETTINGS_CURRENT_LANGUAGE">Current Language</label>:
<select id="SELECT_settingsLanguage" class="SELECT_settings">
<!-- Language goes here -->
</select><br>
(<label id="LABEL_SETTINGS_LANGUAGE_RESTART">You must restart launcher to take effect</label>)
</div>
<div class="SEPARATOR_00"></div>
<!-- Paths -->
<div class="DIV_settingsH2" id="DIV_SETTINGS_PATHS">Paths</div>
<div class="DIV_settingsEntry">
<label id="LABEL_SETTINGS_APP_GAMES_PATH">App / Games Path</label>:
<label id="LBL_SETTINGS_gamePath" class="LABEL_settingsPath">???</label>
<input type="button" class="BTN_selectPath" id="BTN_SETTINGS_SELECT_APPS_GAMES_PATH" value="Select path" onclick="APP.settings.selectPath({
settings: 'gamePath',
label: 'LBL_SETTINGS_gamePath'
});">
<input type="button" class="BTN_selectPath" id="BTN_SETTINGS_OPEN_APPS_GAMES_PATH" value="Open folder" onclick="APP.fileManager.openDir(APP.settings.data.gamePath);">
</div>
<div class="DIV_settingsEntry">
<label id="LABEL_SETTINGS_FPPS4_PATH">fpPS4 Path</label>:
<label id="LBL_SETTINGS_emuPath" class="LABEL_settingsPath">???</label>
<input type="button" class="BTN_selectPath" id="BTN_SETTINGS_SELECT_FPPS4_PATH" value="Select File" onclick="APP.settings.selectFile({
extension: '.exe',
settings: 'emuPath',
label: 'LBL_SETTINGS_emuPath'
});">
</div>
<!-- Game List -->
<div class="SEPARATOR_00"></div>
<div class="DIV_settingsH2" id="DIV_SETTINGS_GAME_LIST">Game List</div>
<div class="DIV_settingsEntry">
<label id="LABEL_SETTINGS_GAME_SEARCH_MODE">Game search mode</label>:
<select id="SELECT_settingsSearchMode" class="SELECT_settings">
<option value="appName">Name</option>
<option value="titleId">Title ID</option>
</select>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<label id="LABEL_SETTINGS_GAME_LIST_BACKGROUND_BLUR">Background Blur</label>:
<input type="range" min="0" max="6" step="0.01" value="2" id="RANGE_settingsGameListBgBlur" onmouseup="APP.design.renderSettings(!0);" onkeyup="APP.design.renderSettings(!0);">
<label id="LABEL_settingsGameListBgBlur">???</label>%
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex" id="DIV_settingsGridBorderRadius">
<label id="LABEL_SETTINGS_GRID_BORDER_RADIUS">(Grid) Border-Radius</label>:
<input type="range" min="0" max="15" step="0.1" value="8" id="RANGE_settingsGridIconBorderRadius" onmouseup="APP.design.renderSettings(!0);" onkeyup="APP.design.renderSettings(!0);">
<label id="LABEL_settingsGridBorderRadius">???</label>%
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<label id="LABEL_SETTINGS_GAME_LIST_BACKGROUND_OPACITY">Background Opacity</label>:
<input type="range" min="0" max="1" step="0.01" value="0.6" id="RANGE_settingsGameListBgOpacity" onmouseup="APP.design.renderSettings(!0);" onkeyup="APP.design.renderSettings(!0);">
<label id="LABEL_settingsGameListBgOpacity">???</label>%
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsGameSearchCaseSensitive">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_GAME_LIST_SEARCH_CASE_SENSITIVE" onclick="APP.tools.processCheckbox('CHECKBOX_settingsGameSearchCaseSensitive');">
Enable case-sentitive search on game list
</label>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex" id="DIV_settingsShowBgOnGameEntry">
<input type="checkbox" id="CHECKBOX_settingsShowBgOnGameEntry">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_GAME_LIST_NORMAL_SHOW_BG" onclick="APP.tools.processCheckbox('CHECKBOX_settingsShowBgOnGameEntry');">
Show background image for every game entry on list
</label>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsShowExecList">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_SHOW_METADATA_GAME_ENTRY" onclick="APP.tools.processCheckbox('CHECKBOX_settingsShowExecList');">
Show app / game metadata (or executable path) for every title in game list
</label>
</div>
<!-- Emu running -->
<div class="SEPARATOR_00"></div>
<div class="DIV_settingsH2" id="DIV_SETTINGS_EMU_RUNNING">Emu Running</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<label id="LABEL_SETTINGS_EMU_RUNNING_BACKGROUND_BLUR">Background Blur</label>:
<input type="range" min="0" max="6" step="0.01" value="6" id="RANGE_settingsEmuRunningBgBlur" onmouseup="APP.design.renderSettings(!0);" onkeyup="APP.design.renderSettings(!0);">
<label id="LABEL_settingsEmuRunningBgBlur">???</label>%
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<label id="LABEL_SETTINGS_EMU_RUNNING_BACKGROUND_OPACITY">Background Opacity</label>:
<input type="range" min="0" max="1" step="0.01" value="0.7" id="RANGE_settingsEmuRunningBgOpacity" onmouseup="APP.design.renderSettings(!0);" onkeyup="APP.design. renderSettings(!0);">
<label id="LABEL_settingsEmuRunningBgOpacity">???</label>%
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsShowGameMetadata">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_SHOW_METADATA_GUI" onclick="APP.tools.processCheckbox('CHECKBOX_settingsShowGameMetadata');">
Display icon / name GUI while fpPS4 is running
</label>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsShowExecRunning">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_SHOW_METADATA_EMU_RUNNING" onclick="APP.tools.processCheckbox('CHECKBOX_settingsShowExecRunning');">
Display app / game metadata (or executable path) below game title
</label>
</div>
<!-- Log options -->
<div class="SEPARATOR_00"></div>
<div class="DIV_settingsH2" id="DIV_SETTINGS_LOG_OPTIONS">Log Options</div>
<div class="DIV_settingsEntry">
<label id="LABEL_SETTINGS_LOG_START_WINDOW_STATE">Start console window</label>:
<select id="SELECT_settingsStartExternalWindow" class="SELECT_settings" onchange="APP.design.updateLauncherSettingsGUI();">
<option value="normal">Normal</option>
<option value="max">Maximized</option>
<option value="min">Minimized</option>
</select>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsExternalWindowPrompt">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_PROMPT_KEY_FPPS4_CLOSES" onclick="APP.tools.processCheckbox('CHECKBOX_settingsExternalWindowPrompt');">
Prompt user to press any key when fpPS4 closes
</label>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsExperimentalIntLog">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_EXPERIMENTAL_FPPS4_INTERNAL_LOG" onclick="APP.tools.processCheckbox('CHECKBOX_settingsExperimentalIntLog');">
<label class="LABEL_settingsExperimental">EXPERIMENTAL</label> Log fpPS4 process output (<code>stdout</code> and <code>stderr</code>) on intenal log (Press F12 --> Console)
</label>
</div>
<!-- fpPS4 Updater -->
<div class="SEPARATOR_00"></div>
<div class="DIV_settingsH2" id="DIV_SETTINGS_FPPS4_UPDATER">fpPS4 Updater</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsEnableFpps4Updates">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_ENABLE_LAUNCHER_FPPS4_UPDATES" onclick="APP.tools.processCheckbox('CHECKBOX_settingsEnableFpps4Updates');">
Enable fpPS4 updater
</label>
</div>
<!-- Selected CI -->
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<label id="LABEL_SETTINGS_UPDATER_SELECTED_CI">Current workflow</label>:
<select id="SELECT_settingsUpdaterCurrentCI" class="SELECT_settings">
<!-- Workflow list goes here -->
</select>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_FPPS4_UPDATE_BRANCH">
Search updates from branch
</label>:
<input type="text" placeholder="main, trunk, kern..." class="SETTINGS_TEXT" id="INPUT_settingsUpdateFpps4Branch">
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="button" class="SELECT_settings" id="BTN_SETTINGS_FORCE_FPPS4_UPDATE" value="Force fpPS4 update" onclick="APP.emuManager.update.check({forceUpdate: !0, silent: !0});">
</div>
<!-- Misc. -->
<div class="SEPARATOR_00"></div>
<div class="DIV_settingsH2" id="DIV_SETTINGS_MISC">Misc.</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="checkbox" id="CHECKBOX_settingsEnableParamSfo">
<label class="LABEL_checkbox" id="LABEL_SETTINGS_ENABLE_PARAMSFO_SUPPORT" onclick="APP.tools.processCheckbox('CHECKBOX_settingsEnableParamSfo');">
Enable <code>PARAM.SFO</code> support <i>(Click on "Delete all game settings" and restart launcher to take effect)</i>
</label>
</div>
<div class="DIV_settingsEntry DIV_settingsEntryFlex">
<input type="button" class="SELECT_settings" id="BTN_SETTINGS_DELETE_ALL_GAME_SETTINGS" value="Delete all game settings" onclick="APP.settings.resetAllGameSettings();">
<input type="button" class="SELECT_settings" id="BTN_SETTINGS_RESTART_LAUNCHER" value="Restart launcher" onclick="chrome.runtime.reload();">
</div>
</div>
<!-- Save & Exit Buttons -->
<div class="DIV_settingsSave">
<input type="button" class="BTN_SAVE" id="BTN_SETTINGS_APPLY_CLOSE" onclick="APP.design.saveSettings();" value="Apply & Close">
<input type="button" class="BTN_SAVE" id="BTN_SETTINGS_CLOSE" onclick="APP.design.toggleSettings(!0);" value="Close">
</div>
</div>
</div>
<!-- Top Menu -->
<div class="DIV_ACTIONS" id="DIV_ACTIONS">
<!-- Search -->
<input type="text" class="INPUT_gameListSearch" id="INPUT_gameListSearch" placeholder="Search: Insert game name..." oninput="APP.gameList.search();">
<!-- Display modes -->
<input type="button" onclick="APP.settings.setDisplayMode('normal');" class="BTN_displayMode BTN_displayMode_normal" id="BTN_displayMode_normal">
<input type="button" onclick="APP.settings.setDisplayMode('compact');" class="BTN_displayMode BTN_displayMode_compact" id="BTN_displayMode_compact">
<input type="button" onclick="APP.settings.setDisplayMode('grid');" class="BTN_displayMode BTN_displayMode_grid" id="BTN_displayMode_grid">
<!-- Grid icon size -->
<input type="range" min="92.93" max="512" step="0.01" value="116" id="RANGE_settingsGridIconSize" oninput="APP.design.renderSettings(!0);APP.design.renderGameList({displayLog: !1});">
<!-- Actions -->
<input type="button" class="BTN_actions" id="BTN_REFRESH" onclick="APP.gameList.load();" value="Refresh game list">
<input type="button" class="BTN_actions" id="BTN_SETTINGS" onclick="APP.design.toggleSettings();" value="Settings">
<input type="button" class="BTN_actions" id="BTN_CLEAR_LOG" onclick="APP.clearLog();" value="Clear Log">
<input type="button" class="BTN_actions" id="BTN_UPDATE_FPPS4" onclick="APP.emuManager.update.check();" value="Update fpPS4" disabled="disabled">
<input type="button" class="BTN_actions" id="BTN_ABOUT" onclick="APP.about();" value="About">
<input type="button" class="BTN_STOP" id="BTN_KILL" onclick="APP.emuManager.killEmu();" disabled="disabled" value="Stop fpPS4">
</div>
<!-- Game list background image -->
<div id="DIV_GAMELIST_BG" class="DIV_GAMELIST_BG"></div>
<!-- fpPS4 Options -->
<div class="DIV_OPTIONS" id="DIV_OPTIONS">
<div class="DIV_TITLE">
<label id="LABEL_FPPS4_OPTIONS">
<label class="LABEL_emuColor">fp</label>PS4 Options
</label>
</div>
<!-- Game Options -->
<div class="DIV_GAME_OPTIONS">
<!-- Game name -->
<div class="DIV_labelSelectedGame" id="DIV_labelSelectedGame">
No game selected
</div>
<!-- App / Game Version -->
<div class="DIV_labelSelectedGame" id="DIV_FPPS4_OPTIONS_APP_VERSION">
<label id="LABEL_FPPS4_OPTIONS_APP_VERSION">Version</label>: <label id="LABEL_FPPS4_OPTIONS_APP_VER">???</label>
</div>
<!-- Dump Status -->
<div class="DIV_labelSelectedGame">
<label id="LABEL_FPPS4_OPTIONS_DUMP_STATUS">Dump status</label>: <div class="DIV_selectedGameStatus" id="DIV_selectedGameStatus_dump"></div>
</div>
<!-- fpPS4 Compat Status -->
<div class="DIV_labelSelectedGame" id="DIV_FPPS4_GAME_STATUS">
<label id="LABEL_FPPS4_OPTIONS_GAME_STATUS">Compat status</label>: <div class="DIV_selectedGameStatus" id="DIV_selectedGameStatus_compat"></div>
</div>
<!-- Hack List -->
<div class="DIV_launcherOptionsTitle" id="LABEL_FPPS4_OPTIONS_HACKS">Hacks</div>
<div class="DIV_HACK_LIST" id="DIV_HACK_LIST">
<!-- Hacks goes here -->
</div>
<!-- Patch options -->
<input type="checkbox" id="CHECKBOX_optionsEnablePatch" oninput="APP.gameList.saveGameSettings(!0);APP.design.update();">
<label class="LABEL_checkbox" id="LABEL_FPPS4_OPTIONS_ENABLE_PATCHES" onclick="APP.gameList.toggleGamePatch();"> Enable game patch</label>
<div class="DIV_launcherOptions" id="DIV_launcherOptionsPatchVersion">
<input type="button" id="BTN_FPPS4_OPTIONS_SELECT_PATCH_LOCATION" class="BTN_launcherOptions" value="Select patch location" onclick="APP.gameList.loadGamePatch();">
<!-- Patch details -->
<div class="DIV_launcherOptionsPatchVersionMetadata" id="DIV_launcherOptionsPatchVersionMetadata">
<div class="DIV_launcherOptions">
<label id="LABEL_FPPS4_OPTIONS_PATCH_VERSION">Version</label>: <label id="LABEL_launcherOptionsPatchVersion">Unknown</label><br>
<label id="LABEL_FPPS4_OPTIONS_PATCH_TYPE">Type</label>: <label id="LABEL_launcherOptionsPatchType">Unknown</label>
</div>
</div>
</div>
<!-- Misc. Options -->
<div class="DIV_launcherOptions">
<div class="DIV_launcherOptionsTitle" id="LABEL_FPPS4_OPTIONS_MISC">
Misc. Options
</div>
<!-- Select gamepad mode -->
<label class="LABEL_checkbox" id="LABEL_FPPS4_OPTIONS_SELECT_GAMEPAD_MODE">Select gamepad mode:</label><br>
<select class="SELECT_settings" id="FPPS4_OPTIONS_SELECT_GAMEPAD_MODE" onchange="APP.gameList.saveGameSettings(!0);APP.gameList.checkSdl2();APP.design.update();">
<option value="xinput">xinput</option>
<option value="sdl2">sdl2</option>
<option value="keyboard">Keyboard</option>
</select>
</div>
<!-- Launcher Options -->
<div class="DIV_launcherOptions">
<div class="DIV_launcherOptionsTitle" id="LABEL_FPPS4_OPTIONS_LAUNCHER_OPTIONS">
Launcher Options
</div>
<input type="button" class="BTN_launcherOptions" id="BTN_FPPS4_OPTIONS_OPEN_APP_LOCATION" value="Open App / Game location" onclick="APP.gameList.openGameLocation();">
<input type="button" class="BTN_launcherOptions" id="BTN_FPPS4_OPTIONS_RESET_SETTINGS" value="Reset settings file" onclick="APP.gameList.resetGameSettings();">
<input type="button" class="BTN_launcherOptions" id="BTN_launcherOptionsExportMetadata" value="Export metadata" onclick="APP.gameList.exportGameMetadata();" disabled="disabled">
</div>
</div>
<!-- Run fpPS4 -->
<div class="DIV_RUN_BTN">
<input type="button" class="BTN_RUN" id="BTN_RUN" onclick="APP.emuManager.runGame();" disabled="disabled" value="Run fpPS4">
</div>
</div>
<!-- Game List -->
<div class="DIV_LIST" id="DIV_LIST">
<!-- List -->
<div class="DIV_LIST_INTERNAL" id="DIV_LIST_INTERNAL">
<!-- Games goes here -->
</div>
<!-- Game details -->
<div class="DIV_GAME_DETAILS" id="DIV_GAME_DETAILS">
<img id="IMG_APP_ICON" class="IMG_APP_ICON">
<div class="DIV_GAME_DETAILS_LABELS">
<div id="LABEL_GAME_DETAILS_APP_NAME" class="LABEL_detailsGameName">
???
</div>
<div id="DIV_GAME_DETAILS_currentExec">
<!-- Game metadata goes here -->
</div>
<label id="LABEL_EMU_RUNNING_STATUS">Status</label>: <label id="LABEL_GAME_DETAILS_STATUS">???</label>
</div>
</div>
</div>
<!-- Log -->
<div class="DIV_LOG" id="DIV_LOG">
<textarea class="APP_LOG" id="APP_LOG" disabled="disabled"></textarea>
</div>
<!-- Hidden Stuff -->
<div class="none" id="SCRIPT_LOADER">
<!-- Extra CSS -->
<div class="none" id="DIV_EXTRA_CSS">
<!-- Extra CSS will be placed here -->
</div>
<!-- Folder loader -->
<input type="file" id="APP_FILE_LOADER"/>
<input type="file" id="APP_FILE_SAVE" nwsaveas/>
<input type="file" id="APP_FOLDER_LOADER" nwdirectory/>
<!-- Scripts -->
<script type="text/javascript" src="js/TMS.js"></script>
<script type="text/javascript" src="js/language.js"></script>
<script type="text/javascript" src="js/tools.js"></script>
<script type="text/javascript" src="js/filemanager.js"></script>
<script type="text/javascript" src="js/paramSfoDatabase.js"></script>
<script type="text/javascript" src="js/paramSfoParser.js"></script>
<script type="text/javascript" src="js/gamelist.js"></script>
<script type="text/javascript" src="js/settings.js"></script>
<script type="text/javascript" src="js/updateEmu.js"></script>
<script type="text/javascript" src="js/emumanager.js"></script>
<script type="text/javascript" src="js/design.js"></script>
<script type="text/javascript" src="js/main.js"></script>
</div>
</body>
</html>