2020-10-11 10:30:00 +01:00
|
|
|
#pragma once
|
|
|
|
|
2020-10-09 19:13:42 +01:00
|
|
|
#include <string>
|
2020-12-04 19:58:49 +00:00
|
|
|
#include <vector>
|
2020-10-09 19:13:42 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
namespace common2
|
2021-02-20 15:21:53 +00:00
|
|
|
{
|
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
struct Geometry
|
|
|
|
{
|
|
|
|
int width;
|
|
|
|
int height;
|
|
|
|
int x;
|
|
|
|
int y;
|
|
|
|
};
|
2021-02-20 15:21:53 +00:00
|
|
|
|
2020-10-11 09:49:50 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
struct EmulatorOptions
|
|
|
|
{
|
2021-04-04 18:56:53 +01:00
|
|
|
EmulatorOptions();
|
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
std::string disk1;
|
|
|
|
std::string disk2;
|
|
|
|
|
|
|
|
std::string snapshotFilename;
|
|
|
|
bool loadSnapshot = false;
|
|
|
|
|
2021-04-04 18:56:53 +01:00
|
|
|
int memclear;
|
2020-10-11 09:49:50 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
bool log = false;
|
2020-10-11 09:49:50 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
bool benchmark = false;
|
|
|
|
bool headless = false;
|
|
|
|
bool ntsc = false; // only for applen
|
2020-10-11 09:49:50 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
bool paddleSquaring = true; // turn the x/y range to a square
|
|
|
|
// on my PC it is something like
|
|
|
|
// "/dev/input/by-id/usb-©Microsoft_Corporation_Controller_1BBE3DB-event-joystick"
|
|
|
|
std::string paddleDeviceName;
|
2020-10-11 09:49:50 +01:00
|
|
|
|
2021-04-04 18:56:53 +01:00
|
|
|
std::string configurationFile;
|
2021-02-25 16:04:50 +00:00
|
|
|
bool useQtIni = false; // use Qt .ini file (read only)
|
2020-10-17 19:19:46 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
bool run = true; // false if options include "-h"
|
2020-10-09 19:13:42 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
bool fixedSpeed = false; // default adaptive
|
2020-11-13 11:50:42 +00:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
int sdlDriver = -1; // default = -1 to let SDL choose
|
|
|
|
bool imgui = false; // use imgui renderer
|
|
|
|
Geometry geometry; // must be initialised with defaults
|
|
|
|
int glSwapInterval = 1; // SDL_GL_SetSwapInterval
|
2020-11-13 11:50:42 +00:00
|
|
|
|
2021-05-27 13:40:57 +01:00
|
|
|
std::string customRomF8;
|
|
|
|
std::string customRom;
|
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
std::vector<std::string> registryOptions;
|
|
|
|
};
|
2020-12-04 19:58:49 +00:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
bool getEmulatorOptions(int argc, const char * argv [], const std::string & edition, EmulatorOptions & options);
|
2020-10-09 19:13:42 +01:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
void applyOptions(const EmulatorOptions & options);
|
2020-12-13 19:47:30 +00:00
|
|
|
|
2021-02-25 16:04:50 +00:00
|
|
|
}
|