0.6.1
[libretro-ppsspp.git] / Core / Config.h
blobff04c0011009e249fb1c91d264c3cd692b276fef
1 // Copyright (c) 2012- PPSSPP Project.
3 // This program is free software: you can redistribute it and/or modify
4 // it under the terms of the GNU General Public License as published by
5 // the Free Software Foundation, version 2.0 or later versions.
7 // This program is distributed in the hope that it will be useful,
8 // but WITHOUT ANY WARRANTY; without even the implied warranty of
9 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 // GNU General Public License 2.0 for more details.
12 // A copy of the GPL 2.0 should have been included with the program.
13 // If not, see http://www.gnu.org/licenses/
15 // Official git repository and contact information can be found at
16 // https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
18 #pragma once
20 #include <string>
22 #define PPSSPP_VERSION_STR "0.6.1"
25 struct SState
27 bool bEmuThreadStarted; // is anything loaded into the emulator?
28 bool bBooted;
31 struct CConfig
33 public:
34 CConfig();
35 ~CConfig();
37 // Whether to save the config on close.
38 bool bSaveSettings;
40 // These are broken
41 bool bAutoLoadLast;
42 bool bFirstRun;
43 bool bSpeedLimit;
44 bool bConfirmOnQuit;
45 bool bAutoRun; // start immediately
47 // Core
48 bool bIgnoreBadMemAccess;
49 bool bFastMemory;
50 int iCpuCore;
52 // GFX
53 bool bDisplayFramebuffer;
54 bool bHardwareTransform;
55 bool bBufferedRendering;
56 bool bDrawWireframe;
57 bool bLinearFiltering;
58 bool bUseVBO;
59 int iWindowZoom; // for Windows
60 bool SSAntiAliasing; //for Windows, too
61 bool bDisableG3DLog;
62 bool bVertexCache;
63 bool bFullScreen;
65 // Sound
66 bool bEnableSound;
68 // UI
69 bool bShowTouchControls;
70 bool bShowDebuggerOnLoad;
71 bool bShowAnalogStick;
72 bool bShowFPSCounter;
73 bool bShowDebugStats;
74 bool bLargeControls;
76 // SystemParam
77 int ilanguage;
78 int itimeformat;
80 std::string currentDirectory;
81 std::string memCardDirectory;
82 std::string flashDirectory;
84 void Load(const char *iniFileName = "ppsspp.ini");
85 void Save();
86 private:
87 std::string iniFilename_;
90 extern SState g_State;
91 extern CConfig g_Config;