Files
ARMSX2/pcsx2/Android/AndroidStubs.cpp
David IsztlandClaude Opus 4.8 2eb9ec659c refactor: move Android frontend to platforms/android on single shared core
Snapshot the refresh-experimental Android app (Gradle + JNI + Android-only
3rdparty) into platforms/android/. Delete its vendored PCSX2 core copy and
relocate the ~24 genuinely Android-specific core additions (Oboe audio, Android
stubs, EGL-Android GL context, NEON SPU2, GSGPUProfile, VU1Fingerprint, Android
HTTP downloader) into the root core, guarded by if(ANDROID) in
pcsx2/CMakeLists.txt and common/CMakeLists.txt.

The superseded arm64 JIT experiment (arm64/mac/* IR-VU backend, split
aVU0/aDMAC/aVTLB/aR5900COP*) is dropped: the root macOS arm64 JIT (127 unique
commits, newer) is the canonical recompiler.

Rewire the Android native build to a thin CMakeLists that sources the root
{common,pcsx2,3rdparty} instead of the deleted vendored copy.

NOT yet compiled against a real NDK -- build validation is CI's job.
See REFACTOR_STATUS.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 20:29:23 +02:00

90 lines
1.7 KiB
C++

// SPDX-FileCopyrightText: 2002-2026 PCSX2 Dev Team
// SPDX-License-Identifier: GPL-3.0+
// Stubs for functionality not available/needed on Android.
#include "PrecompiledHeader.h"
#include "Input/InputManager.h"
#include "CDVD/CDVDdiscReader.h"
// g_host_hotkeys - normally defined in pcsx2-qt
BEGIN_HOTKEY_LIST(g_host_hotkeys)
END_HOTKEY_LIST()
// Host::SetMouseLock - no mouse lock on Android
void Host::SetMouseLock(bool state)
{
}
// HTTPDownloader::Create is now provided by common/HTTPDownloaderAndroid.cpp,
// which bridges to java.net.HttpURLConnection via JNI. The stub that
// returned null lived here previously — RA login + cover downloads
// silently failed and the cleanup path crashed when the unique_ptr was
// dereferenced. See HTTPDownloaderAndroid.{h,cpp}.
// Optical drive / disc reader stubs - no physical disc on Android
std::vector<std::string> GetOpticalDriveList()
{
return {};
}
void GetValidDrive(std::string& drive)
{
}
// IOCtlSrc stubs
IOCtlSrc::IOCtlSrc(std::string filename)
{
}
IOCtlSrc::~IOCtlSrc()
{
}
bool IOCtlSrc::Reopen(Error* error)
{
return false;
}
bool IOCtlSrc::DiscReady()
{
return false;
}
u32 IOCtlSrc::GetSectorCount() const
{
return 0;
}
s32 IOCtlSrc::GetMediaType() const
{
return 0;
}
const std::vector<toc_entry>& IOCtlSrc::ReadTOC() const
{
static const std::vector<toc_entry> empty;
return empty;
}
bool IOCtlSrc::ReadSectors2048(u32 sector, u32 count, u8* buffer) const
{
return false;
}
bool IOCtlSrc::ReadSectors2352(u32 sector, u32 count, u8* buffer) const
{
return false;
}
bool IOCtlSrc::ReadTrackSubQ(cdvdSubQ* subq) const
{
return false;
}
u32 IOCtlSrc::GetLayerBreakAddress() const
{
return 0;
}