#include "stdafx.h" #ifdef USE_VULKAN_RENDERER #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-parameter" extern "C" void AppleInput_HandleChar(unsigned int) {} extern "C" void AppleInput_HandleKey(int, int) {} C_4JInput InputManager; static unsigned int g_stubJoypadMaps[8][256] = {}; static unsigned char g_stubJoypadMapVals[XUSER_MAX_COUNT] = {}; static unsigned int g_stubAxisMaps[XUSER_MAX_COUNT][4] = {}; static unsigned int g_stubTriggerMaps[XUSER_MAX_COUNT][2] = {}; void C_4JInput::Initialise(int iInputStateC, unsigned char ucMapC, unsigned char ucActionC, unsigned char ucMenuActionC) { for (int map = 0; map < 8; ++map) { for (int action = 0; action < 256; ++action) { g_stubJoypadMaps[map][action] = 0; } } for (int iPad = 0; iPad < XUSER_MAX_COUNT; ++iPad) { g_stubJoypadMapVals[iPad] = 0; g_stubAxisMaps[iPad][AXIS_MAP_LX] = AXIS_MAP_LX; g_stubAxisMaps[iPad][AXIS_MAP_LY] = AXIS_MAP_LY; g_stubAxisMaps[iPad][AXIS_MAP_RX] = AXIS_MAP_RX; g_stubAxisMaps[iPad][AXIS_MAP_RY] = AXIS_MAP_RY; g_stubTriggerMaps[iPad][TRIGGER_MAP_0] = TRIGGER_MAP_0; g_stubTriggerMaps[iPad][TRIGGER_MAP_1] = TRIGGER_MAP_1; } } void C_4JInput::Tick(void) {} void C_4JInput::SetDeadzoneAndMovementRange(unsigned int uiDeadzone, unsigned int uiMovementRangeMax) {} void C_4JInput::SetGameJoypadMaps(unsigned char ucMap, unsigned char ucAction, unsigned int uiActionVal) { if (ucMap >= 8) return; g_stubJoypadMaps[ucMap][ucAction] = uiActionVal; } unsigned int C_4JInput::GetGameJoypadMaps(unsigned char ucMap, unsigned char ucAction) { if (ucMap >= 8) return 0; return g_stubJoypadMaps[ucMap][ucAction]; } void C_4JInput::SetJoypadMapVal(int iPad, unsigned char ucMap) { if (iPad < 0 || iPad >= XUSER_MAX_COUNT) return; g_stubJoypadMapVals[iPad] = ucMap; } unsigned char C_4JInput::GetJoypadMapVal(int iPad) { if (iPad < 0 || iPad >= XUSER_MAX_COUNT) return 0; return g_stubJoypadMapVals[iPad]; } void C_4JInput::SetJoypadSensitivity(int iPad, float fSensitivity) {} unsigned int C_4JInput::GetValue(int iPad, unsigned char ucAction, bool bRepeat) { return 0; } bool C_4JInput::ButtonPressed(int iPad, unsigned char ucAction) { return false; } bool C_4JInput::ButtonReleased(int iPad, unsigned char ucAction) { return false; } bool C_4JInput::ButtonDown(int iPad, unsigned char ucAction) { return false; } void C_4JInput::SetJoypadStickAxisMap(int iPad, unsigned int uiFrom, unsigned int uiTo) { if (iPad < 0 || iPad >= XUSER_MAX_COUNT || uiFrom >= 4) return; g_stubAxisMaps[iPad][uiFrom] = uiTo; } void C_4JInput::SetJoypadStickTriggerMap(int iPad, unsigned int uiFrom, unsigned int uiTo) { if (iPad < 0 || iPad >= XUSER_MAX_COUNT || uiFrom >= 2) return; g_stubTriggerMaps[iPad][uiFrom] = uiTo; } void C_4JInput::SetKeyRepeatRate(float fRepeatDelaySecs, float fRepeatRateSecs) {} void C_4JInput::SetDebugSequence(const char *chSequenceA, int (*Func)(LPVOID), LPVOID lpParam) {} FLOAT C_4JInput::GetIdleSeconds(int iPad) { return 0.0f; } bool C_4JInput::IsPadConnected(int iPad) { return true; } float C_4JInput::GetJoypadStick_LX(int iPad, bool bCheckMenuDisplay) { return 0.0f; } float C_4JInput::GetJoypadStick_LY(int iPad, bool bCheckMenuDisplay) { return 0.0f; } float C_4JInput::GetJoypadStick_RX(int iPad, bool bCheckMenuDisplay) { return 0.0f; } float C_4JInput::GetJoypadStick_RY(int iPad, bool bCheckMenuDisplay) { return 0.0f; } unsigned char C_4JInput::GetJoypadLTrigger(int iPad, bool bCheckMenuDisplay) { return 0; } unsigned char C_4JInput::GetJoypadRTrigger(int iPad, bool bCheckMenuDisplay) { return 0; } void C_4JInput::SetMenuDisplayed(int iPad, bool bVal) {} EKeyboardResult C_4JInput::RequestKeyboard(LPCWSTR Title, LPCWSTR Text, DWORD dwPad, UINT uiMaxChars, int (*Func)(LPVOID, const bool), LPVOID lpParam, C_4JInput::EKeyboardMode eMode) { return EKeyboard_Cancelled; } void C_4JInput::GetText(uint16_t *UTF16String) {} bool C_4JInput::VerifyStrings(WCHAR **pwStringA, int iStringC, int (*Func)(LPVOID, STRING_VERIFY_RESPONSE *), LPVOID lpParam) { return false; } void C_4JInput::CancelQueuedVerifyStrings(int (*Func)(LPVOID, STRING_VERIFY_RESPONSE *), LPVOID lpParam) {} void C_4JInput::CancelAllVerifyInProgress(void) {} C4JStorage StorageManager; C4JStorage::C4JStorage() : m_pStringTable(NULL) {} void C4JStorage::Tick(void) {} C4JStorage::EMessageResult C4JStorage::RequestMessageBox(UINT uiTitle, UINT uiText, UINT *uiOptionA, UINT uiOptionC, DWORD dwPad, int (*Func)(LPVOID, int, const C4JStorage::EMessageResult), LPVOID lpParam, C4JStringTable *pStringTable, WCHAR *pwchFormatString, DWORD dwFocusButton) { return C4JStorage::EMessage_Undefined; } C4JStorage::EMessageResult C4JStorage::GetMessageBoxResult() { return C4JStorage::EMessage_Undefined; } bool C4JStorage::SetSaveDevice(int (*Func)(LPVOID, const bool), LPVOID lpParam, bool bForceResetOfSaveDevice) { return true; } void C4JStorage::Init(unsigned int uiSaveVersion, LPCWSTR pwchDefaultSaveName, char *pszSavePackName, int iMinimumSaveSize, int (*Func)(LPVOID, const ESavingMessage, int), LPVOID lpParam, LPCSTR szGroupID) {} void C4JStorage::ResetSaveData() {} void C4JStorage::SetDefaultSaveNameForKeyboardDisplay(LPCWSTR pwchDefaultSaveName) {} void C4JStorage::SetSaveTitle(LPCWSTR pwchDefaultSaveName) {} LPCWSTR C4JStorage::GetSaveTitle() { return L""; } bool C4JStorage::GetSaveUniqueNumber(INT *piVal) { return true; } bool C4JStorage::GetSaveUniqueFilename(char *pszName) { return true; } void C4JStorage::SetSaveUniqueFilename(char *szFilename) {} void C4JStorage::SetState(ESaveGameControlState eControlState, int (*Func)(LPVOID, const bool), LPVOID lpParam) {} void C4JStorage::SetSaveDisabled(bool bDisable) {} bool C4JStorage::GetSaveDisabled(void) { return false; } unsigned int C4JStorage::GetSaveSize() { return 0; } void C4JStorage::GetSaveData(void *pvData, unsigned int *puiBytes) {} PVOID C4JStorage::AllocateSaveData(unsigned int uiBytes) { return nullptr; } void C4JStorage::SetSaveImages(PBYTE pbThumbnail, DWORD dwThumbnailBytes, PBYTE pbImage, DWORD dwImageBytes, PBYTE pbTextData, DWORD dwTextDataBytes) {} void C4JStorage::SetDefaultImages(PBYTE pbOptionsImage, DWORD dwOptionsImageBytes, PBYTE pbSaveImage, DWORD dwSaveImageBytes, PBYTE pbSaveThumbnail, DWORD dwSaveThumbnailBytes) {} void C4JStorage::GetDefaultSaveImage(PBYTE *ppbSaveImage, DWORD *pdwSaveImageBytes) {} void C4JStorage::GetDefaultSaveThumbnail(PBYTE *ppbSaveThumbnail, DWORD *pdwSaveThumbnailBytes) {} C4JStorage::ESaveGameState C4JStorage::SaveSaveData(int (*Func)(LPVOID, const bool), LPVOID lpParam) { return C4JStorage::ESaveGame_Idle; } void C4JStorage::CopySaveDataToNewSave(PBYTE pbThumbnail, DWORD cbThumbnail, WCHAR *wchNewName, int (*Func)(LPVOID lpParam, bool), LPVOID lpParam) {} void C4JStorage::SetSaveDeviceSelected(unsigned int uiPad, bool bSelected) {} bool C4JStorage::GetSaveDeviceSelected(unsigned int iPad) { return true; } C4JStorage::ESaveGameState C4JStorage::DoesSaveExist(bool *pbExists) { return C4JStorage::ESaveGame_Idle; } bool C4JStorage::EnoughSpaceForAMinSaveGame() { return true; } void C4JStorage::SetMaxSaves(int iMaxC) {} void C4JStorage::SetIncompleteSaveCallback(void (*Func)(LPVOID, const ESaveIncompleteType, int blocksRequired), LPVOID param) {} void C4JStorage::ContinueIncompleteOperation() {} C4JStorage::ESaveGameState C4JStorage::GetSaveState() { return C4JStorage::ESaveGame_Idle; } void C4JStorage::SetSaveMessageVPosition(float fY) {} C4JStorage::ESaveGameState C4JStorage::GetSavesInfo(int iPad, int (*Func)(LPVOID lpParam, SAVE_DETAILS *pSaveDetails, const bool), LPVOID lpParam, char *pszSavePackName) { return C4JStorage::ESaveGame_Idle; } PSAVE_DETAILS C4JStorage::ReturnSavesInfo() { return NULL; } void C4JStorage::ClearSavesInfo() {} C4JStorage::ESaveGameState C4JStorage::LoadSaveDataThumbnail(PSAVE_INFO pSaveInfo, int (*Func)(LPVOID lpParam, PBYTE pbThumbnail, DWORD dwThumbnailBytes), LPVOID lpParam) { return C4JStorage::ESaveGame_Idle; } void C4JStorage::GetSaveCacheFileInfo(DWORD dwFile, XCONTENT_DATA &xContentData) {} void C4JStorage::GetSaveCacheFileInfo(DWORD dwFile, PBYTE *ppbImageData, DWORD *pdwImageBytes) {} C4JStorage::ESaveGameState C4JStorage::LoadSaveData(PSAVE_INFO pSaveInfo, int (*Func)(LPVOID lpParam, const bool, const bool), LPVOID lpParam) { return C4JStorage::ESaveGame_Idle; } C4JStorage::ESaveGameState C4JStorage::DeleteSaveData(PSAVE_INFO pSaveInfo, int (*Func)(LPVOID lpParam, const bool), LPVOID lpParam) { return C4JStorage::ESaveGame_Idle; } C4JStorage::ESaveGameState C4JStorage::RenameSaveData(int iRenameIndex, uint16_t *pui16NewName, int (*Func)(LPVOID lpParam, const bool), LPVOID lpParam) { return C4JStorage::ESaveGame_Idle; } void C4JStorage::RegisterMarketplaceCountsCallback(int (*Func)(LPVOID lpParam, C4JStorage::DLC_TMS_DETAILS *, int), LPVOID lpParam) {} void C4JStorage::SetDLCPackageRoot(char *pszDLCRoot) {} C4JStorage::EDLCStatus C4JStorage::GetDLCOffers(int iPad, int (*Func)(LPVOID, int, DWORD, int), LPVOID lpParam, DWORD dwOfferTypesBitmask) { return C4JStorage::EDLC_Idle; } DWORD C4JStorage::CancelGetDLCOffers() { return 0; } void C4JStorage::ClearDLCOffers() {} XMARKETPLACE_CONTENTOFFER_INFO& C4JStorage::GetOffer(DWORD dw) { static XMARKETPLACE_CONTENTOFFER_INFO retval = {0}; return retval; } int C4JStorage::GetOfferCount() { return 0; } DWORD C4JStorage::InstallOffer(int iOfferIDC, __uint64 *ullOfferIDA, int (*Func)(LPVOID, int, int), LPVOID lpParam, bool bTrial) { return 0; } DWORD C4JStorage::GetAvailableDLCCount(int iPad) { return 0; } C4JStorage::EDLCStatus C4JStorage::GetInstalledDLC(int iPad, int (*Func)(LPVOID, int, int), LPVOID lpParam) { return C4JStorage::EDLC_Idle; } XCONTENT_DATA& C4JStorage::GetDLC(DWORD dw) { static XCONTENT_DATA retval = {0}; return retval; } DWORD C4JStorage::MountInstalledDLC(int iPad, DWORD dwDLC, int (*Func)(LPVOID, int, DWORD, DWORD), LPVOID lpParam, LPCSTR szMountDrive) { return 0; } DWORD C4JStorage::UnmountInstalledDLC(LPCSTR szMountDrive) { return 0; } void C4JStorage::GetMountedDLCFileList(const char *szMountDrive, std::vector &fileList) {} std::string C4JStorage::GetMountedPath(std::string szMount) { return ""; } C4JStorage::ETMSStatus C4JStorage::ReadTMSFile(int iQuadrant, eGlobalStorage eStorageFacility, C4JStorage::eTMS_FileType eFileType, WCHAR *pwchFilename, BYTE **ppBuffer, DWORD *pdwBufferSize, int (*Func)(LPVOID, WCHAR *, int, bool, int), LPVOID lpParam, int iAction) { return C4JStorage::ETMSStatus_Idle; } bool C4JStorage::WriteTMSFile(int iQuadrant, eGlobalStorage eStorageFacility, WCHAR *pwchFilename, BYTE *pBuffer, DWORD dwBufferSize) { return true; } bool C4JStorage::DeleteTMSFile(int iQuadrant, eGlobalStorage eStorageFacility, WCHAR *pwchFilename) { return true; } void C4JStorage::StoreTMSPathName(WCHAR *pwchName) {} C4JStorage::ETMSStatus C4JStorage::TMSPP_ReadFile(int iPad, C4JStorage::eGlobalStorage eStorageFacility, C4JStorage::eTMS_FILETYPEVAL eFileTypeVal, LPCSTR szFilename, int (*Func)(LPVOID, int, int, PTMSPP_FILEDATA, LPCSTR), LPVOID lpParam, int iUserData) { return C4JStorage::ETMSStatus_Idle; } unsigned int C4JStorage::CRC(unsigned char *buf, int len) { return 0; } #pragma GCC diagnostic pop #endif