Add NES emulation support with bundled FCEUmm core
Implement NesCore with FCEUmm/Nestopia/Mesen libretro core support. Generalize native frontend to handle cores that require ROM data in memory (need_fullpath=false) and move PS1-specific config out of C++ into Ps1Core. Bundle both core .so files as APK assets with automatic extraction. Fix cover art fetching for GoodNES-named ROMs by expanding region codes (U)->(USA, Europe) to match LibRetro thumbnail naming.
This commit is contained in:
@@ -9,6 +9,7 @@
|
||||
#include <string>
|
||||
#include <thread>
|
||||
#include <unordered_map>
|
||||
#include <vector>
|
||||
|
||||
enum class DisplayMode : int {
|
||||
STRETCH = 0,
|
||||
@@ -43,6 +44,8 @@ public:
|
||||
|
||||
void setSystemDir(const char* dir);
|
||||
void setSaveDir(const char* dir);
|
||||
void setControllerPortDevice(unsigned port, unsigned device);
|
||||
void setCoreOption(const char* key, const char* value);
|
||||
|
||||
bool isRunning() const { return running_.load(); }
|
||||
|
||||
@@ -114,6 +117,10 @@ private:
|
||||
std::string system_dir_;
|
||||
std::string save_dir_;
|
||||
|
||||
// ROM data (kept alive for cores with need_fullpath=false)
|
||||
std::vector<uint8_t> rom_data_;
|
||||
bool need_fullpath_ = true;
|
||||
|
||||
// Frame timing
|
||||
double target_fps_ = 60.0;
|
||||
int frame_skip_ = 0;
|
||||
|
||||
Reference in New Issue
Block a user