16#include "Concurrency.h"
21struct SyntaxError :
public std::runtime_error {
22 using runtime_error::runtime_error;
26void process(
const void *listener, Message msg);
31 std::map<string,string> keys;
50 int main(
int argc,
char *argv[]);
55 void parseArguments(
int argc,
char *argv[]);
58 void checkArguments() throws;
61 string selfTestScript();
71 void process(Message msg);
78static const
char *testScript[] = {
80 "# Self-test script for VirtualC64",
82 "# This script checks the integrity of application. It runs several shell",
83 "# commands to check if anything breaks.",
85 "# Dirk W. Hoffmann, 2024",
96 "c64 set WARP_BOOT 50",
97 "c64 set WARP_MODE WARP_ALWAYS",
98 "c64 set WARP_MODE WARP_AUTO",
99 "c64 set WARP_MODE WARP_NEVER",
101 "c64 set TIME_LAPSE 75",
102 "c64 set RUN_AHEAD 2",
113 "memory set INIT_PATTERN VICE",
114 "memory set INIT_PATTERN CCS",
115 "memory set INIT_PATTERN ZEROES",
116 "memory set INIT_PATTERN ONES",
117 "memory set INIT_PATTERN RANDOM",
118 "memory set SAVE_ROMS true",
119 "memory set SAVE_ROMS false",
123 "cia1 set REVISION MOS_6526",
124 "cia1 set REVISION MOS_8521",
125 "cia1 set TIMER_B_BUG true",
126 "cia1 set TIMER_B_BUG false",
130 "cia2 set REVISION MOS_6526",
131 "cia2 set REVISION MOS_8521",
132 "cia2 set TIMER_B_BUG true",
133 "cia2 set TIMER_B_BUG false",
137 "vic set REVISION PAL_6569_R1",
138 "vic set REVISION PAL_6569_R3",
139 "vic set REVISION PAL_8565",
140 "vic set REVISION NTSC_6567",
141 "vic set REVISION NTSC_6567_R56A",
142 "vic set REVISION NTSC_8562",
143 "vic set GRAY_DOT_BUG true",
144 "vic set GRAY_DOT_BUG false",
145 "vic set GLUE_LOGIC DISCRETE",
146 "vic set GLUE_LOGIC IC",
147 "vic set SS_COLLISIONS true",
148 "vic set SS_COLLISIONS false",
149 "vic set SB_COLLISIONS true",
150 "vic set SB_COLLISIONS false",
152 "monitor set PALETTE COLOR",
153 "monitor set PALETTE BLACK_WHITE",
154 "monitor set PALETTE PAPER_WHITE",
155 "monitor set PALETTE GREEN",
156 "monitor set PALETTE AMBER",
157 "monitor set PALETTE SEPIA",
158 "monitor set BRIGHTNESS 50",
159 "monitor set CONTRAST 50",
160 "monitor set SATURATION 50",
164 "dmadebugger set CHANNEL0 true",
165 "dmadebugger set CHANNEL0 false",
166 "dmadebugger set CHANNEL1 true",
167 "dmadebugger set CHANNEL1 false",
168 "dmadebugger set CHANNEL2 true",
169 "dmadebugger set CHANNEL2 false",
170 "dmadebugger set CHANNEL3 true",
171 "dmadebugger set CHANNEL3 false",
172 "dmadebugger set CHANNEL4 true",
173 "dmadebugger set CHANNEL4 false",
174 "dmadebugger set CHANNEL5 true",
175 "dmadebugger set CHANNEL5 false",
178 "sid set ENGINE RESID",
179 "sid set REVISION MOS_6581",
180 "sid set REVISION MOS_8580",
181 "sid set SAMPLING FAST",
182 "sid set SAMPLING INTERPOLATE",
183 "sid set SAMPLING RESAMPLE",
184 "sid set SAMPLING RESAMPLE_FASTMEM",
185 "sid set FILTER true",
186 "sid set FILTER false",
189 "sid2 set ENGINE RESID",
190 "sid2 set REVISION MOS_6581",
191 "sid2 set REVISION MOS_8580",
192 "sid2 set SAMPLING FAST",
193 "sid2 set SAMPLING INTERPOLATE",
194 "sid2 set SAMPLING RESAMPLE",
195 "sid2 set SAMPLING RESAMPLE_FASTMEM",
196 "sid2 set FILTER true",
197 "sid2 set FILTER false",
210 "expansion attach reu 128",
211 "expansion attach reu 256",
212 "expansion attach reu 512",
213 "expansion attach reu 2048",
214 "expansion attach georam 512",
217 "keyboard release 32",
218 "keyboard type text \"text\"",
219 "keyboard type load",
225 "drive8 newdisk NODOS",
226 "drive8 newdisk CBM",
231 "drive9 newdisk NODOS",
232 "drive9 newdisk CBM",
236 "datasette disconnect",
238 "datasette rewind to 10",
241 "joystick1 set autofire ENABLE true",
242 "joystick1 set autofire ENABLE false",
243 "joystick1 set autofire BURSTS true",
244 "joystick1 set autofire BURSTS false",
245 "joystick1 set autofire BULLETS 10",
246 "joystick1 set autofire DELAY 10",
249 "joystick1 pull left",
250 "joystick1 pull right",
252 "joystick1 pull down",
253 "joystick1 release x",
254 "joystick1 release y",
257 "joystick2 set autofire ENABLE true",
258 "joystick2 set autofire ENABLE false",
259 "joystick2 set autofire BURSTS true",
260 "joystick2 set autofire BURSTS false",
261 "joystick2 set autofire BULLETS 10",
262 "joystick2 set autofire DELAY 10",
265 "joystick2 pull left",
266 "joystick2 pull right",
268 "joystick2 pull down",
269 "joystick2 release x",
270 "joystick2 release y",
273 "mouse1 set MODEL C1350",
274 "mouse1 set MODEL C1351",
275 "mouse1 set MODEL NEOS",
276 "mouse1 set VELOCITY 50",
277 "mouse1 set SHAKE_DETECTION true",
278 "mouse1 set SHAKE_DETECTION false",
281 "mouse2 set MODEL C1350",
282 "mouse2 set MODEL C1351",
283 "mouse2 set MODEL NEOS",
284 "mouse2 set VELOCITY 50",
285 "mouse2 set SHAKE_DETECTION true",
286 "mouse2 set SHAKE_DETECTION false",
VirtualC64 project namespace.
Definition CmdQueue.cpp:16