73 lines
1.5 KiB
C++
73 lines
1.5 KiB
C++
struct Configuration {
|
|
auto read() -> string;
|
|
auto read(string) -> string;
|
|
auto write(string) -> bool;
|
|
auto write(string, string) -> bool;
|
|
|
|
struct System {
|
|
struct CPU {
|
|
uint version = 2;
|
|
} cpu;
|
|
struct PPU1 {
|
|
uint version = 1;
|
|
struct VRAM {
|
|
uint size = 0x10000;
|
|
} vram;
|
|
} ppu1;
|
|
struct PPU2 {
|
|
uint version = 3;
|
|
} ppu2;
|
|
struct Serialization {
|
|
string method = "Fast";
|
|
} serialization;
|
|
} system;
|
|
|
|
struct Video {
|
|
bool blurEmulation = true;
|
|
bool colorEmulation = true;
|
|
bool drawCursor = true;
|
|
} video;
|
|
|
|
struct Hacks {
|
|
bool hotfixes = true;
|
|
string entropy = "Low";
|
|
struct CPU {
|
|
uint overclock = 100;
|
|
bool fastMath = false;
|
|
} cpu;
|
|
struct PPU {
|
|
bool fast = true;
|
|
bool deinterlace = true;
|
|
bool noSpriteLimit = false;
|
|
bool noVRAMBlocking = false;
|
|
uint renderCycle = 512;
|
|
struct Mode7 {
|
|
uint scale = 1;
|
|
bool perspective = true;
|
|
bool supersample = false;
|
|
bool mosaic = true;
|
|
} mode7;
|
|
} ppu;
|
|
struct DSP {
|
|
bool fast = true;
|
|
bool cubic = false;
|
|
bool echoShadow = false;
|
|
} dsp;
|
|
struct Coprocessor {
|
|
bool delayedSync = true;
|
|
bool preferHLE = false;
|
|
} coprocessor;
|
|
struct SA1 {
|
|
uint overclock = 100;
|
|
} sa1;
|
|
struct SuperFX {
|
|
uint overclock = 100;
|
|
} superfx;
|
|
} hacks;
|
|
|
|
private:
|
|
auto process(Markup::Node document, bool load) -> void;
|
|
};
|
|
|
|
extern Configuration configuration;
|