· 6 years ago · Jan 18, 2020, 05:40 PM
1[code]
217:32:44:447 | RL | INFO | +N/A | Main - RocketLauncher v1.2.0.1 (www.rlauncher.com)
317:32:44:476 | RL | WARNING | +31 | Main - Logging level is debug or higher and will cause slowdowns to RocketLauncher's performance. When troubleshooting is finished, please lower logging level to restore proper performance.
417:32:44:595 | RL | DEBUG | +125 | Registry.Read - Reading from Registry : RootKey=HKEY_LOCAL_MACHINE, SubKey=System\CurrentControlSet\Control\Windows, ValueName=ErrorMode,RegistryVersion=32
517:32:44:595 | RL | DEBUG | +0 | Registry.Read - Registry Read finished, returning 0
617:32:44:595 | RL | INFO | +0 | Main - System Specs:
7 RocketLauncher Dir: H:\RocketLauncher
8 RocketLauncher is: 32-bit
9 OS: Microsoft Windows 10 Pro
10 SKU: Professional
11 Total Memory: 32682.43 MB
12 Free Memory: 25649.23 MB
13 Used Memory: 7033.207 MB
14 SystemType: 64-bit
15 Physical Processors: 1
16 Logical Processors: 16
17 GPU 1 Name: NVIDIA GeForce RTX 2080 Ti
18 GPU 1 RAM: -1.00 MB
19 GPU 1 Driver Version: 26.21.14.4187
20 Sound 1 Device: CORSAIR VIRTUOSO SE Wireless Gaming Headset
21 Sound 1 Status: Enabled
22 Sound 2 Device: Oculus VR Headset
23 Sound 2 Status: Enabled
24 Sound 3 Device: Realtek High Definition Audio
25 Sound 3 Status: Enabled
26 Sound 4 Device: NVIDIA High Definition Audio
27 Sound 4 Status: Enabled
28 Sound 5 Device: Steam Streaming Microphone
29 Sound 5 Status: Enabled
30 Sound 6 Device: Sonic Studio Virtual Mixer
31 Sound 6 Status: Enabled
32 Sound 7 Device: Steam Streaming Speakers
33 Sound 7 Status: Enabled
34 Sound 8 Device: NVIDIA Virtual Audio Device (Wave Extensible) (WDM)
35 Sound 8 Status: Enabled
36 Sound 9 Device: Oculus Virtual Audio Device
37 Sound 9 Status: Enabled
38 OS Language: English_United_Kingdom
39 System Locale: en-GB
40 Formats Locale: en-GB
41 Windows UI Language: en-GB
42 Text Encoding: Windows-1252
43 OS Admin Status: Yes
44 RL Compatibility Flags: ~ RUNASADMIN
45 Latest .Net Version: v4.0.30319
46 Monitor #1 (\\.\DISPLAY1): 2560x1440 (2560x1400 work) [32bit] [144hz] [Landscape] (Primary)
47 Monitor #2 (\\.\DISPLAY2): 2560x1440 (2560x1440 work) [32bit] [59hz] [Landscape]
48 Monitor #3 (\\.\DISPLAY3): 864x1536 (864x1536 work) [32bit] [59hz] [Portrait]
49 Current AHK Desktop Width: 2560
50 Current AHK Desktop Height: 1440
51 Monitor #1 DPI: 100
52 Monitor #2 DPI: 100
53 Monitor #3 DPI: 100
54 ErrorMode: 0
55 AutoHotkey Path:
56 AHK Version: 1.1.13.00
57 Unicode: No
5817:32:44:595 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\RocketLauncher.exe exists
5917:32:44:596 | RL | DEBUG | +0 | CheckFile - Attributes:
60 FileDescription RocketLauncher
61 FileVersion 1.2.0.1
62 LegalCopyright �2016 RocketLauncher
63 ProductName djvj's one swell guy!
64 ProductVersion 1.2.0.1
65 CompanyName Your favorite Front End companion! Visit us @ www.rlauncher.com
66 File Size: 2195456 bytes
67 Created: 1/17/2020 - 5:02:33 PM
68 Modified: 1/22/2019 - 8:49:31 PM
6917:32:44:596 | RL | INFO | +0 | Main - Raw CLI received: "-f H:\LaunchBox\LaunchBox.exe -p LaunchBox -s Nintendo Entertainment System -r H:\LaunchBox\Games\Nintendo Entertainment System\DuckTales (USA).nes"
7017:32:44:597 | RL | TRACE | +0 | File.__New - Creating new file object of: "H:\RocketLauncher\Module Extensions\RocketLauncher.dll"
7117:32:44:597 | RL | INFO | +0 | File.CheckFile - Checking if "H:\RocketLauncher\Module Extensions\RocketLauncher.dll" exists
7217:32:44:598 | RL | TRACE | +0 | File.Exist - This file exists: H:\RocketLauncher\Module Extensions\RocketLauncher.dll
7317:32:44:598 | RL | DEBUG | +0 | File.CheckFile - Attributes:
74 FileDescription RocketLauncher Utils
75 FileVersion 1.1.0.0
76 InternalName RocketLauncher.dll
77 LegalCopyright Copyright � RocketLauncher 2013-2016
78 OriginalFilename RocketLauncher.dll
79 ProductName RocketLauncher
80 ProductVersion 1.1.0.0
81 File Size: 81408 bytes
82 Created: 1/17/2020 - 5:04:18 PM
83 Modified: 1/22/2019 - 8:48:59 PM
8417:32:44:601 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\Array.ahk
8517:32:44:602 | RL | DEBUG | +0 | CheckFile - Attributes:
86 File Size: 4926 bytes
87 Created: 1/17/2020 - 5:04:17 PM
88 Modified: 1/22/2019 - 8:49:21 PM
8917:32:44:603 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Module Extensions\BinHexRW.ahk
9017:32:44:603 | RL | DEBUG | +0 | CheckFile - Attributes:
91 File Size: 5112 bytes
92 Created: 1/17/2020 - 5:04:17 PM
93 Modified: 10/10/2016 - 6:25:10 AM
9417:32:44:603 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Module Extensions\BlockInput.exe exists
9517:32:44:604 | RL | DEBUG | +0 | CheckFile - Attributes:
96 FileDescription
97 FileVersion 1.1.09.04
98 InternalName
99 OriginalFilename
100 ProductName
101 ProductVersion 1.1.09.04
102 File Size: 657920 bytes
103 Created: 1/17/2020 - 5:04:17 PM
104 Modified: 3/5/2016 - 5:03:57 AM
10517:32:44:605 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\CLR_L.ahk | vInterop
10617:32:44:605 | RL | DEBUG | +0 | CheckFile - Attributes:
107 File Size: 5503 bytes
108 Created: 1/17/2020 - 5:04:17 PM
109 Modified: 1/22/2019 - 8:49:57 PM
11017:32:44:606 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\Control_AniGif.ahk | vAniGif.ahk
11117:32:44:607 | RL | DEBUG | +0 | CheckFile - Attributes:
112 File Size: 5716 bytes
113 Created: 1/17/2020 - 5:04:17 PM
114 Modified: 3/5/2016 - 5:03:57 AM
11517:32:44:608 | RL | ERROR | +0 | CRC Check - No CRC defined on the header for: H:\RocketLauncher\Module Extensions\gdip.ahk
11617:32:44:609 | RL | DEBUG | +15 | CheckFile - Attributes:
117 File Size: 88789 bytes
118 Created: 1/17/2020 - 5:04:17 PM
119 Modified: 3/5/2016 - 5:03:57 AM
12017:32:44:610 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Module Extensions\gdip_alt.ahk
12117:32:44:610 | RL | DEBUG | +0 | CheckFile - Attributes:
122 File Size: 5955 bytes
123 Created: 1/17/2020 - 5:04:17 PM
124 Modified: 10/10/2016 - 6:25:23 AM
12517:32:44:610 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Module Extensions\gsdll32.dll exists
12617:32:44:611 | RL | DEBUG | +0 | CheckFile - Attributes:
127 File Size: 13090816 bytes
128 Created: 1/17/2020 - 5:04:17 PM
129 Modified: 3/5/2016 - 5:03:58 AM
13017:32:44:611 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Module Extensions\itextsharp.dll exists
13117:32:44:612 | RL | DEBUG | +0 | CheckFile - Attributes:
132 FileDescription iTextSharp
133 FileVersion 5.4.2.0
134 InternalName itextsharp.dll
135 LegalCopyright Copyright (C) 1999-2013 by Bruno Lowagie and Paulo Soares. All Rights Reserved.
136 OriginalFilename itextsharp.dll
137 ProductName iTextSharp
138 ProductVersion 5.4.2.0
139 CompanyName 1T3XT BVBA
140 File Size: 3743744 bytes
141 Created: 1/17/2020 - 5:04:18 PM
142 Modified: 3/5/2016 - 5:03:58 AM
14317:32:44:613 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Module Extensions\Java.ahk
14417:32:44:613 | RL | DEBUG | +0 | CheckFile - Attributes:
145 File Size: 7859 bytes
146 Created: 1/17/2020 - 5:04:18 PM
147 Modified: 10/10/2016 - 6:25:36 AM
14817:32:44:614 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\JSON.ahk
14917:32:44:614 | RL | DEBUG | +0 | CheckFile - Attributes:
150 File Size: 9227 bytes
151 Created: 1/17/2020 - 5:04:18 PM
152 Modified: 3/9/2016 - 10:42:45 AM
15317:32:44:615 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Module Extensions\Origin.ahk
15417:32:44:616 | RL | DEBUG | +0 | CheckFile - Attributes:
155 File Size: 4915 bytes
156 Created: 1/17/2020 - 5:04:18 PM
157 Modified: 10/10/2016 - 6:26:16 AM
15817:32:44:617 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\RegRW64.ahk
15917:32:44:617 | RL | DEBUG | +0 | CheckFile - Attributes:
160 File Size: 6915 bytes
161 Created: 1/17/2020 - 5:04:18 PM
162 Modified: 3/5/2016 - 5:03:57 AM
16317:32:44:619 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\RIni.ahk | v1.7
16417:32:44:619 | RL | DEBUG | +0 | CheckFile - Attributes:
165 File Size: 67872 bytes
166 Created: 1/17/2020 - 5:04:18 PM
167 Modified: 9/11/2016 - 6:40:14 PM
16817:32:44:619 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Module Extensions\SevenZipSharp.dll exists
16917:32:44:620 | RL | DEBUG | +0 | CheckFile - Attributes:
170 FileDescription SevenZipSharp
171 FileVersion 0.64.5717.6837
172 InternalName SevenZipSharp.dll
173 LegalCopyright Copyright (C) Markovtsev Vadim 2009, 2010, licenced under LGPLv3
174 OriginalFilename SevenZipSharp.dll
175 ProductName SevenZipSharp
176 ProductVersion 0.64.5717.6837
177 CompanyName Markovtsev Vadim
178 File Size: 167424 bytes
179 Created: 1/17/2020 - 5:04:18 PM
180 Modified: 3/5/2016 - 5:03:57 AM
18117:32:44:621 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Module Extensions\Steam.ahk
18217:32:44:621 | RL | DEBUG | +0 | CheckFile - Attributes:
183 File Size: 5517 bytes
184 Created: 1/17/2020 - 5:04:18 PM
185 Modified: 10/10/2016 - 6:26:25 AM
18617:32:44:622 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: H:\RocketLauncher\Module Extensions\VA.ahk
18717:32:44:623 | RL | DEBUG | +0 | CheckFile - Attributes:
188 File Size: 34688 bytes
189 Created: 1/17/2020 - 5:04:18 PM
190 Modified: 3/5/2016 - 5:03:57 AM
19117:32:44:624 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Module Extensions\VA_Extension.ahk
19217:32:44:624 | RL | DEBUG | +0 | CheckFile - Attributes:
193 File Size: 3862 bytes
194 Created: 1/17/2020 - 5:04:18 PM
195 Modified: 10/10/2016 - 6:26:32 AM
19617:32:44:625 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\7z.ahk
19717:32:44:625 | RL | DEBUG | +0 | CheckFile - Attributes:
198 File Size: 33916 bytes
199 Created: 1/17/2020 - 5:02:35 PM
200 Modified: 1/22/2019 - 8:49:48 PM
20117:32:44:627 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Bezel.ahk
20217:32:44:628 | RL | DEBUG | +0 | CheckFile - Attributes:
203 File Size: 121257 bytes
204 Created: 1/17/2020 - 5:02:35 PM
205 Modified: 1/22/2019 - 8:48:59 PM
20617:32:44:629 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Fade.ahk
20717:32:44:629 | RL | DEBUG | +0 | CheckFile - Attributes:
208 File Size: 39707 bytes
209 Created: 1/17/2020 - 5:02:35 PM
210 Modified: 1/22/2019 - 8:49:31 PM
21117:32:44:630 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Fade Init.ahk
21217:32:44:630 | RL | DEBUG | +0 | CheckFile - Attributes:
213 File Size: 1140 bytes
214 Created: 1/17/2020 - 5:02:35 PM
215 Modified: 10/10/2016 - 6:27:47 AM
21617:32:44:632 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Fade Animations.ahk
21717:32:44:632 | RL | DEBUG | +0 | CheckFile - Attributes:
218 File Size: 77961 bytes
219 Created: 1/17/2020 - 5:02:35 PM
220 Modified: 10/10/2016 - 6:27:37 AM
22117:32:44:633 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Keymapper.ahk
22217:32:44:634 | RL | DEBUG | +0 | CheckFile - Attributes:
223 File Size: 33682 bytes
224 Created: 1/17/2020 - 5:02:35 PM
225 Modified: 10/10/2016 - 6:28:29 AM
22617:32:44:635 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Keymapper Init.ahk
22717:32:44:635 | RL | DEBUG | +0 | CheckFile - Attributes:
228 File Size: 3966 bytes
229 Created: 1/17/2020 - 5:02:35 PM
230 Modified: 10/10/2016 - 6:28:17 AM
23117:32:44:636 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\MultiGame.ahk
23217:32:44:636 | RL | DEBUG | +0 | CheckFile - Attributes:
233 File Size: 41583 bytes
234 Created: 1/17/2020 - 5:02:35 PM
235 Modified: 10/10/2016 - 6:28:47 AM
23617:32:44:637 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\MultiGame Init.ahk
23717:32:44:638 | RL | DEBUG | +0 | CheckFile - Attributes:
238 File Size: 169 bytes
239 Created: 1/17/2020 - 5:02:35 PM
240 Modified: 10/10/2016 - 6:28:38 AM
24117:32:44:639 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\MultiPlayer.ahk
24217:32:44:639 | RL | DEBUG | +0 | CheckFile - Attributes:
243 File Size: 67277 bytes
244 Created: 1/17/2020 - 5:02:35 PM
245 Modified: 10/10/2016 - 6:28:55 AM
24617:32:44:644 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Pause.ahk
24717:32:44:645 | RL | DEBUG | +0 | CheckFile - Attributes:
248 File Size: 408415 bytes
249 Created: 1/17/2020 - 5:02:35 PM
250 Modified: 1/22/2019 - 8:49:10 PM
25117:32:44:646 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Pause Init.ahk
25217:32:44:646 | RL | DEBUG | +0 | CheckFile - Attributes:
253 File Size: 563 bytes
254 Created: 1/17/2020 - 5:02:35 PM
255 Modified: 10/10/2016 - 6:29:15 AM
25617:32:44:647 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Password.ahk
25717:32:44:647 | RL | DEBUG | +0 | CheckFile - Attributes:
258 File Size: 10131 bytes
259 Created: 1/17/2020 - 5:02:35 PM
260 Modified: 10/10/2016 - 6:29:07 AM
26117:32:44:648 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\DLL\RocketLauncher.ahk
26217:32:44:649 | RL | DEBUG | +0 | CheckFile - Attributes:
263 File Size: 31509 bytes
264 Created: 1/17/2020 - 5:02:35 PM
265 Modified: 1/22/2019 - 8:49:11 PM
26617:32:44:650 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Log\Logger.ahk
26717:32:44:650 | RL | DEBUG | +0 | CheckFile - Attributes:
268 File Size: 3558 bytes
269 Created: 1/17/2020 - 5:02:35 PM
270 Modified: 10/10/2016 - 6:32:18 AM
27117:32:44:651 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\MiscUtils.ahk
27217:32:44:651 | RL | DEBUG | +0 | CheckFile - Attributes:
273 File Size: 6709 bytes
274 Created: 1/17/2020 - 5:02:35 PM
275 Modified: 1/22/2019 - 8:49:15 PM
27617:32:44:652 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\Environment\Registry.ahk
27717:32:44:652 | RL | DEBUG | +0 | CheckFile - Attributes:
278 File Size: 2084 bytes
279 Created: 1/17/2020 - 5:02:35 PM
280 Modified: 1/22/2019 - 8:49:42 PM
28117:32:44:653 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\Environment\ArrayUtils.ahk
28217:32:44:654 | RL | DEBUG | +0 | CheckFile - Attributes:
283 File Size: 306 bytes
284 Created: 1/17/2020 - 5:02:35 PM
285 Modified: 1/22/2019 - 8:49:11 PM
28617:32:44:654 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\Environment\LocaleUtils.ahk
28717:32:44:655 | RL | DEBUG | +0 | CheckFile - Attributes:
288 File Size: 2104 bytes
289 Created: 1/17/2020 - 5:02:35 PM
290 Modified: 1/22/2019 - 8:49:05 PM
29117:32:44:656 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\Environment\StringUtils.ahk
29217:32:44:656 | RL | DEBUG | +0 | CheckFile - Attributes:
293 File Size: 7754 bytes
294 Created: 1/17/2020 - 5:02:35 PM
295 Modified: 1/22/2019 - 8:48:51 PM
29617:32:44:657 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\Environment\TimerUtils.ahk
29717:32:44:657 | RL | DEBUG | +0 | CheckFile - Attributes:
298 File Size: 2948 bytes
299 Created: 1/17/2020 - 5:02:35 PM
300 Modified: 10/10/2016 - 6:33:57 AM
30117:32:44:658 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\ArchiveFile.ahk
30217:32:44:659 | RL | DEBUG | +0 | CheckFile - Attributes:
303 File Size: 346 bytes
304 Created: 1/17/2020 - 5:02:35 PM
305 Modified: 1/22/2019 - 8:49:34 PM
30617:32:44:659 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\DemulShooter.ahk
30717:32:44:660 | RL | DEBUG | +0 | CheckFile - Attributes:
308 File Size: 786 bytes
309 Created: 1/17/2020 - 5:02:35 PM
310 Modified: 1/22/2019 - 8:48:47 PM
31117:32:44:661 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\Emulator.ahk
31217:32:44:661 | RL | DEBUG | +0 | CheckFile - Attributes:
313 File Size: 1231 bytes
314 Created: 1/17/2020 - 5:02:35 PM
315 Modified: 10/10/2016 - 6:34:30 AM
31617:32:44:662 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\File.ahk
31717:32:44:662 | RL | DEBUG | +0 | CheckFile - Attributes:
318 File Size: 9522 bytes
319 Created: 1/17/2020 - 5:02:35 PM
320 Modified: 1/22/2019 - 8:49:21 PM
32117:32:44:663 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\FileUtils.ahk
32217:32:44:664 | RL | DEBUG | +0 | CheckFile - Attributes:
323 File Size: 339 bytes
324 Created: 1/17/2020 - 5:02:35 PM
325 Modified: 1/22/2019 - 8:49:07 PM
32617:32:44:664 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\Folder.ahk
32717:32:44:665 | RL | DEBUG | +0 | CheckFile - Attributes:
328 File Size: 643 bytes
329 Created: 1/17/2020 - 5:02:35 PM
330 Modified: 10/10/2016 - 6:34:48 AM
33117:32:44:666 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\IniFile.ahk
33217:32:44:666 | RL | DEBUG | +0 | CheckFile - Attributes:
333 File Size: 4364 bytes
334 Created: 1/17/2020 - 5:02:35 PM
335 Modified: 10/10/2016 - 6:34:57 AM
33617:32:44:667 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\Process.ahk
33717:32:44:667 | RL | DEBUG | +0 | CheckFile - Attributes:
338 File Size: 9711 bytes
339 Created: 1/17/2020 - 5:02:35 PM
340 Modified: 1/22/2019 - 8:49:24 PM
34117:32:44:668 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\PropertiesFile.ahk
34217:32:44:669 | RL | DEBUG | +0 | CheckFile - Attributes:
343 File Size: 4218 bytes
344 Created: 1/17/2020 - 5:02:35 PM
345 Modified: 1/22/2019 - 8:49:44 PM
34617:32:44:670 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\RIniFile.ahk
34717:32:44:670 | RL | DEBUG | +0 | CheckFile - Attributes:
348 File Size: 3898 bytes
349 Created: 1/17/2020 - 5:02:35 PM
350 Modified: 10/10/2016 - 6:35:14 AM
35117:32:44:671 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\File\XMLFile.ahk
35217:32:44:671 | RL | DEBUG | +0 | CheckFile - Attributes:
353 File Size: 331 bytes
354 Created: 1/17/2020 - 5:02:35 PM
355 Modified: 1/22/2019 - 8:48:52 PM
35617:32:44:672 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\Input\KeyUtils.ahk
35717:32:44:672 | RL | DEBUG | +0 | CheckFile - Attributes:
358 File Size: 5426 bytes
359 Created: 1/17/2020 - 5:02:35 PM
360 Modified: 10/10/2016 - 6:35:23 AM
36117:32:44:673 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\UI\Control.ahk
36217:32:44:674 | RL | DEBUG | +0 | CheckFile - Attributes:
363 File Size: 4603 bytes
364 Created: 1/17/2020 - 5:02:35 PM
365 Modified: 10/10/2016 - 6:35:32 AM
36617:32:44:675 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\UI\Window.ahk
36717:32:44:675 | RL | DEBUG | +0 | CheckFile - Attributes:
368 File Size: 24655 bytes
369 Created: 1/17/2020 - 5:02:35 PM
370 Modified: 1/22/2019 - 8:49:21 PM
37117:32:44:676 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Classes\Util\UI\WindowTitle.ahk
37217:32:44:676 | RL | DEBUG | +0 | CheckFile - Attributes:
373 File Size: 1171 bytes
374 Created: 1/17/2020 - 5:02:35 PM
375 Modified: 10/10/2016 - 6:35:49 AM
37617:32:44:679 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Rom Mapping Launch Menu.ahk
37717:32:44:679 | RL | DEBUG | +0 | CheckFile - Attributes:
378 File Size: 72279 bytes
379 Created: 1/17/2020 - 5:02:35 PM
380 Modified: 10/10/2016 - 6:29:33 AM
38117:32:44:680 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Shader.ahk
38217:32:44:681 | RL | DEBUG | +0 | CheckFile - Attributes:
383 File Size: 4183 bytes
384 Created: 1/17/2020 - 5:02:35 PM
385 Modified: 10/10/2016 - 6:29:51 AM
38617:32:44:681 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Shader Init.ahk
38717:32:44:682 | RL | DEBUG | +0 | CheckFile - Attributes:
388 File Size: 412 bytes
389 Created: 1/17/2020 - 5:02:35 PM
390 Modified: 10/10/2016 - 6:29:40 AM
39117:32:44:684 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Shared.ahk
39217:32:44:685 | RL | DEBUG | +0 | CheckFile - Attributes:
393 File Size: 173248 bytes
394 Created: 1/17/2020 - 5:02:35 PM
395 Modified: 1/22/2019 - 8:49:07 PM
39617:32:44:686 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Statistics.ahk
39717:32:44:686 | RL | DEBUG | +0 | CheckFile - Attributes:
398 File Size: 27008 bytes
399 Created: 1/17/2020 - 5:02:35 PM
400 Modified: 10/10/2016 - 6:30:22 AM
40117:32:44:687 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Statistics Init.ahk
40217:32:44:688 | RL | DEBUG | +0 | CheckFile - Attributes:
403 File Size: 43 bytes
404 Created: 1/17/2020 - 5:02:35 PM
405 Modified: 10/10/2016 - 6:30:14 AM
40617:32:44:689 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\Virtual Drive.ahk
40717:32:44:689 | RL | DEBUG | +0 | CheckFile - Attributes:
408 File Size: 20294 bytes
409 Created: 1/17/2020 - 5:02:35 PM
410 Modified: 10/10/2016 - 6:30:47 AM
41117:32:44:690 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\XHotkey.ahk
41217:32:44:690 | RL | DEBUG | +0 | CheckFile - Attributes:
413 File Size: 26615 bytes
414 Created: 1/17/2020 - 5:02:35 PM
415 Modified: 10/10/2016 - 6:31:04 AM
41617:32:44:691 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Lib\XHotkey Init.ahk
41717:32:44:692 | RL | DEBUG | +0 | CheckFile - Attributes:
418 File Size: 1073 bytes
419 Created: 1/17/2020 - 5:02:35 PM
420 Modified: 10/10/2016 - 6:30:56 AM
42117:32:44:692 | RL | DEBUG | +0 | Main - Received a full file path via CLI: "H:\LaunchBox\Games\Nintendo Entertainment System\DuckTales (USA).nes"
42217:32:44:693 | RL | DEBUG | +0 | Main - dbFullName: DuckTales (USA).nes
42317:32:44:693 | RL | DEBUG | +0 | Main - dbName: DuckTales (USA)
42417:32:44:693 | RL | DEBUG | +0 | Main - dbPath: H:\LaunchBox\Games\Nintendo Entertainment System
42517:32:44:693 | RL | DEBUG | +0 | Main - dbExt: nes
42617:32:44:693 | RL | INFO | +0 | Main - Loading Front End Plugin: "LaunchBox"
42717:32:44:694 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: H:\RocketLauncher\Plugins\LaunchBox.plugin
42817:32:44:695 | RL | DEBUG | +0 | CheckFile - Attributes:
429 File Size: 14956 bytes
430 Created: 1/17/2020 - 5:04:29 PM
431 Modified: 1/22/2019 - 8:49:00 PM
43217:32:44:695 | RL | TRACE | +0 | Process.__New - Creating new process object for: "H:\LaunchBox\LaunchBox.exe"
43317:32:44:695 | RL | TRACE | +0 | File.__New - Creating new file object of: "H:\LaunchBox\LaunchBox.exe"
43417:32:44:696 | RL | INFO | +0 | Process.Process - "Exist" "LaunchBox.exe"
43517:32:44:696 | RL | TRACE | +0 | Process.GetProcessID
43617:32:44:709 | RL | INFO | +15 | Main - Detected LaunchBox.exe is currently running
43717:32:44:710 | RL | TRACE | +0 | Window.__New - Created: "ahk_pid 1408"
43817:32:44:710 | RL | TRACE | +0 | Window.Get - ID is "0xe008a" from "ahk_pid 1408"
43917:32:44:710 | RL | TRACE | +0 | Window.GetPos - Retrieved x:0 y:0 w: 2560 h: 1400 from "ahk_id 0xe008a"
44017:32:44:710 | RL | INFO | +0 | Main - LaunchBox.exe coordinates are x0 y0 w2560 h1400
44117:32:44:710 | RL | INFO | +0 | Main - RocketLauncher received "Nintendo Entertainment System" and "DuckTales (USA)"
44217:32:44:715 | RL | INFO | +0 | Main - Did not find a "H:\RocketLauncher\Settings\Nintendo Entertainment System\Game Options.ini" file, skipping any game-specific options.
44317:32:44:715 | RL | INFO | +0 | Main - DuckTales (USA) is using the default emulator: Retroarch
44417:32:44:715 | RL | INFO | +0 | Main - Checking for a [Retroarch] section in H:\RocketLauncher\Settings\Nintendo Entertainment System\Emulators.ini
44517:32:44:715 | RL | INFO | +0 | Main - Checking for a [Retroarch] section in H:\RocketLauncher\Settings\Global Emulators.ini
44617:32:44:716 | RL | INFO | +0 | Main - Found [Retroarch] in H:\RocketLauncher\Settings\Global Emulators.ini
44717:32:44:717 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Modules\RetroArch CHD\RetroArch.ahk exists
44817:32:44:718 | RL | DEBUG | +0 | CheckFile - Attributes:
449 File Size: 52652 bytes
450 Created: 1/17/2020 - 5:04:28 PM
451 Modified: 2/15/2019 - 1:07:01 PM
45217:32:44:719 | RL | WARNING | +16 | Main - CRC Check - Module has no CRC defined on the header.
45317:32:44:719 | RL | INFO | +0 | Main - DuckTales (USA) will use module: H:\RocketLauncher\Modules\RetroArch CHD\RetroArch.ahk
45417:32:44:732 | RL | INFO | +0 | Main - Using standard method with "Rom Extension" SkipChecks or without any SkipChecks.
45517:32:44:740 | RL | INFO | +15 | CheckFile - Checking if H:\Emulators\RetroArch\retroarch.exe exists
45617:32:44:741 | RL | DEBUG | +0 | CheckFile - Attributes:
457 File Size: 11400192 bytes
458 Created: 1/17/2020 - 12:07:00 PM
459 Modified: 5/8/2019 - 12:07:44 PM
46017:32:44:742 | RL | INFO | +0 | Main - INI Keys read
46117:32:44:742 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Module Extensions\7z.exe exists
46217:32:44:743 | RL | DEBUG | +0 | CheckFile - Attributes:
463 FileDescription 7-Zip Console
464 FileVersion 15.06 beta
465 InternalName 7z
466 LegalCopyright Copyright (c) 1999-2015 Igor Pavlov
467 OriginalFilename 7z.exe
468 ProductName 7-Zip
469 ProductVersion 15.06 beta
470 CompanyName Igor Pavlov
471 File Size: 262144 bytes
472 Created: 1/17/2020 - 5:04:17 PM
473 Modified: 3/5/2016 - 5:03:57 AM
47417:32:44:743 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\Module Extensions\7z.dll exists
47517:32:44:744 | RL | DEBUG | +0 | CheckFile - Attributes:
476 FileDescription 7z Plugin
477 FileVersion 15.06 beta
478 InternalName 7z
479 LegalCopyright Copyright (c) 1999-2015 Igor Pavlov
480 OriginalFilename 7z.dll
481 ProductName 7-Zip
482 ProductVersion 15.06 beta
483 CompanyName Igor Pavlov
484 File Size: 1012224 bytes
485 Created: 1/17/2020 - 5:04:17 PM
486 Modified: 3/5/2016 - 5:03:57 AM
48717:32:44:748 | RL | INFO | +0 | Main - "DuckTales (USA)" does not qualify for MultiGame. Only roms with any of these strings in their name are acceptable: \(Disc|\(Disk|\(Cart|\(Tape|\(Cassette|\(Part|\(Side
48817:32:44:748 | RL | INFO | +0 | CheckPaths - Started
48917:32:44:748 | RL | INFO | +0 | CheckPaths - Not scanning to find the rom because a full path was supplied to RocketLauncher via CLI
49017:32:44:749 | RL | DEBUG | +0 | CheckPaths - Current romName: DuckTales (USA)
49117:32:44:749 | RL | DEBUG | +0 | CheckPaths - Current romPath: H:\LaunchBox\Games\Nintendo Entertainment System
49217:32:44:749 | RL | DEBUG | +0 | CheckPaths - Current romExtension: .nes
49317:32:44:749 | RL | INFO | +0 | CheckPaths - Ended
49417:32:44:750 | RL | INFO | +16 | BuildScript - User Variables:
495 ;----------------------------------------------------------------------------
496 ; INJECTED VARIABLES
497 ;----------------------------------------------------------------------------
498
499 #NoTrayIcon
500 #InstallKeybdHook
501 MiscUtils.DetectHiddenWindows("On")
502 SetTitleMatchMode, 2
503 SendMode, Event
504 Global RLLog
505 Global RLObject
506 0 := "8"
507 rlPath := "H:\RocketLauncher"
508 pluginPath := "H:\RocketLauncher\Plugins"
509 pluginName := "LaunchBox"
510 pluginExt := ".plugin"
511 contextOnExit := ""
512 rlMode := ""
513 rlTitle := "RocketLauncher"
514 rlVersion := "1.2.0.1"
515 rlAuthor := "djvj"
516 rlURL := "www.rlauncher.com"
517 langFile := "H:\RocketLauncher\Data\Language\Localization.ini"
518 primMonitor := "1"
519 frontendPID := "1408"
520 frontendPath := "H:\LaunchBox"
521 frontendExe := "LaunchBox.exe"
522 frontendExt := "exe"
523 frontendName := "LaunchBox"
524 frontendDrive := "H"
525 exitEmulatorKey := "~Esc|2joy7&2joy8"
526 restoreFE := "false"
527 exitScriptKey := "~q & ~s"
528 toggleCursorKey := "~e & ~t"
529 emuFullPath := "H:\Emulators\RetroArch\retroarch.exe"
530 emuPath := "H:\Emulators\RetroArch"
531 emuName := "Retroarch"
532 emuExt := "exe"
533 baseRomPath := ""
534 romPath := "H:\LaunchBox\Games\Nintendo Entertainment System"
535 romPathFromIni := "H:\LaunchBox\Games\Nintendo Entertainment System"
536 romExtension := ".nes"
537 romExtensionOrig := ".nes"
538 romExtensions := "7z|zip|md|sfc|sms|nes|gg|a52|bin|a26|a78|j64|lnx|pce|chd|n64|nds|gb|gbc|gba|vb|gg|ws|wsc|ngp|ngc|dsk|mgw"
539 executable := "retroarch.exe"
540 systemDbName := "Nintendo Entertainment System"
541 systemName := "Nintendo Entertainment System"
542 dbPath := "H:\LaunchBox\Games\Nintendo Entertainment System"
543 dbName := "DuckTales (USA)"
544 dbExt := "nes"
545 romFoundByExt := ""
546 romName := "DuckTales (USA)"
547 romMapPath := ""
548 romMappingEnabled := "false"
549 romMappingLaunchMenuEnabled := "false"
550 romMappingFirstMatchingExt := "false"
551 romMappingShowAllRomsInArchive := "true"
552 romMappingNumberOfGamesByScreen := "7"
553 romMappingHideParent := "false"
554 romMappingMenuWidth := "400"
555 romMappingMenuMargin := "65"
556 romMappingTextFont := "Bebas Neue"
557 romMappingTextOptions := "cFFFFFFFF r4 s60 Bold"
558 romMappingDisabledTextColor := "ff888888"
559 romMappingTextSizeDifference := "7"
560 romMappingTextMargin := "15"
561 romMappingTitleTextFont := "Bebas Neue"
562 romMappingTitleTextOptions := "cFFFFFFFF r4 s90 Bold"
563 romMappingTitle2TextFont := "Bebas Neue"
564 romMappingTitle2TextOptions := "cFFFFFFFF r4 s22 Bold"
565 romMappingGameInfoTextFont := "Bebas Neue"
566 romMappingGameInfoTextOptions := "cFFFFFFFF r4 s22 Regular"
567 romMappingGameNameTextFont := "Bebas Neue"
568 romMappingGameNameTextOptions := "cFFFFFFFF r4 s40 Regular"
569 romMappingBackgroundBrush := "aa000000"
570 romMappingColumnBrush := "33000000"
571 romMappingButtonBrush1 := "6f000000"
572 romMappingButtonBrush2 := "33000000"
573 romMappingBackgroundAlign := "Stretch and Lose Aspect"
574 romMappingMenuFlagWidth := "55"
575 romMappingMenuFlagSeparation := "7"
576 romMappingDefaultMenuList := "FullList"
577 romMappingSingleFilteredRomAutomaticLaunch := "false"
578 altArchiveNameOnly := ""
579 altRomNameOnly := ""
580 altArchiveAndRomName := ""
581 altArchiveAndManyRomNames := ""
582 altRomNamesOnly := ""
583 romMapScenario := ""
584 skipchecks := "false"
585 romMatchExt := "false"
586 blockInputTime := "0"
587 blockInputFile := "H:\RocketLauncher\Module Extensions\BlockInput.exe"
588 errorLevelReporting := "false"
589 lockLaunch := "false"
590 lockLaunchGame := ""
591 screenRotationAngle := "0"
592 screenRotationAngleGame := ""
593 setResolution := ""
594 logFile := ""
595 logLabel := [" INFO"," WARNING"," ERROR"," DEBUG"," TRACE"]
596 logLevel := "10"
597 logShowDebugConsole := "false"
598 logShowCommandWindow := "false"
599 logCommandWindow := "false"
600 logIncludeModule := "true"
601 logIncludeFileProperties := "true"
602 logIncludeDLLLogs := "false"
603 errorSounds := "true"
604 rlDebugConsoleStdout := ""
605 sysLang := "English_United_Kingdom"
606 sysType := "64-bit"
607 broadcastWindowTitle := ""
608 navUpKey := "Up"
609 navDownKey := "Down"
610 navLeftKey := "Left"
611 navRightKey := "Right"
612 navSelectKey := "Enter"
613 navP2UpKey := "Numpad8"
614 navP2DownKey := "Numpad2"
615 navP2LeftKey := "Numpad4"
616 navP2RightKey := "Numpad6"
617 navP2SelectKey := "NumpadEnter"
618 originalWidth := "2560"
619 originalHeight := "1440"
620 vdEnabled := "false"
621 vdFullPath := ""
622 vdUseSCSI := "true"
623 vdDriveLetter := ""
624 vdDriveLetterScsi := ""
625 vdAddDrive := "true"
626 demulShooterPath := ""
627 servoStikEnabled := "false"
628 servoStikExitMode := "false"
629 ledblinkyEnabled := "false"
630 ledblinkySystemName := ""
631 ledblinkyFullPath := ""
632 ledblinkyProfilePath := "H:\RocketLauncher\Profiles\LEDBlinky"
633 ledblinkyRLProfile := "H:\RocketLauncher\Profiles\LEDBlinky\RocketLauncher"
634 winIPACFullPath := ""
635 ultraMapEnabled := "false"
636 ultraMapFullPath := ""
637 emuIdleShutdown := "0"
638 launchPasswordHash := "UpUpDownDownLeftRightLeftRight"
639 cursorSize := ""
640 hideCursor := "false"
641 hideEmu := "false"
642 hideFE := "false"
643 suspendFE := "false"
644 fadeIn := "true"
645 fadeInDuration := "500"
646 fadeInTransitionAnimation := "DefaultAnimateFadeIn"
647 fadeInDelay := "2000"
648 fadeInExitDelay := "0"
649 fadeOutExitDelay := "3000"
650 fadeOut := "true"
651 fadeOutExtraScreen := "false"
652 fadeOutDuration := "500"
653 fadeOutTransitionAnimation := "DefaultAnimateFadeOut"
654 fadeOutDelay := "0"
655 fadeLyrInterpolation := "7"
656 fadeMuteEmulator := "false"
657 fadeUseBackgrounds := "false"
658 fadeClickThrough := "false"
659 fadeSounds := "true"
660 fade7zProgressMode := "extraction"
661 fadeWidthBaseRes := "1920"
662 fadeHeightBaseRes := "1080"
663 fadeLyr1Color := "FF000000"
664 fadeLyr1AlignImage := "Stretch and Lose Aspect"
665 fadeLyr2Pos := "No Alignment"
666 fadeLyr2X := "0"
667 fadeLyr2Y := "0"
668 fadeLyr2W := "1910"
669 fadeLyr2H := "1070"
670 fadeLyr2Adjust := "1"
671 fadeLyr2PicPad := "5"
672 fadeLyr2Prefix := "Extra Layer 1 - Console"
673 fadeLyr3Pos := "Center"
674 fadeLyr3X := ""
675 fadeLyr3Y := ""
676 fadeLyr3W := "1400"
677 fadeLyr3H := "150"
678 fadeLyr3Adjust := "1"
679 fadeLyr3PicPad := "0"
680 fadeLyr3Speed := "750"
681 fadeLyr3Animation := "DefaultFadeAnimation"
682 fadeLyr37zAnimation := "DefaultFadeAnimation"
683 fadeLyr3Type := "imageandbar"
684 fadeLyr3ImgFollow7zProgress := "true"
685 fadeLyr3Repeat := "1"
686 fadeLyr3BackImageTransparency := "30"
687 fadeLyr3StaticPos := "No Alignment"
688 fadeLyr3StaticX := "0"
689 fadeLyr3StaticY := "870|1575"
690 fadeLyr3StaticW := ""
691 fadeLyr3StaticH := ""
692 fadeLyr3StaticAdjust := "1"
693 fadeLyr3StaticPicPad := "0"
694 fadeLyr3StaticPrefix := "Info Bar"
695 fadeLyr4Adjust := "1"
696 fadeLyr4X := "25"
697 fadeLyr4Y := "700"
698 fadeLyr4W := "300"
699 fadeLyr4H := "350"
700 fadeLyr4Pos := "No Alignment"
701 fadeLyr4FPS := "70"
702 fadeLyr4PicPad := "20"
703 fadeTranspGifColor := "FFFFFF"
704 fadeBarWindow := "Image"
705 fadeBarWindowX := ""
706 fadeBarWindowY := ""
707 fadeBarWindowW := "900"
708 fadeBarWindowH := ""
709 fadeBarWindowR := "30"
710 fadeBarWindowM := "30"
711 fadeBarWindowHatchStyle := "8"
712 fadeBar := "false"
713 fadeProgressDuration := "0"
714 fadeBarBack := "true"
715 fadeBarBackColor := "FF555555"
716 fadeBarH := "30"
717 fadeBarR := "10"
718 fadeBarColor := "DD00BFFF"
719 fadeBarHatchStyle := "8"
720 fadeBarPercentageText := "true"
721 fadeBarInfoText := "true"
722 fadeBarXOffset := "0"
723 fadeBarYOffset := "150"
724 fadeRomInfoDescription := "image"
725 fadeRomInfoSystemName := "disabled"
726 fadeRomInfoYear := "filtered text with label"
727 fadeRomInfoDeveloper := "disabled"
728 fadeRomInfoPublisher := "image"
729 fadeRomInfoGenre := "disabled"
730 fadeRomInfoRating := "disabled"
731 fadeRomInfoOrder := "Description|SystemName|Year|Genre|Publisher|Developer|Rating"
732 fadeRomInfoTextPlacement := "User Defined"
733 fadeRomInfoTextMargin := "7"
734 fadeRomInfoText1Options := "w350 h175 x1525 y685 cFFFFFFFF r4 s90 Top Regular"
735 fadeRomInfoText2Options := "w700 x365 y840 cFFFFFFFF r4 s48 Bold Underline NoWrap"
736 fadeRomInfoText3Options := "w700 x893 y865 cFFFFFFFF r4 s48 Right Regular Underline NoWrap"
737 fadeRomInfoText4Options := ""
738 fadeRomInfoText5Options := "w275 h150 x1600 y880 Top"
739 fadeRomInfoText6Options := ""
740 fadeRomInfoText7Options := "w150 h100 x1400 y250"
741 fadeStats_Number_of_Times_Played := "text with label"
742 fadeStats_Last_Time_Played := "text with label"
743 fadeStats_Average_Time_Played := "disabled"
744 fadeStats_Total_Time_Played := "text with label"
745 fadeStats_System_Total_Played_Time := "disabled"
746 fadeStats_Total_Global_Played_Time := "disabled"
747 fadeStatsInfoOrder := "Number_of_Times_Played|Last_Time_Played|Average_Time_Played|Total_Time_Played|System_Total_Played_Time|Total_Global_Played_Time"
748 fadeStatsInfoTextPlacement := "User Defined"
749 fadeStatsInfoTextMargin := "7"
750 fadeStatsInfoText1Options := "w700 x890 y930 cFFDFDFDF r4 s25 Right Bold NoWrap"
751 fadeStatsInfoText2Options := "w700 x890 y965 cFFDFDFDF r4 s25 Right Bold NoWrap"
752 fadeStatsInfoText3Options := ""
753 fadeStatsInfoText4Options := "w700 x890 y1000 cFFDFDFDF r4 s25 Right Bold NoWrap"
754 fadeStatsInfoText5Options := ""
755 fadeStatsInfoText6Options := ""
756 fadeText1X := "0"
757 fadeText1Y := "0"
758 fadeText1Options := "cFFB4B4B4 r4 s30 Right Bold"
759 fadeText1 := "Loading Game"
760 fadeText2X := "0"
761 fadeText2Y := "0"
762 fadeText2Options := "cFFB4B4B4 r4 s30 Right Bold"
763 fadeText2 := "Extraction Complete, Ready"
764 fadeText3 := "Loading Game"
765 fadeText4 := "Loading Complete"
766 fadeFont := "Impact"
767 fadeSystemAndRomLayersOnly := "true"
768 fadeExtractionTime := "disabled"
769 fadeExtractionTimeTextX := "0"
770 fadeExtractionTimeTextY := "0"
771 fadeExtractionTimeTextOptions := "cFF555555 r4 s20 Bold"
772 fadeInterruptKey := ""
773 detectFadeErrorEnabled := "true"
774 fadeImgPath := "H:\RocketLauncher\Media\Fade"
775 RLDataPath := "H:\RocketLauncher\Data"
776 RLMediaPath := "H:\RocketLauncher\Media"
777 RLErrSoundPath := "H:\RocketLauncher\Media\Sounds\Error"
778 modulesPath := "H:\RocketLauncher\Modules"
779 moduleFullName := "H:\RocketLauncher\Modules\RetroArch CHD\RetroArch.ahk"
780 moduleName := "RetroArch"
781 modulePath := "H:\RocketLauncher\Modules\RetroArch CHD"
782 moduleExtension := "ahk"
783 moduleExtensionsPath := "H:\RocketLauncher\Module Extensions"
784 libPath := "H:\RocketLauncher\Lib"
785 sevenZEnabled := "false"
786 sevenZPath := "H:\RocketLauncher\Module Extensions\7z.exe"
787 sevenZDllPath := "H:\RocketLauncher\Module Extensions\7z.dll"
788 sevenZExtractPath := "H:\RocketLauncher\Temp"
789 sevenZExtractPathOrig := ""
790 sevenZAttachSystemName := "false"
791 sevenZDelTemp := "true"
792 sevenZFormats := ".zip|.rar|.7z|.lha|.lzh|.gzip|.tar"
793 sevenZFormatsNoP := "zip|rar|7z|lha|lzh|gzip|tar"
794 sevenZFormatsRegEx := "\.zip|\.rar|\.7z|\.lha|\.lzh|\.gzip|\.tar"
795 sevenZGamesToKeep := ""
796 sevenZDeletePerSystem := "false"
797 sevenZExtensions := "zip|rar|7z|lha|lzh|gzip|tar"
798 7zExtractPath := "H:\RocketLauncher\Temp"
799 mgEnabled := "true"
800 mgKey := "~NumpadSub"
801 mgBackgroundColor := "FF000000"
802 mgSidePadding := "0.2"
803 mgWidthBaseRes := "1920"
804 mgHeightBaseRes := "1080"
805 mgYOffset := "500|800"
806 mgFont := "Arial"
807 mgText1Options := "x10p y250|500 w80p Center cBBFFFFFF r4 s100 BoldItalic"
808 mgText1Text := "Please select a game"
809 mgText2Options := "w96p cFFFFFFFF r4 s50 Center BoldItalic"
810 mgText2Offset := "100"
811 mgUseSound := "true"
812 mgSoundfreq := "300"
813 mgExitEffect := "none"
814 mgSelectedEffect := "rotate"
815 mgUseGameArt := "false"
816 mgCandidate := ""
817 mgValidTypes := "\(Disc|\(Disk|\(Cart|\(Tape|\(Cassette|\(Part|\(Side"
818 mgOnLaunch := "false"
819 pauseEnabled := "true"
820 pauseKey := "~NumpadAdd"
821 pauseBackToMenuBarKey := "X"
822 pauseZoomInKey := "C"
823 pauseZoomOutKey := "V"
824 pauseScreenshotKey := "~PrintScreen"
825 pauseHiToTextPath := "H:\RocketLauncher\Module Extensions\HiToText.exe"
826 pauseSaveStateKeyCodes := ""
827 pauseLoadStateKeyCodes := ""
828 keyboardEncoder := ""
829 keyboardEncoderEnabled := "false"
830 keymapperEnabled := "false"
831 keymapperAHKMethod := "false"
832 keymapper := "xpadder"
833 xpadderFullPath := "H:\Utilities\Xpadder\xpadder.exe"
834 joyToKeyFullPath := "H:\Utilities\JoyToKey\JoyToKey.exe"
835 profilePath := "H:\RocketLauncher\Profiles"
836 keymapperProfilePath := "H:\RocketLauncher\Profiles\xpadder"
837 keymapperFrontEndProfileName := "RocketLauncherUI"
838 keymapperFrontEndProfile := "false"
839 keymapperRocketLauncherProfileEnabled := "false"
840 joyIDsEnabled := "false"
841 joyIDsPreferredControllersGlobal := ""
842 joyIDsPreferredControllersSystem := "use_global"
843 joyIDsPreferredControllersOnExit := ""
844 CustomJoyNamesEnabled := "false"
845 CustomJoyNames := ""
846 rotateMethod := "false"
847 FEProfile := "H:\RocketLauncher\Profiles\xpadder\RocketLauncherUI"
848 defaultProfile := "H:\RocketLauncher\Profiles\xpadder\_Default"
849 systemProfile := "H:\RocketLauncher\Profiles\xpadder\Nintendo Entertainment System"
850 xPadderSystemProfile := "H:\RocketLauncher\Profiles\xpadder\Nintendo Entertainment System\_Default"
851 emuProfile := "H:\RocketLauncher\Profiles\xpadder\Nintendo Entertainment System\Retroarch"
852 romProfile := "H:\RocketLauncher\Profiles\xpadder\Nintendo Entertainment System\DuckTales (USA)"
853 RocketLauncherProfile := "H:\RocketLauncher\Profiles\xpadder\RocketLauncher"
854 blankProfile := "H:\RocketLauncher\Profiles\xpadder\_Default\blank"
855 ahkFEProfile := "H:\RocketLauncher\Profiles\AHK\RocketLauncherUI"
856 ahkDefaultProfile := "H:\RocketLauncher\Profiles\AHK\_Default"
857 ahkSystemProfile := "H:\RocketLauncher\Profiles\AHK\Nintendo Entertainment System"
858 ahkEmuProfile := "H:\RocketLauncher\Profiles\AHK\Nintendo Entertainment System\Retroarch"
859 ahkRomProfile := "H:\RocketLauncher\Profiles\AHK\Nintendo Entertainment System\DuckTales (USA)"
860 ahkRocketLauncherProfile := "H:\RocketLauncher\Profiles\AHK\RocketLauncher"
861 bezelEnabled := "true"
862 bezelICEnabled := "false"
863 shaderName := "false"
864 shaderColor := ""
865 shaderTransparency := ""
866 statisticsEnabled := "true"
867 pressDuration := "-1"
868 emuVolume := "1"
869 dxwndIni := "H:\RocketLauncher\Module Extensions\dxwnd\dxwnd.ini"
870 dxwndFullPath := "H:\RocketLauncher\Module Extensions\dxwnd\dxwnd.exe"
871 qResFullPath := "H:\RocketLauncher\Module Extensions\QRes.exe"
872 mon1O := ""
873 pacDrivedllFile := "H:\RocketLauncher\Module Extensions\PacDrive32.dll"
874 userFadeAnimIniFile := "H:\RocketLauncher\Lib\User Fade Animations.ini"
875 testFile := ""
876 testDuration := ""
877 initialErrorMode := "0"
878
87917:32:44:751 | RL | INFO | +0 | BuildScript - Loaded XHotkey Init.ahk scripts
88017:32:44:751 | RL | INFO | +0 | BuildScript - Loaded Fade Init.ahk scripts
88117:32:44:751 | RL | INFO | +0 | BuildScript - Loaded Pause Init.ahk scripts
88217:32:44:751 | RL | INFO | +0 | BuildScript - Loaded Statistics Init.ahk scripts
88317:32:44:751 | RL | INFO | +0 | BuildScript - Loaded MultiGame Init.ahk scripts
88417:32:44:751 | RL | DEBUG | +0 | BuildScript - Module starts on line: 2
88517:32:44:752 | RL | INFO | +0 | BuildScript - Validating module
88617:32:44:757 | RL | INFO | +0 | BuildScript - Validation complete
88717:32:44:758 | RL | INFO | +0 | BuildScript - Module:
888 MEmu := "RetroArch Beta"
889 MEmuV := "v0.0.1"
890 MURL := ["http://themaister.net/retroarch.html"]
891 MAuthor := ["djvj","zerojay","SweatyPickle"]
892 MVersion := "0.0.1"
893
894 MSystem := ["Acorn BBC Micro","AAE","Amstrad CPC","Amstrad GX4000","APF Imagination Machine","Applied Technology MicroBee","Apple IIGS","Arcade","Arcade Classics","Atari 2600","Atari 5200","Atari 7800","Atari 8-Bit","Atari Classics","Atari Jaguar","Atari Lynx","Atari ST","Atari XEGS","Bally Astrocade","Bandai Gundam RX-78","Bandai Super Vision 8000","Bandai Wonderswan","Bandai Wonderswan Color","Canon X07","Capcom Classics","Capcom Play System","Capcom Play System II","Capcom Play System III","Casio PV-1000","Casio PV-2000","Cave","Coleco ADAM","ColecoVision","Commodore MAX Machine","Commodore Amiga","Creatronic Mega Duck","Data East Classics","Dragon Data Dragon","Emerson Arcadia 2001","Entex Adventure Vision","Elektronika BK","Epoch Game Pocket Computer","Epoch Super Cassette Vision","Exidy Sorcerer","Fairchild Channel F","Final Burn Alpha","Fujitsu FM Towns","Funtech Super Acan","GamePark 32","GCE Vectrex","Hartung Game Master","Interton VC 4000","Irem Classics","JungleTac Sport Vii","Konami Classics","MAME","Magnavox Odyssey 2","Microsoft MSX","Nintendo 64 HD","Microsoft MSX2","Matra & Hachette Alice","Mattel Aquarius","Mattel Intellivision","Midway Classics","Namco Classics","Namco System 22","NEC PC Engine","NEC PC Engine-CD","NEC PC-FX","NEC TurboGrafx-16","NEC SuperGrafx","NEC TurboGrafx-CD","NES HD","Nintendo 64","Nintendo 64DD","Nintendo Arcade Systems","Nintendo Classics","Nintendo DS","Nintendo Entertainment System","Nintendo Famicom","Nintendo Famicom Disk System","Nintendo Game Boy","Nintendo Game Boy Color","Nintendo Game Boy Japan","Nintendo Game Boy Advance","Nintendo Game & Watch","Nintendo Super Game Boy","Nintendo Pokemon Mini","Nintendo Virtual Boy","Nintendo Super Famicom","Nintendo Satellaview","Nintendo SuFami Turbo","Panasonic 3DO","Elektronska Industrija Pecom 64","Philips CD-i","Philips Videopac","RCA Studio II","ScummVM","Sega 32X","Sega Classics","Sega Mega Drive 32X","Sega Mark III","Sega SC-3000","Sega SG-1000","Sega CD","Sega Dreamcast","Sega Game Gear","Sega Genesis","Sega Master System","Sega Mega Drive","Sega Meganet","Sega Nomad","Sega Pico","Super Nintendo MSU-1","Sega Saturn","Sega Saturn Japan","Sega VMU","Sega ST-V","Sharp X1","Sharp X68000","Sinclair ZX Spectrum","Sinclair ZX81","Sony PlayStation","Sony PlayStation Minis","Sony PocketStation","Sony PSP","Sony PSP Minis","Sord M5","SNK Classics","SNK Neo Geo","SNK Neo Geo AES","SNK Neo Geo MVS","SNK Neo Geo Pocket","SNK Neo Geo CD","SNK Neo Geo Pocket Color","Spectravideo","Super Nintendo Entertainment System","Taito Classics","Tandy TRS-80 Color Computer","Technos","Texas Instruments TI 99-4A","Thomson MO5","Thomson TO7","Tiger Game.com","Tiki-100","Tomy Tutor","VTech CreatiVision","Watara Supervision","Williams Classics","Sega CD 32X"]
895 ;----------------------------------------------------------------------------
896 ; Notes:
897 ; If the emu doesn't load and you get no error, usually this means the LibRetro DLL is not working!
898 ; Devs stated they will never add support for mounted images (like via DT)
899 ; Fullscreen is controlled via the module setting in RocketLauncherUI
900 ; This module uses the CLI version of RetroArch (retroarch.exe), not the GUI (retroarch-phoenix.exe).
901 ; The emu may make a mouse cursor appear momentarily during launch, MouseMove and hide_cursor seem to have no effect
902 ; Enable 7z support for archived roms
903 ; Available CLI options: https://github.com/PyroFilmsFX/iOS/blob/master/docs/retroarch.1
904 ;
905 ; LibRetro DLLs:
906 ; LibRetro DLLs come with the emu, but here is another source for them: http://forum.themaister.net/
907 ; Whatever cores you decide to use, make sure they are extracted anywhere in your Emu_Path\cores folder. The module will find and load the default core unless you choose a custom one for each system.
908 ; You can find supported cores that Retroarch supports simply by downloading them from the "retroarch-phoenix.exe" or by visiting here: https://github.com/libretro/libretro.github.com/wiki/Supported-cores
909 ; Some good discussion on cores and filters: http://forum.themaister.net/viewtopic.php?id=270
910 ;
911 ; SRM files:
912 ; The srm files location is determined by the configuration file used (savefile_directory = ":\whatever") The default RetroArch srm directory is ":\saves" You can select to sort into core folders (ie: :/saves/Mednafen PSX) by changing sort_savefiles_enable = "true" in the configuration file.
913 ;
914 ; Save states:
915 ; The save state files location is determined by the configuration file used (savestate_directory = ":\whatever") The default RetroArch savestate directory is ":\states" You can select to sort into core folders (ie: :/states/Mednafen PSX) by changing sort_savestates_enable = "true" in the configuration file.
916 ;
917 ; Config files:
918 ; By default, the module looks for config files in a folder called config in the RetroArch folder. Example: C:\emus\RetroArch\config. You can change this folder to anything you like by changing the module's ConfigFolder setting in RocketLauncherUI. This will be the config folder for the module and will NOT change the location of RetroArch's own /config directory.
919 ; RetroArch's global config file is called "retroarch.cfg". RetroArch will use a system cfg file named to match your System Name (example: Nintendo Entertainment System.cfg).
920 ; RetroArch will also load core config files named after the core name. Example: nestopia_libretro.cfg
921 ; This allows different settings globally, for each system, and for each core. If you want all systems to use the same retroarch.cfg, do not have any system or core cfg files, only have the retroarch.cfg.
922 ; If a core config exists, it takes precedence over the global config. And if a system config exists, it takes precedence over the core config.
923 ;
924 ; Core Options:
925 ; By default, RetroArch creates a retroarch-core-options.cfg in it's root directory. Example: C:\emus\RetroArch\retroarch-core-options.cfg. This will always be used if the default RetroArch.cfg is loaded. If a configuration file from any other location is used, RetroArch will create a retroarch-core-options.cfg file in the root of that directory. The module has an option to have RetroArch use only the default retroarch-core-options.cfg file no matter the path of the config directory or location of the configuiration file being used. To enable this option set Single_Core_Options to true.
926
927 ; MultiGame:
928 ; MultiGame support is currently only available for the Mednafen PSX core. Retroarch uses the same method as Mednafen to load multi-disc games. This method involves m3u playlists which are commonly used for music. The m3u files needed to load multi-disc games are generated for you by the module when you launch a multi-disc game and are saved to your corresponding rom directory. Due to m3u limitations, your multi-disc roms/images cannot be archived -- they must be unzipped. All single disc games can remain archived and you can still enable 7z under system settings. If you do not wish to use MultiGame support you can archive your roms/images and m3u generation will be skipped on launch.
929 ; The m3u files generated by the module contain a list of paths to all roms/images in the multi-disc set. Retroarch automatically loads the first path in the m3u so the first path will always be the disc you are loading. For example, Final Fantasy VII has 3 discs and if you load Disc 2 first, the order of the paths in the m3u will be disc 2, disc 3, disc 1. If you load Disc 3 first, the order will be disc 3, disc 1, disc 2. The module anticipates this and will load the correct disk, selected from the Pause/MultiDisk menus. However if you choose to manually use Retroarch's UI or disk swap keys to change discs, you will need to keep this in mind.
930 ; In order for RocketLauncher's MultiGame UI to swap discs, you must define Eject_Toggle_Key, Next_Disk_Key, and Previous_Disk_Key under global settings for the emulator in RocketLauncher. Because AHK and Retroarch use different naming conventions for some keyboard keys, it is best to use a letter, a number, or F1-F12.
931 ;
932 ; MAME:
933 ; MAME BIOS roms should be placed in Rom Path's directory. Some systems require the BIOS roms be placed in the MAME internal name directory. (Example: :\Rom Folder\a5200). The MAME BIOS_Roms_Folder option will have no effect unless you are using an older version of the mess core.
934 ;
935 ; System Specific Notes:
936 ; Microsoft MSX/MSX2: Launch an MSX game and in the core options, set the console to be an MSX2 and it will play both just fine.
937 ; Nintendo Famicom Disk System - Requires disksys.rom be placed in the folder you define as system_directory in the RetroArch's cfg.
938 ; Sega CD - Requires "bios_CD_E.bin", "bios_CD_J.bin", "bios_CD_U.bin" all be placed in the folder you define as system_directory in the RetroArch's cfg.
939 ; Super Nintendo Entertainment System - requires split all 10 dsp# & st### roms all be placed in the folder you define as system_directory in the RetroArch's cfg. Many games, like Super Mario Kart require these.
940 ; NEC TurboGrafx-CD (using pce fast core) - Requires "syscard3.pce" be placed in the folder you define as system_directory in the RetroArch's cfg.
941 ; NEC TurboGrafx-CD (using MAME core)
942 ; - You'll need to update a couple mame specific options in the Retroarch core options file to get it to boot from the cli. These should probably be updated automagically by the module. Turning softlists off, but might not need to.
943 ; mame_boot_from_cli = "enabled"
944 ; mame_softlists_enable = "disabled"
945 ; mame_softlists_auto_media = "disabled"
946 ; - Requires hash folder from MAME/MESS/UME, either from the source or release package. Save this in the system_directory you've defined for RetroArch. Something like \RetroArch\system\mame\hash\
947 ; - Requires the CD bios file(s) saved in the mame bios folder you've defined. Usually \RetroArch\system\mame\bios\
948 ; For PC Engine-CD you'll need the file "[cd] cd-rom system (japan) (v2.1).pce" zipped as cdsys.zip and saved in a pce subfolder in your bios path, so \RetroArch\system\mame\bios\pce\cdsys.zip
949 ; For PC Engine SuperGrafx-CD you'll need the file "[cd] super cd-rom system (japan) (v3.0).pce" zipped as scdsys.zip and saved in a pce subfolder in your bios path, so \RetroArch\system\mame\bios\pce\scdsys.zip
950 ; For TurboGrafx-CD you'll need the file "[cd] turbografx cd system card (usa) (v2.0).pce" zipped as cdsys.zip and saved in a tg16 subfolder in your bios path, so \RetroArch\system\mame\bios\tg16\cdsys.zip
951 ; For TurboDuo you'll need the file "[cd] turbografx cd super system card (usa) (v3.0).pce" zipped as scdsys.zip and saved in a tg16 subfolder in your bios path, so \RetroArch\system\mame\bios\tg16\scdsys.zip
952 ; Nintendo Super Game Boy - Set the Module setting in RocketLauncherUI SuperGameBoy to true to enable a system or only a rom to use SGB mode. This is not needed if your systemName is set to the official name of "Nintendo Super Game Boy". Requires "sgb.boot.rom" and "Super Game Boy (World).sfc" to be placed in the folder you define as system_directory in the RetroArch's cfg. This is needed if you want to use Super game boy mode and color palettes. Also requires using the latest bsnes core. Not all games support SGB mode.
953 ; Sony PSP/PlayStation Minis: To avoid the dialog box complaining about ppge_atlas.zim, download it from https://github.com/libretro/libretro-ppsspp/blob/master/assets/ppge_atlas.zim and place it in your Retroarch/system/PPSSPP/ directory.
954 ;----------------------------------------------------------------------------
955 StartModule()
956 BezelGUI()
957 FadeInStart()
958
959 primaryExe := new Emulator(emuPath . "\" . executable) ; instantiate emulator executable object
960 emuPrimaryWindow := new Window(new WindowTitle("RetroArch","RetroArch")) ; instantiate primary emulator window object
961 emuConsoleWindow := new Window(new WindowTitle("","ConsoleWindowClass")) ; instantiate emulator console window object
962
963 ; Here we define all supported systems for this module. This object controls how the module reacts to different systems. RetroArch can play a lot of systems, but needs to know what system you want to run, so this module has to adapt.
964 ; 1 - Official System Name in RocketLauncher
965 ; 2 - Short name used only for easy referencing within module
966 ; 3 - Default core
967 ; 4 - The system ID MAME core recognizes
968 RLLog.Debug("Module - Started building the " . MEmu . " object")
969 mTypeVar:="
970 ( LTrim
971 AAE|LibRetro_AAE|mame_libretro
972 Acorn BBC Micro|LibRetro_BBCB|mame_libretro|bbcb
973 Amstrad CPC|LibRetro_CPC|mame_libretro|cpc464
974 Amstrad GX4000|LibRetro_GX4K|mame_libretro|gx4000
975 APF Imagination Machine|LibRetro_APF|mame_libretro|apfimag
976 Apple IIGS|LibRetro_AIIGS|mame_libretro|apple2gs
977 Applied Technology MicroBee|LibRetro_MBEE|mame_libretro|mbeeic
978 Arcade|LibRetro_ARCADE|mame_libretro
979 Arcade Classics|LibRetro_ARCADE|mame_libretro
980 Atari 2600|LibRetro_2600|stella_libretro|a2600
981 Atari 5200|LibRetro_5200|mame_libretro|a5200
982 Atari 7800|LibRetro_7800|prosystem_libretro|a7800
983 Atari 8-Bit|LibRetro_ATARI8|mame_libretro|a800
984 Atari Classics|LibRetro_ACLS|mame_libretro
985 Atari Jaguar|LibRetro_JAG|virtualjaguar_libretro|jaguar
986 Atari Lynx|LibRetro_LYNX|handy_libretro|lynx
987 Atari ST|LibRetro_ST|hatari_libretro
988 Atari XEGS|LibRetro_XEGS|mame_libretro|xegs
989 Bally Astrocade|LibRetro_BAST|mame_libretro|astrocde
990 Bandai Gundam RX-78|LibRetro_BGRX|mame_libretro|rx78
991 Bandai Super Vision 8000|LibRetro_SV8K|mame_libretro|sv8000
992 Bandai Wonderswan|LibRetro_WSAN|mednafen_wswan_libretro|wswan
993 Bandai Wonderswan Color|LibRetro_WSANC|mednafen_wswan_libretro|wscolor
994 Canon X07|LibRetro_CX07|mame_libretro|x07
995 Capcom Classics|LibRetro_CAPC|mame_libretro
996 Capcom Play System|LibRetro_CPS1|fbalpha_libretro
997 Capcom Play System II|LibRetro_CPS2|fbalpha_libretro
998 Capcom Play System III|LibRetro_CPS3|mame_libretro
999 Casio PV-1000|LibRetro_CAS1K|mame_libretro|pv1000
1000 Casio PV-2000|LibRetro_CAS2K|mame_libretro|pv2000
1001 Cave|LibRetro_CAVE|mame_libretro
1002 Coleco ADAM|LibRetro_ADAM|mame_libretro|adam
1003 ColecoVision|LibRetro_COLEC|mame_libretro|coleco
1004 Commodore Amiga|LibRetro_PUAE|puae_libretro
1005 Commodore Max Machine|LibRetro_CMAX|mame_libretro|vic10
1006 Creatronic Mega Duck|LibRetro_DUCK|mame_libretro|megaduck
1007 Data East Classics|LibRetro_DATA|mame_libretro
1008 Dragon Data Dragon|LibRetro_DRAG64|mame_libretro|dragon64
1009 Elektronika BK|LibRetro_EBK|mame_libretro|bk0010
1010 Elektronska Industrija Pecom 64|LibRetro_P64|mame_libretro|pecom64
1011 Emerson Arcadia 2001|LibRetro_A2001|mame_libretro|arcadia
1012 Entex Adventure Vision|LibRetro_AVISION|mame_libretro|advision
1013 Epoch Game Pocket Computer|LibRetro_GPCKET|mame_libretro|gamepock
1014 Epoch Super Cassette Vision|LibRetro_SCV|mame_libretro|scv
1015 Exidy Sorcerer|LibRetro_SORCR|mame_libretro|sorcerer
1016 Fairchild Channel F|LibRetro_CHANF|mame_libretro|channelf
1017 Final Burn Alpha|LibRetro_FBA|fbalpha_libretro
1018 Fujitsu FM Towns|LibRetro_MAME|mame_libretro
1019 Funtech Super Acan|LibRetro_SACAN|mame_libretro|supracan
1020 GamePark 32|LibRetro_GP32|mame_libretro|gp32
1021 GCE Vectrex|LibRetro_VECTX|mame_libretro|vectrex
1022 Hartung Game Master|LibRetro_GMASTR|mame_libretro|gmaster
1023 Interton VC 4000|LibRetro_VC4K|mame_libretro|vc4000
1024 Irem Classics|LibRetro_IREM|mame_libretro
1025 JungleTac Sport Vii|LibRetro_SPORTV|mame_libretro|vii
1026 Konami Classics|LibRetro_KONC|mame_libretro
1027 Magnavox Odyssey 2|LibRetro_ODYS2|mame_libretro|odyssey2
1028 MAME|LibRetro_MAME|mame_libretro|mame
1029 Matra & Hachette Alice|LibRetro_ALICE|mame_libretro|alice32
1030 Mattel Aquarius|LibRetro_AQUA|mame_libretro|aquarius
1031 Mattel Intellivision|LibRetro_INTV|mame_libretro|intv
1032 MGT Sam Coupe|LibRetro_SAMCP|mame_libretro|
1033 Microsoft MS-DOS|LibRetro_MSDOS|dosbox_libretro
1034 Microsoft MSX|LibRetro_MSX|bluemsx_libretro
1035 Microsoft MSX2|LibRetro_MSX2|bluemsx_libretro
1036 Microsoft Windows 3.x|LibRetro_WIN3X|dosbox_libretro
1037 Midway Classics|LibRetro_MIDC|mame_libretro
1038 Namco Classics|LibRetro_NAMC|mame_libretro
1039 Namco System 22|LibRetro_NAM2|mame_libretro
1040 NEC PC Engine|LibRetro_PCE|mednafen_pce_fast_libretro|pce,cart
1041 NEC PC Engine-CD|LibRetro_PCECD|mednafen_pce_fast_libretro|pce,cdrom
1042 NEC PC-FX|LibRetro_PCFX|mednafen_pcfx_libretro
1043 NEC SuperGrafx|LibRetro_SGFX|mednafen_supergrafx_libretro|sgx,cart
1044 NEC TurboGrafx-16|LibRetro_TG16|mednafen_pce_fast_libretro|tg16,cart
1045 NEC TurboGrafx-CD|LibRetro_TGCD|mednafen_pce_fast_libretro|tg16,cdrom
1046 NES HD|LibRetro_NES|mesen_libretro.dll|nes
1047 Nintendo 64|LibRetro_N64|mupen64plus_libretro|n64
1048 Nintendo 64 HD|LibRetro_N64|mupen64plus_libretro|n64
1049 Nintendo 64DD|LibRetro_N64|mupen64plus_libretro
1050 Nintendo Arcade Systems|LibRetro_NINARC|mame_libretro
1051 Nintendo Classics|LibRetro_NINC|mame_libretro
1052 Nintendo DS|LibRetro_DS|desmume_libretro
1053 Nintendo Entertainment System|LibRetro_NES|nestopia_libretro|nes
1054 Nintendo Famicom|LibRetro_NFAM|nestopia_libretro
1055 Nintendo Famicom Disk System|LibRetro_NFDS|nestopia_libretro|famicom
1056 Nintendo Game Boy|LibRetro_GB|gambatte_libretro|gameboy
1057 Nintendo Game Boy Advance|LibRetro_GBA|vba_next_libretro|gba
1058 Nintendo Game Boy Color|LibRetro_GBC|gambatte_libretro|gbcolor
1059 Nintendo Game Boy Japan|LibRetro_GBJ|gambatte_libretro|gameboy
1060 Nintendo Game & Watch|LibRetro_GW|gw_libretro
1061 Nintendo Pokemon Mini|LibRetro_POKE|mame_libretro|pokemini
1062 Nintendo Satellaview|LibRetro_NSFS|snes9x_libretro
1063 Nintendo SuFami Turbo|LibRetro_NSFST|snes9x_libretro
1064 Nintendo Super Famicom|LibRetro_NSF|bsnes_balanced_libretro
1065 Nintendo Super Game Boy|LibRetro_SGB|bsnes_balanced_libretro
1066 Nintendo Virtual Boy|LibRetro_NVB|mednafen_vb_libretro|vboy
1067 Othello Multivision|LibRetro_OTHO|genesis_plus_gx_libretro
1068 Panasonic 3DO|LibRetro_3DO|4do_libretro
1069 Philips CD-i|LibRetro_CDI|mame_libretro|cdimono1
1070 Philips Videopac|LibRetro_PVID|mame_libretro|videopac
1071 RCA Studio II|LibRetro_STUD2|mame_libretro|studio2
1072 SCUMMVM|LibRetro_SCUMM|scummvm_libretro
1073 Sega 32X|LibRetro_32X|picodrive_libretro|32x
1074 Sega CD|LibRetro_SCD|genesis_plus_gx_libretro|segacd
1075 Sega CD 32X|Libretro_PICO|picodrive_libretro
1076 Sega Classics|LibRetro_SEGC|mame_libretro
1077 Sega Dreamcast|LibRetro_DCAST|reicast_libretro
1078 Sega Game Gear|LibRetro_GG|genesis_plus_gx_libretro|gamegear
1079 Sega Genesis|LibRetro_GEN|genesis_plus_gx_libretro|genesis
1080 Sega Mark III|Libretro_SM3|genesis_plus_gx_libretro
1081 Sega Master System|LibRetro_SMS|genesis_plus_gx_libretro|sms
1082 Sega Mega Drive|LibRetro_GEN|genesis_plus_gx_libretro|megadriv
1083 Sega Mega Drive 32X|LibRetro_MD32X|picodrive_libretro
1084 Sega Meganet|LibRetro_GEN|genesis_plus_gx_libretro|genesis
1085 Sega Nomad|LibRetro_GEN|genesis_plus_gx_libretro|genesis
1086 Sega Pico|LibRetro_PICO|picodrive_libretro
1087 Sega Saturn|LibRetro_SAT|yabause_libretro|saturn
1088 Sega Saturn Japan|LibRetro_SAT|yabause_libretro|saturnjp
1089 Sega SC-3000|LibRetro_SC3K|mame_libretro|sc3000
1090 Sega SG-1000|LibRetro_SG1K|genesis_plus_gx_libretro
1091 Sega ST-V|LibRetro_STV|mame_libretro
1092 Sega VMU|LibRetro_SVMU|mame_libretro|svmu
1093 Sharp X1|LibRetro_SX1|mame_libretro|x1
1094 Sharp X68000|LibRetro_SX68000|mame_libretro|x68000
1095 Sinclair ZX Spectrum|LibRetro_SPECZX|mame_libretro|spectrum
1096 Sinclair ZX81|LibRetro_ZX81|81_libretro|zx81
1097 SNK Classics|LibRetro_SNKC|mame_libretro
1098 SNK Neo Geo|LibRetro_NEO|fbalpha_libretro
1099 SNK Neo Geo AES|LibRetro_NEOAES|mame_libretro|aes
1100 SNK Neo Geo CD|LibRetro_NEOCD|mame_libretro|neocdz
1101 SNK Neo Geo MVS|LibRetro_NEOMVS|mame_libretro
1102 SNK Neo Geo Pocket|LibRetro_NGP|mednafen_ngp_libretro|ngp
1103 SNK Neo Geo Pocket Color|LibRetro_NGPC|mednafen_ngp_libretro|ngpc
1104 Sony PlayStation|LibRetro_PSX|mednafen_psx_libretro|psu
1105 Sony PlayStation Minis|LibRetro_PSXMIN|ppsspp_libretro
1106 Sony PocketStation|LibRetro_POCKS|mame_libretro|pockstat
1107 Sony PSP|LibRetro_PSP|ppsspp_libretro
1108 Sony PSP Minis|LibRetro_PSP|ppsspp_libretro
1109 Sord M5|LibRetro_SORD|mame_libretro|m5
1110 Spectravideo|LibRetro_SV328|mame_libretro|svi328n
1111 Super Nintendo Entertainment System|LibRetro_SNES|bsnes_balanced_libretro|snes
1112 Super Nintendo MSU-1|LibRetro_SNES|snes9X_libretro
1113 Taito Classics|LibRetro_TAIC|mame_libretro
1114 Tandy TRS-80 Color Computer|LibRetro_TRS80|mame_libretro|coco3
1115 Technos|LibRetro_TECHN|mame_libretro
1116 Texas Instruments TI 99-4A|LibRetro_TI99|mame_libretro|ti99_4a
1117 Thomson MO5|LibRetro_MO5|mame_libretro|mo5
1118 Thomson TO7|LibRetro_TO7|mame_libretro|to7
1119 Tiger Game.com|LibRetro_TCOM|mame_libretro|gamecom
1120 Tiki-100|LibRetro_TIKI|mame_libretro|kontiki
1121 Tomy Tutor|LibRetro_TOMY|mame_libretro|tutor
1122 VTech CreatiVision|LibRetro_VTECH|mame_libretro|crvision
1123 Watara Supervision|LibRetro_SUPRV|mame_libretro|svision
1124 Williams Classics|LibRetro_WILLS|mame_libretro
1125 )"
1126 mType := Object()
1127 Loop, Parse, mTypeVar, `n, `r
1128 {
1129 obj := {}
1130 Loop, Parse, A_LoopField, |
1131 {
1132 If (A_Index = 1)
1133 obj.System := A_LoopField
1134 Else If (A_Index = 2)
1135 obj.ID := A_LoopField
1136 Else If (A_Index = 3)
1137 obj.Core := A_LoopField
1138 Else { ; 4
1139 StringSplit, tmp, A_LoopField, `,
1140 obj.MAMEID := tmp1
1141 obj.MAMEMedia := tmp2
1142 }
1143 }
1144 mType.Insert(obj["System"], obj)
1145 }
1146 RLLog.Debug("Module - Finished building the " . MEmu . " object")
1147 ; For easier use throughout the module
1148 retroSystem := mType[systemName].System
1149 retroID := mType[systemName].ID
1150 retroCore := mType[systemName].Core
1151 retroMAMEID := mType[systemName].MAMEID
1152 retroMAMEMedia := mType[systemName].MAMEMedia
1153 RLLog.Info("Module - Using these system variables:")
1154 RLLog.Info("Module - retroSystem: " . retroSystem)
1155 RLLog.Info("Module - retroID: " . retroID)
1156 RLLog.Info("Module - retroCore: " . retroCore)
1157 RLLog.Info("Module - retroMAMEID: " . retroMAMEID)
1158 RLLog.Info("Module - retroMAMEMedia: " . retroMAMEMedia)
1159 If !retroSystem
1160 ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for this " . MEmu . " module: " . moduleName)
1161 If !retroCore
1162 ScriptError("Your Core ID is: " . retroID . "`nCould not find a default core to use. Please update the module with a default core.")
1163
1164 Fullscreen := moduleIni.Read("Settings", "Fullscreen","true",,1)
1165 configFolder := moduleIni.Read("Settings", "ConfigFolder",emuPath . "\config",,1)
1166 singlecoreoptions := moduleIni.Read("Settings", "single_core_options","false",,1) = "true" ? ":\retroarch-core-options.cfg" : """"
1167 mameRomPath := moduleIni.Read("MAME", "BIOS_Roms_Folder",,,1)
1168 mameHideNag := If moduleIni.Read("MAME", "Hide_Nag_Screen","false",,1) = "true" ? "enabled" : "disabled"
1169 mameHideInfo := If moduleIni.Read("MAME", "Hide_Info_Screen","false",,1) = "true" ? "enabled" : "disabled"
1170 mameHideWarn := If moduleIni.Read("MAME", "Hide_Warning_Screen","false",,1) = "true" ? "enabled" : "disabled"
1171 hideConsole := moduleIni.Read("Settings", "HideConsole","true",,1)
1172 ejectToggleKey := moduleIni.Read("Settings", "Eject_Toggle_Key",,,1)
1173 nextDiskKey := moduleIni.Read("Settings", "Next_Disk_Key",,,1)
1174 prevDiskKey := moduleIni.Read("Settings", "Previous_Disk_Key",,,1)
1175 core := moduleIni.Read(romName . "|" . systemName, "LibRetro_Core",retroCore,,1)
1176 superGB := moduleIni.Read(romName . "|" . systemName, "SuperGameBoy","false",,1)
1177 enableNetworkPlay := moduleIni.Read(romName . "|Network", "Enable_Network_Play","false",,1)
1178 overlay := moduleIni.Read(romName . "|" . systemName, "Overlay",,,1)
1179 videoShader := moduleIni.Read(romName . "|" . systemName, "VideoShader",,,1)
1180 aspectRatioIndex := moduleIni.Read(romName . "|" . systemName, "AspectRatioIndex",,,1)
1181 customViewportWidth := moduleIni.Read(romName . "|" . systemName, "CustomViewportWidth",,,1)
1182 customViewportHeight := moduleIni.Read(romName . "|" . systemName, "CustomViewportHeight",,,1)
1183 customViewportX := moduleIni.Read(romName . "|" . systemName, "CustomViewportX",,,1)
1184 customViewportY := moduleIni.Read(romName . "|" . systemName, "CustomViewportY",,,1)
1185 stretchToFillBezel := moduleIni.Read(romName . "|" . systemName, "StretchToFillBezel","false",,1)
1186 rotation := moduleIni.Read(romName . "|" . systemName, "Rotation",0,,1)
1187 cropOverscan := moduleIni.Read(romName . "|" . systemName, "CropOverscan",,,1)
1188 threadedVideo := moduleIni.Read(romName . "|" . systemName, "ThreadedVideo",,,1)
1189 vSync := moduleIni.Read(romName . "|" . systemName, "VSync",,,1)
1190 integerScale := moduleIni.Read(romName . "|" . systemName, "IntegerScale",,,1)
1191 configurationPerCore := moduleIni.Read(romName . "|" . systemName, "ConfigurationPerCore","false",,1)
1192
1193 If (StringUtils.Contains(core, "^(mame|mess|ume)") && !retroMAMEID) {
1194 retroMAMEID := "mame" ; set all systems that use a mame core to the default mame ID so any system name is supported
1195 RLLog.Warning("Module - Setting MAMEID to default ""mame"" for """ . retroSystem . """")
1196 }
1197
1198 configFolder := RLObject.getFullPathFromRelative(rlPath,configFolder)
1199 mameRomPath := If mameRomPath ? RLObject.getFullPathFromRelative(rlPath,mameRomPath) : romPath
1200 overlay := RLObject.getFullPathFromRelative(rlPath,overlay)
1201 videoShader := RLObject.getFullPathFromRelative(rlPath,videoShader)
1202 rotateBezel := false
1203
1204 configFolder := new Folder(configFolder)
1205
1206 If (retroID = "LibRetro_SGB" || superGB = "true") ; if system or rom is set to use Super Game Boy
1207 { superGB := "true" ; setting this just in case it's false and the system is Nintendo Super Game Boy
1208 sgbRomPath := CheckFile(emuPath . "\system\Super Game Boy (World).sfc","Could not find the rom required for Super Game Boy support. Make sure the rom ""Super Game Boy (World).sfc"" is located in: " . emuPath . "\system")
1209 CheckFile(emuPath . "\system\sgb.boot.rom","Could not find the bios required for Super Game Boy support. Make sure the bios ""sgb.boot.rom"" is located in: " . emuPath . "\system")
1210 retroID := "LibRetro_SGB" ; switching to Super Game Boy mode
1211 retroSystem := "Nintendo Super Game Boy"
1212 }
1213
1214 ; Find the dll for this system
1215 libDll := CheckFile(emuPath . "\cores\" . core . ".dll", "Your " . retroID . " dll is set to " . core . " but could not locate this file:`n" . emuPath . "\cores\" . core . ".dll")
1216
1217 ; Find the cfg file to use
1218 If !configFolder.Exist()
1219 ScriptError("You need to make sure ""ConfigFolder"" is pointing to your RetroArch config folder. By default it is looking here: """ . configFolder.FilePath . """")
1220 globalRetroCfg := emuPath . "\retroarch.cfg"
1221 systemRetroCfg := configFolder.FilePath . "\" . retroSystem . ".cfg"
1222 coreRetroCfg := configFolder.FilePath . "\" . core . ".cfg"
1223 RLLog.Info("Module - Global cfg should be: " . globalRetroCfg)
1224 RLLog.Info("Module - System cfg should be: " . systemRetroCfg)
1225 RLLog.Info("Module - Core cfg should be: " . coreRetroCfg)
1226 foundCfg := ""
1227
1228 systemRetroCfg := new File(systemRetroCfg)
1229 coreRetroCfg := new File(coreRetroCfg)
1230 globalRetroCfg := new File(globalRetroCfg)
1231
1232 If systemRetroCfg.Exist() { ; check for system cfg first
1233 retroCFGFile := systemRetroCfg
1234 foundCfg := 1
1235 RLLog.Info("Module - Found a System cfg!")
1236 } Else If coreRetroCfg.Exist() { ; 2nd option is a core config
1237 retroCFGFile := coreRetroCfg
1238 foundCfg := 1
1239 RLLog.Info("Module - Found a Core cfg!")
1240 } Else If globalRetroCfg.Exist() { ; 3rd is global cfg
1241 retroCFGFile := globalRetroCfg
1242 foundCfg := 1
1243 RLLog.Info("Module - Found a Global cfg!")
1244 }
1245 If foundCfg {
1246 RLLog.Info("Module - " . MEmu . " is using " . retroCFGFile.FileFullPath . " as its config file.")
1247 retroCFG := LoadProperties(retroCFGFile.FileFullPath)
1248 } Else
1249 RLLog.Warning("Module - Could not find a cfg file to update settings. RetroArch will make one for you.")
1250
1251 If StringUtils.Contains(rotation,"1|3") ; use vertical bezel if RA rotation is set to 90 or 270 degrees
1252 rotateBezel := true
1253
1254 If StringUtils.Contains(retroID, "LibRetro_NFDS|LibRetro_SCD|LibRetro_TGCD|LibRetro_PCECD|LibRetro_PCFX") { ; these systems require the retroarch settings to be read
1255 retroSysDir := ReadProperty(retroCFG,"system_directory") ; read value
1256 retroSysDir := ConvertRetroCFGKey(retroSysDir) ; remove dbl quotes
1257 retroSysDirLeft := StringUtils.Left(retroSysDir, 2)
1258 If (retroSysDirLeft = ":\") { ; if retroarch is set to use a default folder
1259 retroSysDir := StringUtils.TrimLeft(retroSysDir, 1)
1260 RLLog.Info("Module - RetroArch is using a relative system path: """ . retroSysDir . """")
1261 retroSysDir := emuPath . retroSysDir
1262 }
1263 If !retroSysDir
1264 ScriptError("RetroArch requires you to set your system_directory and place bios rom(s) in there for """ . retroSystem . """ to function. Please do this first by running ""retroarch-phoenix.exe"" manually.")
1265 checkForSlash := StringUtils.Right(retroSysDir, 1)
1266 If (checkForSlash = "\") ; check if a backslash is the last character. If it is, remove it, as this is non-standard method to define folders
1267 retroSysDir := StringUtils.TrimRight(retroSysDir, 1)
1268 }
1269
1270 If (StringUtils.Contains(core, "^(mame|mess|ume)")) || (StringUtils.Contains(retroID, "LibRetro_N64|LibRetro_NES|LibRetro_LYNX|LibRetro_PSX")) || (StringUtils.Contains(retroID, "LibRetro_NES") && (StringUtils.Contains(core, "nestopia_libretro"))) { ; these systems will use an ini to store game specific settings
1271 RLLog.Info("Module - Reading / creating system ini for specific settings.")
1272 If !StringUtils.Contains(core, "^(mame|mess|ume)") {
1273 If !SystemModuleIni.Exist()
1274 SystemModuleIni.Append ; create a new blank ini file if one does not exist
1275 }
1276
1277 coreOptionsCFG := LoadProperties(coreOptionsCFGFile.FileFullPath)
1278
1279 If StringUtils.Contains(core, "^(mame|mess|ume)") { ; Set some MAME/MESS/UME core options.
1280 tmpCore := If StringUtils.Contains(core, "mame") ? "mame" : "mess"
1281 WriteProperty(coreOptionsCFG, tmpCore . "_read_config", """enabled""", 1)
1282 WriteProperty(coreOptionsCFG, tmpCore . "_boot_from_cli", """enabled""", 1) ; This needs to be enabled in order to run games with RLauncher
1283 WriteProperty(coreOptionsCFG, tmpCore . "_hide_nagscreen", "" . mameHideNag . "", 1)
1284 WriteProperty(coreOptionsCFG, tmpCore . "_hide_infoscreen", "" . mameHideInfo . "", 1)
1285 WriteProperty(coreOptionsCFG, tmpCore . "_hide_warnings", "" . mameHideWarn . "", 1)
1286 } Else If StringUtils.Contains(retroID, "LibRetro_N64") { ; Nintendo 64
1287 mupenGfx := moduleIni.Read(romName . "|" . systemName, "Mupen_Gfx_Plugin", "auto",,1)
1288 mupenRsp := moduleIni.Read(romName . "|" . systemName, "Mupen_RSP_Plugin", "auto",,1)
1289 mupenCpu := moduleIni.Read(romName . "|" . systemName, "Mupen_CPU_Core", "dynamic_recompiler",,1)
1290 mupenPak1 := moduleIni.Read(romName . "|" . systemName, "Mupen_Pak_1", "memory",,1)
1291 mupenPak2 := moduleIni.Read(romName . "|" . systemName, "Mupen_Pak_2", "memory",,1)
1292 mupenPak3 := moduleIni.Read(romName . "|" . systemName, "Mupen_Pak_3", "memory",,1)
1293 mupenPak4 := moduleIni.Read(romName . "|" . systemName, "Mupen_Pak_4", "memory",,1)
1294 mupenGfxAccur := moduleIni.Read(romName . "|" . systemName, "Mupen_Gfx_Accuracy", "high",,1)
1295 mupenExpMem := moduleIni.Read(romName . "|" . systemName, "Mupen_Disable_Exp_Memory", "no",,1)
1296 mupenTexturFilt := moduleIni.Read(romName . "|" . systemName, "Mupen_Texture_Filtering", "nearest",,1)
1297 mupenViRefresh := moduleIni.Read(romName . "|" . systemName, "Mupen_VI_Refresh", "2200",,1)
1298 mupenFramerate := moduleIni.Read(romName . "|" . systemName, "Mupen_Framerate", "fullspeed",,1)
1299 mupenResolution := moduleIni.Read(romName . "|" . systemName, "Mupen_Resolution", "640x480",,1)
1300 mupenPolyOffstFctr := moduleIni.Read(romName . "|" . systemName, "Mupen_Polygon_Offset_Factor", "-3.0",,1)
1301 mupenPolyOffstUnts := moduleIni.Read(romName . "|" . systemName, "Mupen_Polygon_Offset_Units", "-3.0",,1)
1302 mupenViOverlay := moduleIni.Read(romName . "|" . systemName, "Mupen_VI_Overlay", "disabled",,1)
1303 mupenAnalogDzone := moduleIni.Read(romName . "|" . systemName, "Mupen_Analog_Deadzone", "15",,1)
1304
1305 WriteProperty(coreOptionsCFG, "mupen64-gfxplugin", mupenGfx, 1)
1306 WriteProperty(coreOptionsCFG, "mupen64-rspplugin", mupenRsp, 1)
1307 WriteProperty(coreOptionsCFG, "mupen64-cpucore", mupenCpu, 1)
1308 WriteProperty(coreOptionsCFG, "mupen64-pak1", mupenPak1, 1)
1309 WriteProperty(coreOptionsCFG, "mupen64-pak2", mupenPak2, 1)
1310 WriteProperty(coreOptionsCFG, "mupen64-pak3", mupenPak3, 1)
1311 WriteProperty(coreOptionsCFG, "mupen64-pak4", mupenPak4, 1)
1312 WriteProperty(coreOptionsCFG, "mupen64-gfxplugin-accuracy", mupenGfxAccur, 1)
1313 WriteProperty(coreOptionsCFG, "mupen64-disableexpmem", mupenExpMem, 1)
1314 WriteProperty(coreOptionsCFG, "mupen64-filtering", mupenTexturFilt, 1)
1315 WriteProperty(coreOptionsCFG, "mupen64-virefresh", mupenViRefresh, 1)
1316 WriteProperty(coreOptionsCFG, "mupen64-framerate", mupenFramerate, 1)
1317 WriteProperty(coreOptionsCFG, "mupen64-screensize", mupenResolution, 1)
1318 WriteProperty(coreOptionsCFG, "mupen64-polyoffset-factor", mupenPolyOffstFctr, 1)
1319 WriteProperty(coreOptionsCFG, "mupen64-polyoffset-units", mupenPolyOffstUnts, 1)
1320 WriteProperty(coreOptionsCFG, "mupen64-angrylion-vioverlay", mupenViOverlay, 1)
1321 WriteProperty(coreOptionsCFG, "mupen64-astick-deadzone", mupenAnalogDzone, 1)
1322 } Else If StringUtils.Contains(retroID, "LibRetro_NES") { ; these systems will use an ini to store game specific settings
1323 If StringUtils.Contains(core, "nestopia_libretro") { ; Nestopia
1324 nestopiaBlargg := moduleIni.Read(romName . "|Nestopia", "Nestopia_Blargg_NTSC_Filter", "disabled",,1)
1325 nestopiaPalette := moduleIni.Read(romName . "|Nestopia", "Nestopia_Palette", "canonical",,1)
1326 nestopiaNoSprteLimit := moduleIni.Read(romName . "|Nestopia", "Nestopia_Remove_Sprites_Limit", "disabled",,1)
1327
1328 WriteProperty(coreOptionsCFG, "nestopia_blargg_ntsc_filter", nestopiaBlargg, 1)
1329 WriteProperty(coreOptionsCFG, "nestopia_palette", nestopiaPalette, 1)
1330 WriteProperty(coreOptionsCFG, "nestopia_nospritelimit", nestopiaNoSprteLimit, 1)
1331 }
1332 } Else If StringUtils.Contains(retroID, "LibRetro_LYNX") { ; Atari Lynx
1333 If StringUtils.Contains(core, "handy_libretro") { ; Handy
1334 handyRotate := moduleIni.Read(romName . "|" . systemName, "Handy_Rotation", "None",,1)
1335 If StringUtils.Contains(handyRotate, "240") or StringUtils.Contains(handyRotate, "90")
1336 rotateBezel := true
1337 WriteProperty(coreOptionsCFG, "handy_rot", handyRotate, 1)
1338 }
1339 } Else If StringUtils.Contains(retroID, "LibRetro_PSX") { ; Sony PlayStation
1340 psxCdImageCache := moduleIni.Read(romName . "|" . systemName, "PSX_CD_Image_Cache", """enabled""",,1)
1341 psxMemcardHandling := moduleIni.Read(romName . "|" . systemName, "PSX_Memcard_Handling", """libretro""",,1)
1342 psxDualshockAnalogToggle := moduleIni.Read(romName . "|" . systemName, "PSX_Dualshock_Analog_Toggle", """enabled""",,1)
1343
1344 WriteProperty(coreOptionsCFG, "beetle_psx_cdimagecache", psxCdImageCache, 1)
1345 WriteProperty(coreOptionsCFG, "beetle_psx_use_mednafen_memcard0_method", psxMemcardHandling, 1)
1346 WriteProperty(coreOptionsCFG, "beetle_psx_analog_toggle", psxDualshockAnalogToggle, 1)
1347 }
1348 SaveProperties(coreOptionsCFGFile.FileFullPath, coreOptionsCFG)
1349 }
1350
1351 hideEmuObj := Object(emuConsoleWindow,0,emuPrimaryWindow,1)
1352 7z(romPath, romName, romExtension, sevenZExtractPath)
1353
1354 mgM3UFile := new File(romPath . "\" . romTable[1,4] . ".m3u")
1355
1356 mgRomExtensions := "cue|iso|ccd"
1357 mgValidExtension := false
1358
1359 Loop, Parse, mgRomExtensions, |
1360 If (romExtension = "." . A_LoopField)
1361 mgValidExtension := true
1362
1363 If (StringUtils.Contains(retroID, "LibRetro_PSX") && romTable.MaxIndex() && mgValidExtension) { ; See if MultiGame table is populated
1364 m3uRomIndex := Object()
1365 mgType := romTable[1,6] . " "
1366 mgMaxIndex := romTable.MaxIndex()
1367 mgRomIndex := 0
1368
1369 If mgM3UFile.Exist()
1370 mgM3UFile.Delete()
1371
1372 Loop % mgMaxIndex
1373 {
1374 If (romTable[A_Index, 3] = romName) {
1375 tempType := romTable[A_Index, 5]
1376 mgRomIndex := StringUtils.TrimLeft(tempType, StringUtils.StringLength(mgType))
1377 RLLog.Info("Found rom index in rom set in romTable: " . mgRomIndex)
1378 Break
1379 }
1380 }
1381
1382 If (mgRomIndex > 0) {
1383 tempRomIndex := mgRomIndex
1384 Loop % mgMaxIndex
1385 {
1386 mgTypeIndex := mgType . tempRomIndex
1387 m3uRomIndex.Insert(tempRomIndex)
1388
1389 Loop % mgMaxIndex
1390 {
1391 If (romTable[A_Index, 5] = mgTypeIndex) {
1392 tempRomPath := romTable[A_Index, 1]
1393 mgM3UFile.Append(tempRomPath . "`n")
1394 RLLog.Info("Module - Appending rom path to m3u: " . tempRomPath)
1395 Break
1396 }
1397 }
1398
1399 If (tempRomIndex < mgMaxIndex)
1400 tempRomIndex++
1401 Else
1402 tempRomIndex := 1
1403 }
1404 }
1405 }
1406
1407 ; MAME/MESS/UME core options
1408 MAMEParam1 := ""
1409 MAMEParam2 := ""
1410 MAMEParam3 := ""
1411 If StringUtils.Contains(core, "^(mame|mess|ume)") { ; if a MAME/MESS/UME core is used
1412 If !retroMAMEID
1413 ScriptError("Your systemName is: " . systemName . "`nIt is not one of the known supported systems for the MAME/MESS/UME LibRetro core")
1414 Else
1415 RLLog.Info("Module - MAME/MESS/UME mode using a known ident: " . retroMAMEID)
1416
1417 If !mameRomPath
1418 ScriptError("Please set the RetroArch module setting ""BIOS_Roms_Folder"" to the folder that contains your MAME/MESS/UME BIOS roms to use with RetroArch.")
1419
1420 If (retroMAMEID = "mame") { ; want this for arcade mame only
1421 RLLog.Info("Module - Retroarch MAME/MESS/UME Arcade mode enabled")
1422 fullRomPath := " """ . romPath . "\" . romName . romExtension . """"
1423 } Else {
1424 RLLog.Info("Module - Retroarch MAME/MESS/UME Console/PC mode enabled")
1425 MAMEParam1 := ""
1426 MAMEParam2 := " -rompath \""" . mameRomPath . "\"""
1427
1428 ; If we already have a media type, then use it.
1429 If (StringUtils.Contains(retroMAMEID, "tg16|pce") && retroMAMEMedia = "cart") {
1430 ;MAMEParam3 := " -cart \" . """" . romPath . "\" . romName . romExtension . "\" . """"
1431 MAMEParam3 := " -cart \""" . romPath . "\" . romName . romExtension . "\"""""
1432 ; TODO: This needs a better way to handle the cdrom bios files, in my opinion. As it is, there's no clean way to pick between the v2.00 or v3.00 bios.
1433 ; Defaulting to the TurboDuo cdrom bios since it will play 2.00 or 3.00 games.
1434 } Else If (StringUtils.Contains(retroMAMEID, "tg16|pce") && retroMAMEMedia = "cdrom") {
1435 ;MAMEParam3 := " -cart cdsys -cdrm \" . """" . romPath . "\" . romName . romExtension . "\" . """"
1436 MAMEParam3 := " -cart scdsys -cdrm \""" . romPath . "\" . romName . romExtension . "\"""""
1437 } Else {
1438 ; Build a key/value object containing the different MAMEParam3 choices
1439 MAMEP3 := Object("alice32","cass1","gp32","memc","cpc464","cass","spectrum","cass","dragon64","cass","cdimono1","cdrom","bk0010","cass","neocd","cdrom","neocdz","cdrom","saturn","cdrm","saturnjp","cdrm","svi328n","cass","pecom64","cass","psu","cdrm","svmu","quik","gamecom","cart1","mbeeic","quik1")
1440 MAMEParam3 := MAMEP3[retroMAMEID] ; search object for the retroMAMEID pair
1441 MAMEParam3 := " -" . (If MAMEParam3 ? MAMEParam3 : "cart") . " \" . """" . romPath . "\" . romName . romExtension . "\" . """"
1442 }
1443
1444 If (retroMAMEID = "mbeeic") ; Applied Technology MicroBee
1445 { microbeeModel := IniReadCheck(MAMESysINI, romName, "MicroBee_Model","mbeeic",,1)
1446 If microbeeModel not in mbee,mbeeic,mbeepc,mbeepc85,mbee56
1447 ScriptError("This is not a known MicroBee model value: " . microbeeModel)
1448 Else If (microbeeModel != "mbeeic")
1449 retroMAMEID := microbeeModel
1450 If romExtension in .mwb,.com,.bee
1451 mediaDeviceType := "quik1"
1452 Else If romExtension in .wav,.tap
1453 mediaDeviceType := "cass"
1454 Else If romExtension in .rom
1455 mediaDeviceType := "cart"
1456 Else If romExtension in .dsk
1457 mediaDeviceType := "flop1"
1458 Else ; .bin format
1459 mediaDeviceType := "quik2"
1460 MAMEParam3 := " -" . mediaDeviceType . " \" . """" . romPath . "\" . romName . romExtension . "\" . """"
1461 }
1462
1463 If (retroMAMEID = "x68000") ; Sharp X68000
1464 {
1465 If romExtension in .xdf,.hdm,.2hd,.dim,.d77,.d88,.1dd,.dfi,.imd,.ipf,.mfi,.mfm,.td0,.cqm,.cqi,.dsk
1466 mediaDeviceType := "flop1"
1467 Else ; .bin format
1468 mediaDeviceType := "sasi"
1469 MAMEParam3 := " -" . mediaDeviceType . " \" . """" . romPath . "\" . romName . romExtension . "\" . """"
1470 }
1471
1472 fullRomPath := MAMEParam1 . MAMEParam2 . MAMEParam3
1473 }
1474 } Else If (superGB = "true") {
1475 RLLog.Info("Module - Retroarch Super Game Boy mode enabled")
1476 fullRomPath := " """ . sgbRomPath . """ --subsystem sgb """ . romPath . "\" . romName . romExtension . """"
1477 } Else {
1478 RLLog.Info("Module - Retroarch standard mode enabled")
1479 fullRomPath := " """ . romPath . "\" . romName . romExtension . """"
1480 }
1481
1482 If (retroID = "LibRetro_NFDS") ; Nintendo Famicom Disk System
1483 { disksysRom := new File(retroSysDir . "\disksys.rom")
1484 If !disksysRom.Exist()
1485 ScriptError("RetroArch requires ""disksys.rom"" for " . retroSystem . " but could not find it in your system_directory: """ . retroSysDir . """")
1486 } Else If (retroID = "LibRetro_SCD") ; Sega CD
1487 { If !StringUtils.Contains(romExtension, "\.bin|\.cue|\.iso|\.chd")
1488 ScriptError("RetroArch only supports Sega CD games in bin|cue|iso format. It does not support:`n" . romExtension)
1489 biosCDEBin := new File(retroSysDir . "\bios_CD_E.bin")
1490 biosCDUBin := new File(retroSysDir . "\bios_CD_U.bin")
1491 biosCDJBin := new File(retroSysDir . "\bios_CD_J.bin")
1492 If !biosCDEBin.Exist()
1493 ScriptError("RetroArch requires ""bios_CD_E.bin"" for " . retroSystem . " but could not find it in your system_directory: """ . retroSysDir . """")
1494 If !biosCDUBin.Exist()
1495 ScriptError("RetroArch requires ""bios_CD_U.bin"" for " . retroSystem . " but could not find it in your system_directory: """ . retroSysDir . """")
1496 If !biosCDJBin.Exist()
1497 ScriptError("RetroArch requires ""bios_CD_J.bin"" for " . retroSystem . " but could not find it in your system_directory: """ . retroSysDir . """")
1498 } Else If StringUtils.Contains(retroID,"LibRetro_PCECD|LibRetro_TGCD") ; NEC PC Engine-CD and NEC TurboGrafx-CD
1499 { If !StringUtils.Contains(romExtension,"\.ccd|\.cue|\.chd")
1500 ScriptError("RetroArch only supports " . retroSystem . " games in ccd or cue format. It does not support:`n" . romExtension)
1501 sysCard3Pce := new File(retroSysDir . "\syscard3.pce")
1502 If !sysCard3Pce.Exist()
1503 ScriptError("RetroArch requires ""syscard3.pce"" for " . retroSystem . " but could not find it in your system_directory: """ . retroSysDir . """")
1504 } Else If (retroID = "LibRetro_PCFX")
1505 { If !StringUtils.Contains(romExtension,"\.ccd|\.chd|\.cue")
1506 ScriptError("RetroArch only supports " . retroSystem . " games in ccd,chd or cue format. It does not support:`n" . romExtension)
1507 pcfxBios := new File(retroSysDir . "\pcfx.bios")
1508 If !pcfxBios.Exist()
1509 ScriptError("RetroArch requires ""pcfx.bios"" for " . retroSystem . " but could not find it in your system_directory: """ . retroSysDir . """")
1510 } Else If (retroID = "LibRetro_SCUMM")
1511 {
1512 scummFile := new File(romPath . "\" . romName . ".scummvm")
1513 If !scummFile.Exist()
1514 scummFile.Append("""" . romName . """")
1515 }
1516
1517 networkSession := ""
1518 If (enableNetworkPlay = "true") {
1519 RLLog.Info("Module - Network Multi-Player is an available option for " . dbName)
1520
1521 netplayNickname := moduleIni.Read("Network", "NetPlay_Nickname","Player",,1)
1522 getWANIP := moduleIni.Read("Network", "Get_WAN_IP","false",,1)
1523
1524 If (getWANIP = "true")
1525 myPublicIP := GetPublicIP()
1526
1527 RLLog.Warning("Module - CAREFUL WHEN POSTING THIS LOG PUBLICLY AS IT CONTAINS YOUR IP ON THE NEXT LINE")
1528 defaultServerIP := moduleIni.Read("Network", "Default_Server_IP", myPublicIP,,1)
1529 defaultServerPort := moduleIni.Read("Network", "Default_Server_Port",,,1)
1530 lastIP := moduleIni.Read("Network", "Last_IP", defaultServerIP,,1) ; does not need to be on the ISD
1531 lastPort := moduleIni.Read("Network", "Last_Port", defaultServerPort,,1) ; does not need to be on the ISD
1532
1533 mpMenuStatus := MultiPlayerMenu(lastIP,lastPort,networkType,,0)
1534 If (mpMenuStatus = -1) { ; if user exited menu early
1535 RLLog.Warning("Module - Cancelled MultiPlayer Menu. Exiting module.")
1536 ExitModule()
1537 }
1538 If networkSession {
1539 RLLog.Info("Module - Using a Network for " . dbName)
1540 moduleIni.Write(networkPort, "GlobalModuleIni", "Network", "Last_Port")
1541 ; msgbox lastIP: %lastIP%`nlastPort: %lastPort%`nnetworkIP: %networkIP%`nnetworkPort: %networkPort%
1542 If (networkType = "client") {
1543 moduleIni.Write(networkIP, "GlobalModuleIni", "Network", "Last_IP") ; Save last used IP and Port for quicker launching next time
1544 netCommand := " -C " . networkIP . " --port " . networkPort . " --nick """ . netplayNickname . """" ; -C = connect as client
1545 } Else { ; server
1546 netCommand := " -H --port " . networkPort . " --nick """ . netplayNickname . """" ; -H = host as server
1547 }
1548 RLLog.Warning("Module - CAREFUL WHEN POSTING THIS LOG PUBLICLY AS IT CONTAINS YOUR IP ON THE NEXT LINE")
1549 RLLog.Info("Module - Starting a network session using the IP """ . networkIP . """ and PORT """ . networkPort . """")
1550 } Else
1551 RLLog.Info("Module - User chose Single Player mode for this session")
1552 }
1553
1554 BezelStart(,,(If rotateBezel ? 1:""))
1555
1556 If foundCfg {
1557 If (stretchToFillBezel = "true" and bezelEnabled = "true" and bezelPath)
1558 {
1559 customViewportWidth := bezelScreenWidth
1560 customViewportHeight := bezelScreenHeight
1561 customViewportX := 0
1562 customViewportY := 0
1563 aspectRatioIndex := 22
1564 RLLog.Info("Stretching viewport to fit bezel")
1565 }
1566
1567 raCfgHasChanges := ""
1568 WriteRetroProperty("core_options_path", singlecoreoptions)
1569 WriteRetroProperty("input_overlay", overlay)
1570 WriteRetroProperty("video_shader", videoShader)
1571 WriteRetroProperty("aspect_ratio_index", aspectRatioIndex)
1572 WriteRetroProperty("custom_viewport_width", customViewportWidth)
1573 WriteRetroProperty("custom_viewport_height", customViewportHeight)
1574 WriteRetroProperty("custom_viewport_x", customViewportX)
1575 WriteRetroProperty("custom_viewport_y", customViewportY)
1576 WriteRetroProperty("video_rotation", rotation)
1577 WriteRetroProperty("video_crop_overscan", cropOverscan)
1578 WriteRetroProperty("video_threaded", threadedVideo)
1579 WriteRetroProperty("video_vsync", vSync)
1580 WriteRetroProperty("video_scale_integer", integerScale)
1581 WriteRetroProperty("input_disk_eject_toggle", ejectToggleKey)
1582 WriteRetroProperty("input_disk_next", nextDiskKey)
1583 WriteRetroProperty("input_disk_prev", prevDiskKey)
1584 If StringUtils.Contains(retroID, "LibRetro_PSX") {
1585 Loop, 8 ; Loop 8 times for 8 controllers
1586 { p%A_Index%ControllerType := moduleIni.Read(romName . "|" . systemName, "P" . A_Index . "_Controller_Type", 517,,1)
1587 WriteRetroProperty("input_libretro_device_p" . A_Index, p%A_Index%ControllerType)
1588 }
1589 }
1590
1591 If raCfgHasChanges {
1592 RLLog.Info("Module - Saving changed settings to: """ . retroCFGFile.FileFullPath . """")
1593 SaveProperties(retroCFGFile.FileFullPath, retroCFG)
1594 }
1595 }
1596
1597 fullscreen := If fullscreen = "true" ? " -f" : ""
1598 retroCFGFileCLI := If foundCfg ? " -c """ . retroCFGFile.FileFullPath . """" : ""
1599
1600
1601
1602 HideAppStart(hideEmuObj,hideEmu)
1603
1604 If (StringUtils.Contains(core, "^(mame|mess|ume)") && (retroMAMEID != "mame")) { ; if a MAME/MESS/UME core is used
1605 primaryExe.Run(" """ . (retroMAMEID ? retroMAMEID : "") . fullRomPath . """ " . fullscreen . retroCFGFileCLI . " -L """ . libDll . netCommand, "Hide")
1606 } Else If (retroID = "LibRetro_SCUMM") {
1607 primaryExe.Run(" """ . scummFile . """" . fullscreen . retroCFGFileCLI . " -L """ . libDll . "" . netCommand, "Hide")
1608 } Else If (retroID = "LibRetro_SGB" || If superGB = "true") { ; For some reason, the order of our command line matters in this particular case.
1609 primaryExe.Run(fullscreen . retroCFGFileCLI . " -L """ . libDll . fullRomPath . netCommand, "Hide")
1610 } Else If mgM3UFile.Exist() {
1611 primaryExe.Run(" """ . mgM3UFile.FileFullPath . """" . fullscreen . retroCFGFileCLI . " -L """ . libDll . netCommand, "Hide")
1612 } Else {
1613 primaryExe.Run(" " . fullRomPath . fullscreen . retroCFGFileCLI . " -L """ . libDll . netCommand, "Hide")
1614 }
1615
1616 mpMenuStatus := ""
1617 If networkSession {
1618 canceledServerWait := false
1619 multiplayerMenuExit := false
1620 TimerUtils.SetTimer("NetworkConnectedCheck", 500)
1621
1622 If (networkType = "server") {
1623 RLLog.Info("Module - Waiting for a client to connect to your server")
1624 mpMenuStatus := MultiPlayerMenu(,,,,,,,,"You are the server. Please wait for your client to connect.")
1625 } Else { ; client
1626 RLLog.Info("Module - Trying to contact the server to establish a connection.")
1627 mpMenuStatus := MultiPlayerMenu(,,,,,,,,"Attempting to connect to the server...")
1628 }
1629
1630 If (mpMenuStatus = -1) { ; if user exited menu early before a client connected
1631 RLLog.Warning("Module - Cancelled waiting for the " . If (networkType = "server") ? "client to connect" : "server to respond" . ". Exiting module.")
1632 If primaryExe.Process("Exist")
1633 primaryExe.Process("Close") ; must close process as the exe is waiting for a client to connect and no window was drawn yet
1634 ExitModule()
1635 } Else { ; blank response from MultiPlayerMenu, exited properly
1636 RLLog.Info("Module - " . If (networkType = "server") ? "Client has connected" : "Connected to the server")
1637 emuPrimaryWindow.Wait()
1638 emuPrimaryWindow.WaitActive()
1639 }
1640 TimerUtils.SetTimer("NetworkConnectedCheck", "Off")
1641 } Else { ; single player
1642 emuPrimaryWindow.Wait()
1643 emuPrimaryWindow.WaitActive()
1644 }
1645
1646 If (hideConsole = "true")
1647 emuConsoleWindow.Set("Transparent", "On") ; makes the console window transparent so you don't see it on exit
1648
1649 BezelDraw()
1650 HideAppEnd(hideEmuObj,hideEmu)
1651 FadeInExit()
1652 primaryExe.Process("WaitClose")
1653 7zCleanUp()
1654 BezelExit()
1655 FadeOutExit()
1656 ExitModule()
1657
1658
1659 ; Writes new properties into the retroCFG if defined by user
1660 WriteRetroProperty(key,value="") {
1661 If (value != "") {
1662 Global retroCFG,raCfgHasChanges
1663 WriteProperty(retroCFG, key, value,1,1)
1664 raCfgHasChanges := 1
1665 }
1666 }
1667
1668 ; Used to convert between RetroArch keys and usable data
1669 ConvertRetroCFGKey(txt,direction="read"){
1670 Global emuPath,RLLog
1671 If (direction = "read")
1672 { newtxt := StringUtils.TrimLeft(txt,1,0) ; removes the " from the left of the txt
1673 newtxt := StringUtils.TrimRight(newtxt,1,0) ; removes the " from the right of the txt
1674 relativeCheck := StringUtils.SubStr(newtxt,1,1,0)
1675 If StringUtils.Contains(relativeCheck,":",0) { ; if the path contains a ":" then it is a relative path
1676 RLLog.Debug("ConvertRetroCFGKey - " . newtxt . " is a relative path")
1677 newtxt := StringUtils.TrimLeft(newtxt,1,0) ; removes the : from the left of the txt
1678 newtxt := AbsoluteFromRelative(emuPath, "." . newtxt) ; convert relative to absolute
1679 }
1680 If StringUtils.Contains(newtxt,"/",0)
1681 newtxt := StringUtils.Replace(newtxt,"/","\",1,,0) ; replaces all forward slashes with backslashes
1682 } Else If (direction = "write")
1683 { newtxt := """" . txt . """" ; wraps the txt with ""
1684 If StringUtils.Contains(newtxt,"\\",0)
1685 newtxt := StringUtils.Replace(newtxt,"\","/",1,,0) ; replaces all backslashes with forward slashes
1686 } Else
1687 ScriptError("Not a valid use of ConvertRetroCFGKey. Only ""read"" or ""write"" are supported.")
1688 RLLog.Debug("ConvertRetroCFGKey - Converted " . txt . " to " . newtxt)
1689 Return newtxt
1690 }
1691
1692 MultiGame:
1693 KeyUtils.SetKeyDelay(100)
1694 emuPrimaryWindow.Activate()
1695 KeyUtils.Send("{" . ejectToggleKey . " down}{" . ejectToggleKey . " up}") ; eject disc in Retroarch
1696 If (!mgLastRomIndex) {
1697 mgLastRomIndex := mgRomIndex
1698 }
1699 selectedRomIndex := 0
1700 selectedRomIndex := StringUtils.TrimLeft(selectedRomNum, StringUtils.StringLength(mgType,0))
1701
1702 Loop % mgMaxIndex
1703 {
1704 If (m3uRomIndex[A_index] = mgLastRomIndex) {
1705 tempLastRomIndex := A_index
1706 RLLog.Debug("Module - Last index: " . tempLastRomIndex)
1707 }
1708 If (m3uRomIndex[A_index] = selectedRomIndex) {
1709 tempSelectedRomIndex := A_index
1710 RLLog.Debug("Module - Selected index: " . tempSelectedRomIndex)
1711 }
1712 }
1713
1714 mgNewIndex := tempLastRomIndex - tempSelectedRomIndex
1715
1716 If (mgNewIndex < 0) {
1717 mgNewIndex := mgNewIndex * -1
1718 Loop % mgNewIndex
1719 {
1720 RLLog.Debug("Module - Sending the next disk key: " . nextDiskKey)
1721 KeyUtils.Send("{" . nextDiskKey . " down}{" . nextDiskKey . " up}")
1722 }
1723 } Else If (mgNewIndex > 0) {
1724 Loop % mgNewIndex
1725 {
1726 RLLog.Debug("Module - Sending the previous disk key: " . mgNewIndex)
1727 KeyUtils.Send("{" . prevDiskKey . " down}{" . prevDiskKey . " up}")
1728 }
1729 }
1730
1731 KeyUtils.Send("{" . ejectToggleKey . " down}{" . ejectToggleKey . " up}") ; close disc in Retroarch
1732 mgLastRomIndex := selectedRomIndex
1733 Return
1734
1735 NetworkConnectedCheck:
1736 If clientConnected
1737 multiplayerMenuExit := true
1738 Else If emuPrimaryWindow.Exist() {
1739 RLLog.Info("Module - RetroArch session started, closing the MultiPlayer menu")
1740 multiplayerMenuExit := true
1741 }
1742 Return
1743
1744 CloseProcess:
1745 FadeOutStart()
1746 emuPrimaryWindow.Close()
1747 Return
1748
174917:32:44:758 | RL | INFO | +0 | BuildScript - Loaded Pause scripts
175017:32:44:759 | RL | INFO | +0 | BuildScript - Loaded MultiGame scripts
175117:32:44:759 | RL | INFO | +0 | BuildScript - Loaded Multi-Player scripts
175217:32:44:759 | RL | INFO | +0 | BuildScript - Loaded Statistics.ahk script
175317:32:44:759 | RL | INFO | +0 | BuildScript - "H:\RocketLauncher\Lib\User Functions\Global.ahk" not found
175417:32:44:760 | RL | INFO | +0 | BuildScript - "H:\RocketLauncher\Lib\User Functions\Nintendo Entertainment System.ahk" not found
175517:32:44:760 | RL | INFO | +0 | BuildScript - "H:\RocketLauncher\Lib\User Functions\Emulators\Retroarch.ahk" not found
175617:32:44:760 | RL | INFO | +0 | BuildScript - "H:\RocketLauncher\Lib\User Functions\Nintendo Entertainment System\Emulators\Retroarch.ahk" not found
175717:32:44:760 | RL | INFO | +0 | BuildScript - "H:\RocketLauncher\Lib\User Functions\Nintendo Entertainment System\DuckTales (USA).ahk" not found
175817:32:44:761 | RL | INFO | +0 | BuildScript - Finished injecting functions into module
175917:32:44:761 | RL | INFO | +0 | Main - Module is built
176017:32:44:761 | RL | INFO | +0 | CheckFile - Checking if H:\RocketLauncher\AutoHotkey.dll exists
176117:32:44:762 | RL | DEBUG | +0 | CheckFile - Attributes:
1762 FileDescription AutoHotkey_H ANSI 32-bit
1763 FileVersion 1.1.13.00
1764 InternalName AutoHotkey_H
1765 LegalCopyright Copyright (C) 2003-2013
1766 OriginalFilename AutoHotkey.exe
1767 ProductName AutoHotkey_H
1768 ProductVersion 1.1.13.00
1769 File Size: 802304 bytes
1770 Created: 1/17/2020 - 5:02:32 PM
1771 Modified: 9/7/2013 - 5:54:32 AM
177217:32:44:763 | RL | INFO | +0 | Main - Starting timer to watch if Front End gets displaced and restore it if it does.
177317:32:44:764 | RL | INFO | +0 | Main - Running module
177417:32:44:963 | MD | INFO | +N/A | Module initialized
177517:32:44:963 | MD | DEBUG | +0 | XHotkeyTableCreation - Started
177617:32:44:963 | MD | DEBUG | +0 | XHotkeyTableCreation - KeyGroup ~Esc not in TableKeyGroups
177717:32:44:963 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 1 check
177817:32:44:963 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 2 check
177917:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - Using standard Hotkey method for key(s): "~Esc" to call label: "CloseProcess"
178017:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - Ended
178117:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - Started
178217:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - KeyGroup ~2joy7&~2joy8 not in TableKeyGroups ~Esc,
178317:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 1 check
178417:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 2 check
178517:32:44:964 | MD | DEBUG | +0 | XHotkeyTableCreation - Using extended Hotkey method for key(s): "~2joy7&~2joy8" to call a group label
178617:32:44:965 | MD | DEBUG | +0 | XHotkeyTableCreation - Ended
178717:32:44:965 | MD | DEBUG | +0 | fadeInTransitionAnimation: DefaultAnimateFadeIn
178817:32:44:966 | MD | DEBUG | +0 | fadeOutTransitionAnimation: DefaultAnimateFadeOut
178917:32:44:966 | MD | DEBUG | +0 | fadeLyr3Animation: DefaultFadeAnimation
179017:32:44:966 | MD | DEBUG | +0 | fadeLyr37zAnimation: DefaultFadeAnimation
179117:32:44:966 | MD | DEBUG | +0 | XHotkeyTableCreation - Started
179217:32:44:966 | MD | DEBUG | +0 | XHotkeyTableCreation - KeyGroup ~NumpadAdd not in TableKeyGroups ~Esc,~2joy7&~2joy8,
179317:32:44:966 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 1 check
179417:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 2 check
179517:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - Using standard Hotkey method for key(s): "~NumpadAdd" to call label: "TogglePauseMenuStatus"
179617:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - Ended
179717:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - Started
179817:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - KeyGroup PrintScreen not in TableKeyGroups ~Esc,~2joy7&~2joy8,~NumpadAdd,
179917:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 1 check
180017:32:44:967 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 2 check
180117:32:45:038 | MD | DEBUG | +78 | XHotkeyTableCreation - Using standard Hotkey method for key(s): "PrintScreen" to call label: "SaveScreenshot"
180217:32:45:039 | MD | DEBUG | +0 | XHotkeyTableCreation - Ended
180317:32:45:039 | MD | DEBUG | +0 | XHotkeyTableCreation - Started
180417:32:45:039 | MD | DEBUG | +0 | XHotkeyTableCreation - KeyGroup ~NumpadSub not in TableKeyGroups ~Esc,~2joy7&~2joy8,~NumpadAdd,PrintScreen,
180517:32:45:039 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 1 check
180617:32:45:039 | MD | DEBUG | +0 | XHotkeyTableCreation - Post loop 2 check
180717:32:45:040 | MD | DEBUG | +0 | XHotkeyTableCreation - Using standard Hotkey method for key(s): "~NumpadSub" to call label: "StartMulti"
180817:32:45:040 | MD | DEBUG | +0 | XHotkeyTableCreation - Ended
180917:32:45:040 | MD | TRACE | +0 | CustomFunction.Init - Starting
181017:32:45:040 | MD | TRACE | +0 | CustomFunction.Init - Ending
181117:32:45:040 | MD | INFO | +0 | StartModule - Started
181217:32:45:040 | MD | INFO | +0 | StartModule - MEmu: RetroArch Beta
1813 MEmuV: v0.0.1
1814 MURL: http://themaister.net/retroarch.html
1815 MAuthor: djvj|zerojay|SweatyPickle
1816 MVersion: 0.0.1
1817 MCRC: D50F0E70
1818 iCRC:
1819 MID:
1820 MSystem: Acorn BBC Micro|AAE|Amstrad CPC|Amstrad GX4000|APF Imagination Machine|Applied Technology MicroBee|Apple IIGS|Arcade|Arcade Classics|Atari 2600|Atari 5200|Atari 7800|Atari 8-Bit|Atari Classics|Atari Jaguar|Atari Lynx|Atari ST|Atari XEGS|Bally Astrocade|Bandai Gundam RX-78|Bandai Super Vision 8000|Bandai Wonderswan|Bandai Wonderswan Color|Canon X07|Capcom Classics|Capcom Play System|Capcom Play System II|Capcom Play System III|Casio PV-1000|Casio PV-2000|Cave|Coleco ADAM|ColecoVision|Commodore MAX Machine|Commodore Amiga|Creatronic Mega Duck|Data East Classics|Dragon Data Dragon|Emerson Arcadia 2001|Entex Adventure Vision|Elektronika BK|Epoch Game Pocket Computer|Epoch Super Cassette Vision|Exidy Sorcerer|Fairchild Channel F|Final Burn Alpha|Fujitsu FM Towns|Funtech Super Acan|GamePark 32|GCE Vectrex|Hartung Game Master|Interton VC 4000|Irem Classics|JungleTac Sport Vii|Konami Classics|MAME|Magnavox Odyssey 2|Microsoft MSX|Nintendo 64 HD|Microsoft MSX2|Matra & Hachette Alice|Mattel Aquarius|Mattel Intellivision|Midway Classics|Namco Classics|Namco System 22|NEC PC Engine|NEC PC Engine-CD|NEC PC-FX|NEC TurboGrafx-16|NEC SuperGrafx|NEC TurboGrafx-CD|NES HD|Nintendo 64|Nintendo 64DD|Nintendo Arcade Systems|Nintendo Classics|Nintendo DS|Nintendo Entertainment System|Nintendo Famicom|Nintendo Famicom Disk System|Nintendo Game Boy|Nintendo Game Boy Color|Nintendo Game Boy Japan|Nintendo Game Boy Advance|Nintendo Game & Watch|Nintendo Super Game Boy|Nintendo Pokemon Mini|Nintendo Virtual Boy|Nintendo Super Famicom|Nintendo Satellaview|Nintendo SuFami Turbo|Panasonic 3DO|Elektronska Industrija Pecom 64|Philips CD-i|Philips Videopac|RCA Studio II|ScummVM|Sega 32X|Sega Classics|Sega Mega Drive 32X|Sega Mark III|Sega SC-3000|Sega SG-1000|Sega CD|Sega Dreamcast|Sega Game Gear|Sega Genesis|Sega Master System|Sega Mega Drive|Sega Meganet|Sega Nomad|Sega Pico|Super Nintendo MSU-1|Sega Saturn|Sega Saturn Japan|Sega VMU|Sega ST-V|Sharp X1|Sharp X68000|Sinclair ZX Spectrum|Sinclair ZX81|Sony PlayStation|Sony PlayStation Minis|Sony PocketStation|Sony PSP|Sony PSP Minis|Sord M5|SNK Classics|SNK Neo Geo|SNK Neo Geo AES|SNK Neo Geo MVS|SNK Neo Geo Pocket|SNK Neo Geo CD|SNK Neo Geo Pocket Color|Spectravideo|Super Nintendo Entertainment System|Taito Classics|Tandy TRS-80 Color Computer|Technos|Texas Instruments TI 99-4A|Thomson MO5|Thomson TO7|Tiger Game.com|Tiki-100|Tomy Tutor|VTech CreatiVision|Watara Supervision|Williams Classics|Sega CD 32X
182117:32:45:040 | MD | INFO | +0 | StartModule - You have a supported System Name for this module: "Nintendo Entertainment System"
182217:32:45:041 | MD | INFO | +0 | LocaleUtils.i18n - Started
182317:32:45:041 | MD | DEBUG | +0 | LocaleUtils.i18n - Section "English_United_Kingdom" & key "dialog.open" not found, trying section "English"
182417:32:45:041 | MD | INFO | +0 | LocaleUtils.i18n - Ended, using "Open" for "dialog.open"
182517:32:45:041 | MD | INFO | +0 | LocaleUtils.i18n - Started
182617:32:45:041 | MD | DEBUG | +0 | LocaleUtils.i18n - Section "English_United_Kingdom" & key "dialog.start" not found, trying section "English"
182717:32:45:042 | MD | INFO | +0 | LocaleUtils.i18n - Ended, using "Start" for "dialog.start"
182817:32:45:042 | MD | INFO | +0 | PluginInit - Started
182917:32:45:042 | MD | INFO | +0 | Process - Exist LaunchBox.exe