Skip to content

Commit a62d2c8

Browse files
committed
added ini file support
1 parent 42fcca7 commit a62d2c8

File tree

3 files changed

+451
-2
lines changed

3 files changed

+451
-2
lines changed

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ These components are still in an early development stage and the documentation w
3636
* -c path
3737
* path to config file
3838
* required
39+
* --ini-file path
40+
* path to a ppuc runtime ini file
41+
* optional
42+
* values from dedicated command line options override values from the ini file at runtime
3943
* -r rom name
4044
* rom to use, overwrites *rom* setting in config file
4145
* optional
@@ -78,6 +82,8 @@ These components are still in an early development stage and the documentation w
7882
* -h
7983
* help
8084

85+
An example runtime ini file is available at `examples/ppuc-pinmame.ini`.
86+
8187
### PUP Trigger Rules
8288

8389
Use `--pup-triggers <file>` to map switch/lamp/coil conditions to calls of `SetPUPTrigger(source, id, value)`.

examples/ppuc-pinmame.ini

Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
# Example runtime configuration for ppuc-pinmame.
2+
#
3+
# Precedence:
4+
# 1. Built-in defaults
5+
# 2. Values from this ini file via --ini-file
6+
# 3. Dedicated command line options, which override ini values at runtime
7+
8+
[Paths]
9+
# Required unless passed with -c/--config.
10+
ConfigFile = examples/t2.yml
11+
12+
# Optional ROM name or path. Overrides the ROM from the game YAML.
13+
Rom =
14+
15+
# Optional serial device path. Overrides the serial device from the game YAML.
16+
Serial =
17+
18+
# Optional PinMAME base folder. Defaults to the per-user pinmame folder.
19+
# Linux/macOS example: /home/pi/.pinmame/
20+
# Windows example: D:\PinMAME\
21+
PinmamePath =
22+
23+
# Optional PUP trigger rules file.
24+
PUPTriggers =
25+
26+
# Optional speech trigger text file.
27+
SpeechFile =
28+
29+
# Optional translite image for in-game mode.
30+
Translite =
31+
32+
# Optional translite image for attract mode.
33+
TransliteAttract =
34+
35+
[Backbox]
36+
# Optional DMD/backbox host address.
37+
Address =
38+
39+
# Optional DMD/backbox TCP port.
40+
Port = 6789
41+
42+
[Runtime]
43+
# Skip serial communication to the boards entirely.
44+
NoSerial = false
45+
46+
# Disable game audio output.
47+
NoSound = false
48+
49+
# Enable full debug output.
50+
Debug = false
51+
52+
# Enable communication/protocol error details without full debug.
53+
DebugErrors = false
54+
55+
# Enable switch debug output.
56+
DebugSwitches = false
57+
58+
# Enable coil debug output.
59+
DebugCoils = false
60+
61+
# Enable lamp debug output.
62+
DebugLamps = false
63+
64+
# Enable Serum colorization.
65+
Serum = false
66+
67+
# Serum timeout in milliseconds to ignore unknown frames.
68+
SerumTimeout = 0
69+
70+
# Serum number of unknown frames to skip.
71+
SerumSkipFrames = 0
72+
73+
# Enable PUP video capture/matching.
74+
PUP = false
75+
76+
# Render the DMD in the terminal.
77+
ConsoleDisplay = false
78+
79+
# Write DMD txt dump files.
80+
DumpDisplay = false
81+
82+
# CSV list of configured boards to skip, for example: 2,4,7
83+
SkipBoards =
84+
85+
# Experimental per-board switch reply delay in microseconds.
86+
SwitchReplyDelayUs = 0
87+
88+
# Force the configured coin-door-closed switch closed when virtualized.
89+
CloseCoinDoor = false
90+
91+
# Use hard reset instead of soft restart on board startup.
92+
HardReset = false
93+
94+
[Speech]
95+
# Enable speech callouts.
96+
Enabled = false
97+
98+
# Speak a startup greeting.
99+
Greeting = false
100+
101+
# Speech backend: auto, flite, espeak-ng
102+
Backend = auto
103+
104+
# Optional speech voice name.
105+
Voice =
106+
107+
# Optional speech rate in words per minute, mainly for espeak-ng.
108+
Rate =
109+
110+
# Optional speech pitch 0-100, mainly for espeak-ng.
111+
Pitch =
112+
113+
[BenchTest]
114+
# Enable one of the bench test modes below.
115+
SwitchTest = false
116+
CoilTest = false
117+
LampTest = false
118+
GITest = false
119+
FlasherTest = false
120+
121+
# Interactive selection mode for coil/lamp/flasher tests.
122+
Interactive = false
123+
124+
# Optional specific coil/lamp/GI/flasher number for bench tests.
125+
Number = 0
126+
127+
[Translite]
128+
# Show the translite in a window instead of fullscreen.
129+
Window = false
130+
131+
# Translite window width.
132+
Width = 1920
133+
134+
# Translite window height.
135+
Height = 1080
136+
137+
# Target screen index, or -1 for default placement.
138+
Screen = -1
139+
140+
[VirtualDMD]
141+
# Enable the SDL virtual DMD window.
142+
Enabled = false
143+
144+
# Use HD virtual DMD size (256x64 logical output instead of 128x32).
145+
HD = false
146+
147+
# Show the virtual DMD in a window instead of fullscreen.
148+
Window = false
149+
150+
# Virtual DMD window width.
151+
Width = 1280
152+
153+
# Virtual DMD window height.
154+
Height = 320
155+
156+
# Target screen index, or -1 for default placement.
157+
Screen = -1
158+
159+
# X position relative to the selected screen.
160+
X = 0
161+
162+
# Y position relative to the selected screen.
163+
Y = 0
164+
165+
# Virtual DMD renderer: dots, smooth, xbrz
166+
Renderer = dots

0 commit comments

Comments
 (0)