mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-12-13 15:19:11 +00:00
* actions removal * removed qt dir # Conflicts: # src/qt_gui/check_update.cpp # src/qt_gui/translations/ar_SA.ts # src/qt_gui/translations/ca_ES.ts # src/qt_gui/translations/da_DK.ts # src/qt_gui/translations/de_DE.ts # src/qt_gui/translations/el_GR.ts # src/qt_gui/translations/en_US.ts # src/qt_gui/translations/es_ES.ts # src/qt_gui/translations/fa_IR.ts # src/qt_gui/translations/fi_FI.ts # src/qt_gui/translations/fr_FR.ts # src/qt_gui/translations/hu_HU.ts # src/qt_gui/translations/id_ID.ts # src/qt_gui/translations/it_IT.ts # src/qt_gui/translations/ja_JP.ts # src/qt_gui/translations/ko_KR.ts # src/qt_gui/translations/lt_LT.ts # src/qt_gui/translations/nb_NO.ts # src/qt_gui/translations/nl_NL.ts # src/qt_gui/translations/pl_PL.ts # src/qt_gui/translations/pt_BR.ts # src/qt_gui/translations/pt_PT.ts # src/qt_gui/translations/ro_RO.ts # src/qt_gui/translations/ru_RU.ts # src/qt_gui/translations/sl_SI.ts # src/qt_gui/translations/sq_AL.ts # src/qt_gui/translations/sr_CS.ts # src/qt_gui/translations/sv_SE.ts # src/qt_gui/translations/tr_TR.ts # src/qt_gui/translations/uk_UA.ts # src/qt_gui/translations/ur_PK.ts # src/qt_gui/translations/vi_VN.ts # src/qt_gui/translations/zh_CN.ts # src/qt_gui/translations/zh_TW.ts * removed CMakePresets for qt builds * clear cmakelists from qt * sync config file with qtlauncher * fixing review stuff * Remove Qt code from memory patcher and add non-Qt fallback for automatic loading of patches The second feature is disabled if IPC is present, to avoid conflicts with it. * Add json submodule * More Qt removal * Documentation update * fix build * fix REUSE? * removed qrc file * fix clang * Simplify Qt installation instructions for macOS Removed instructions for installing x86_64 Qt on ARM and x86_64 Macs. * Remove Qt installation instructions from guide Removed instructions for downloading and configuring Qt. --------- Co-authored-by: kalaposfos13 <153381648+kalaposfos13@users.noreply.github.com>
53 lines
1.3 KiB
C++
53 lines
1.3 KiB
C++
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
#include <cstring>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
#if defined(WIN32)
|
|
#define EXPORT __declspec(dllexport)
|
|
#else
|
|
#define EXPORT __attribute__((visibility("default")))
|
|
#endif
|
|
|
|
namespace MemoryPatcher {
|
|
|
|
extern EXPORT uintptr_t g_eboot_address;
|
|
extern uint64_t g_eboot_image_size;
|
|
extern std::string g_game_serial;
|
|
extern std::string patch_file;
|
|
|
|
enum PatchMask : uint8_t {
|
|
None,
|
|
Mask,
|
|
Mask_Jump32,
|
|
};
|
|
|
|
struct patchInfo {
|
|
std::string gameSerial;
|
|
std::string modNameStr;
|
|
std::string offsetStr;
|
|
std::string valueStr;
|
|
std::string targetStr;
|
|
std::string sizeStr;
|
|
bool isOffset;
|
|
bool littleEndian;
|
|
PatchMask patchMask;
|
|
int maskOffset;
|
|
};
|
|
|
|
std::string convertValueToHex(const std::string type, const std::string valueStr);
|
|
|
|
void OnGameLoaded();
|
|
void AddPatchToQueue(patchInfo patchToAdd);
|
|
|
|
void PatchMemory(std::string modNameStr, std::string offsetStr, std::string valueStr,
|
|
std::string targetStr, std::string sizeStr, bool isOffset, bool littleEndian,
|
|
PatchMask patchMask = PatchMask::None, int maskOffset = 0);
|
|
|
|
static std::vector<int32_t> PatternToByte(const std::string& pattern);
|
|
uintptr_t PatternScan(const std::string& signature);
|
|
|
|
} // namespace MemoryPatcher
|