-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathplaycfg.hpp
66 lines (55 loc) · 1.38 KB
/
playcfg.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#ifndef __PLAYCFG_HPP__
#define __PLAYCFG_HPP__
#include <stdtype.h>
#include <string>
struct GeneralOptions
{
UINT32 smplRate;
UINT8 smplBits;
UINT32 pbRate;
double volume;
double pbSpeed;
UINT32 maxLoops;
UINT8 resmplMode;
UINT8 chipSmplMode;
UINT32 chipSmplRate;
UINT32 fadeTime_single;
UINT32 fadeTime_plist;
UINT32 pauseTime_jingle;
UINT32 pauseTime_loop;
UINT8 pbMode; // playback mode (0 = play, 1 = log to WAV, 2 = play+log)
bool soundWhilePaused;
bool pseudoSurround;
bool preferJapTag;
UINT8 timeDispStyle;
bool showDevCore;
bool setTermTitle;
UINT8 mediaKeys;
UINT8 hardStopOld;
bool fadeRawLogs;
UINT8 showStrmCmds;
UINT8 logLvlFile; // file playback
UINT8 logLvlEmu; // sound emulation
UINT32 audDriverID;
std::string audDriverName;
UINT32 audOutDev;
UINT32 audBufCnt;
UINT32 audBufTime;
};
struct ChipOptions
{
UINT8 chipType;
UINT8 chipInstance;
UINT8 chipDisable; // bit mask, bit 0 (01) = main, bit 1 (02) = linked
UINT32 emuCore;
UINT32 emuCoreSub;
UINT32 muteMask[2];
double panMask[2][32];
UINT32 addOpts;
};
class Configuration;
class PlayerA;
void ParseConfiguration(GeneralOptions& gOpts, size_t cOptCnt, ChipOptions* cOpts, const Configuration& cfg);
void ApplyCfg_General(PlayerA& player, const GeneralOptions& opts);
void ApplyCfg_Chip(PlayerA& player, const GeneralOptions& gOpts, const ChipOptions& cOpts);
#endif // __PLAYCFG_HPP__