Advertisement
Guest User

rocketlauncher.log

a guest
Dec 10th, 2018
3,013
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 128.95 KB | None | 0 0
  1. [code]
  2. 10:56:14:687 | RL | INFO | +N/A | Main - RocketLauncher v1.1.1.1 (www.rlauncher.com)
  3. 10:56:14:687 | RL | WARNING | +0 | 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.
  4. 10:56:19:506 | RL | DEBUG | +4812 | Registry.Read - Reading from Registry : RootKey=HKEY_LOCAL_MACHINE, SubKey=System\CurrentControlSet\Control\Windows, ValueName=ErrorMode,RegistryVersion=32
  5. 10:56:19:506 | RL | DEBUG | +0 | Registry.Read - Registry Read finished, returning 0
  6. 10:56:19:507 | RL | INFO | +0 | Main - System Specs:
  7. RocketLauncher Dir: D:\RocketLauncher
  8. RocketLauncher is: 32-bit
  9. OS: Microsoft Windows 7 Ultimate
  10. SKU: Ultimate
  11. Total Memory: 4094.49 MB
  12. Free Memory: 3262.57 MB
  13. Used Memory: 831.926 MB
  14. SystemType: 64-bit
  15. Physical Processors: 1
  16. Logical Processors: 1
  17. GPU 1 Name: NVIDIA GeForce 210
  18. GPU 1 RAM: 1024.00 MB
  19. GPU 1 Driver Version: 9.18.13.4195
  20. Sound 1 Device: NVIDIA High Definition Audio
  21. Sound 1 Status: Enabled
  22. Sound 2 Device: NVIDIA High Definition Audio
  23. Sound 2 Status: Enabled
  24. Sound 3 Device: NVIDIA 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: NVIDIA Virtual Audio Device (Wave Extensible) (WDM)
  29. Sound 5 Status: Enabled
  30. Sound 6 Device: SoundMAX Integrated Digital HD Audio
  31. Sound 6 Status: Enabled
  32. OS Language: English_United_States
  33. System Locale: en-GB
  34. Formats Locale: en-GB
  35. Windows UI Language: en-US
  36. Text Encoding: Windows-1252
  37. OS Admin Status: Yes
  38. RL Compatibility Flags:
  39. Latest .Net Version: v4.0.30319
  40. Monitor #1 (\\.\DISPLAY1): 1280x1024 (1280x1024 work) [32bit] [60hz] [Landscape] (Primary)
  41. Current AHK Desktop Width: 1280
  42. Current AHK Desktop Height: 1024
  43. Monitor #1 DPI: 100
  44. ErrorMode: 0
  45. AutoHotkey Path:
  46. AHK Version: 1.1.13.00
  47. Unicode: No
  48. 10:56:19:507 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\RocketLauncher.exe exists
  49. 10:56:19:507 | RL | INFO | +0 | Main - Raw CLI received: "MAME terracre"
  50. 10:56:19:508 | RL | INFO | +0 | File.CheckFile - Checking if "D:\RocketLauncher\Module Extensions\RocketLauncher.dll" exists
  51. 10:56:19:527 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\Array.ahk
  52. 10:56:19:532 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Module Extensions\BinHexRW.ahk | v1.0.2
  53. 10:56:19:532 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Module Extensions\BlockInput.exe exists
  54. 10:56:19:538 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\CLR_L.ahk | vInterop
  55. 10:56:19:623 | RL | INFO | +79 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\Control_AniGif.ahk | vAniGif.ahk
  56. 10:56:19:627 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\gdip.ahk
  57. 10:56:19:628 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Module Extensions\gdip_alt.ahk | v1.0.3
  58. 10:56:19:629 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Module Extensions\gsdll32.dll exists
  59. 10:56:19:629 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Module Extensions\itextsharp.dll exists
  60. 10:56:19:638 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Module Extensions\Java.ahk | v1.0.0
  61. 10:56:19:654 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\JSON.ahk
  62. 10:56:19:656 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Module Extensions\Origin.ahk | v1.0.2
  63. 10:56:19:671 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\RegRW64.ahk
  64. 10:56:19:685 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\RIni.ahk | v1.7
  65. 10:56:19:685 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Module Extensions\SevenZipSharp.dll exists
  66. 10:56:19:687 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Module Extensions\Steam.ahk | v1.0.3
  67. 10:56:19:691 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Extension: D:\RocketLauncher\Module Extensions\VA.ahk
  68. 10:56:19:692 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Module Extensions\VA_Extension.ahk | v1.0.1
  69. 10:56:19:697 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\7z.ahk | v1.1.0
  70. 10:56:19:721 | RL | INFO | +31 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Bezel.ahk | v1.2.5
  71. 10:56:19:727 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Fade.ahk | v1.1.9
  72. 10:56:19:728 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Fade Init.ahk | v1.0.3
  73. 10:56:19:731 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Fade Animations.ahk | v1.2.4
  74. 10:56:19:749 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Keymapper.ahk | v1.1.5
  75. 10:56:19:750 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Keymapper Init.ahk | v1.0.6
  76. 10:56:19:751 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\MultiGame.ahk | v1.1.0
  77. 10:56:19:752 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\MultiGame Init.ahk | v1.0.0
  78. 10:56:19:769 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\MultiPlayer.ahk | v1.0.8
  79. 10:56:19:801 | RL | INFO | +31 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Pause.ahk | v1.2.4
  80. 10:56:19:802 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Pause Init.ahk | v1.0.3
  81. 10:56:19:803 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Password.ahk | v1.0.4
  82. 10:56:19:813 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\DLL\RocketLauncher.ahk | v1.7.1
  83. 10:56:19:814 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Log\Logger.ahk | v1.1.0
  84. 10:56:19:830 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\MiscUtils.ahk | v1.1.1
  85. 10:56:19:831 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\Environment\Registry.ahk | v1.0.0
  86. 10:56:19:841 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\Environment\StringUtils.ahk | v1.5.1
  87. 10:56:19:842 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\Environment\TimerUtils.ahk | v1.0.0
  88. 10:56:19:843 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\File\File.ahk | v1.6.0
  89. 10:56:19:844 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\File\Folder.ahk | v1.0.0
  90. 10:56:19:856 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\File\IniFile.ahk | v1.0.0
  91. 10:56:19:857 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\File\RIniFile.ahk | v1.1.1
  92. 10:56:19:858 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\File\Process.ahk | v1.5.0
  93. 10:56:19:859 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\File\Emulator.ahk | v1.1.0
  94. 10:56:19:868 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\Input\KeyUtils.ahk | v1.0.1
  95. 10:56:19:869 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\UI\Control.ahk | v1.2.0
  96. 10:56:19:870 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\UI\Window.ahk | v1.2.0
  97. 10:56:19:871 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Classes\Util\UI\WindowTitle.ahk | v1.0.0
  98. 10:56:19:881 | RL | INFO | +15 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Rom Mapping Launch Menu.ahk | v1.0.7
  99. 10:56:19:882 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Shader.ahk | v1.0.1
  100. 10:56:19:883 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Shader Init.ahk | v1.0.0
  101. 10:56:19:907 | RL | INFO | +31 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Shared.ahk | v1.4.7
  102. 10:56:19:919 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Statistics.ahk | v1.0.4
  103. 10:56:19:920 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Statistics Init.ahk | v1.0.1
  104. 10:56:19:921 | RL | INFO | +16 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\Virtual Drive.ahk | v1.0.5
  105. 10:56:19:929 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\XHotkey.ahk | v1.0.4
  106. 10:56:19:930 | RL | INFO | +0 | CRC Check - CRC matches, this is an official unedited Library: D:\RocketLauncher\Lib\XHotkey Init.ahk | v1.0.2
  107. 10:56:19:930 | RL | DEBUG | +0 | Main - Received this dbName with no path via CLI: "terracre"
  108. 10:56:19:930 | RL | DEBUG | +0 | Main - dbName: terracre
  109. 10:56:19:940 | RL | INFO | +16 | Main - Loading Front End Plugin: "RocketLauncherUI"
  110. 10:56:19:941 | RL | INFO | +0 | Process.Process - "Exist" "HyperSpin.exe"
  111. 10:56:19:952 | RL | INFO | +0 | Main - Detected HyperSpin.exe is currently running
  112. 10:56:19:953 | RL | INFO | +15 | Main - HyperSpin.exe coordinates are x0 y0 w1280 h1024
  113. 10:56:19:953 | RL | INFO | +0 | Main - RocketLauncher received "MAME" and "terracre"
  114. 10:56:20:119 | RL | INFO | +157 | Main - Did not find a "D:\RocketLauncher\Settings\MAME\Game Options.ini" file, skipping any game-specific options.
  115. 10:56:20:119 | RL | INFO | +0 | Main - terracre is using the default emulator: MAME
  116. 10:56:20:119 | RL | INFO | +0 | Main - Checking for a [MAME] section in D:\RocketLauncher\Settings\MAME\Emulators.ini
  117. 10:56:20:160 | RL | INFO | +46 | Main - Checking for a [MAME] section in D:\RocketLauncher\Settings\Global Emulators.ini
  118. 10:56:20:237 | RL | INFO | +79 | Main - Found [MAME] in D:\RocketLauncher\Settings\Global Emulators.ini
  119. 10:56:20:238 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Modules\MAME\MAME.ahk exists
  120. 10:56:20:242 | RL | WARNING | +0 | Main - CRC Check - CRC does not match official module and will not be supported. Continue using at your own risk.
  121. 10:56:20:242 | RL | INFO | +0 | Main - terracre will use module: D:\RocketLauncher\Modules\MAME\MAME.ahk
  122. 10:56:20:250 | RL | WARNING | +15 | RIniLoadVar - Created missing Global ini key: "Fade_Click_Through " in section: "Fade" in "D:\RocketLauncher\Settings\Global RocketLauncher.ini"
  123. 10:56:20:251 | RL | WARNING | +0 | RIniLoadVar - Created missing System ini key: "Fade_Click_Through " in section: "Fade" in "D:\RocketLauncher\Settings\MAME\RocketLauncher.ini"
  124. 10:56:20:789 | RL | INFO | +531 | Main - Using standard method with "Rom Extension" SkipChecks or without any SkipChecks.
  125. 10:56:20:790 | RL | INFO | +0 | CheckFile - Checking if D:\mame\mame.exe exists
  126. 10:56:20:791 | RL | INFO | +0 | Main - INI Keys read
  127. 10:56:20:913 | RL | INFO | +125 | CheckFile - Checking if D:\RocketLauncher\Module Extensions\7z.exe exists
  128. 10:56:20:913 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Module Extensions\7z.dll exists
  129. 10:56:20:936 | RL | INFO | +16 | Main - "terracre" does not qualify for MultiGame. Only roms with any of these strings in their name are acceptable: \(Disc|\(Disk|\(Cart|\(Tape|\(Cassette|\(Part|\(Side
  130. 10:56:20:936 | RL | INFO | +0 | CheckPaths - Started
  131. 10:56:20:937 | RL | INFO | +0 | CheckPaths - Looking for rom: D:\mame\roms\terracre.7z
  132. 10:56:21:289 | RL | INFO | +359 | CheckPaths - Looking for rom by name in subfolder: D:\mame\roms\terracre\terracre.7z
  133. 10:56:21:290 | RL | INFO | +0 | CheckPaths - Rom not found
  134. 10:56:21:290 | RL | INFO | +0 | CheckPaths - Looking for rom: D:\mame\roms\terracre.rar
  135. 10:56:21:290 | RL | INFO | +0 | CheckPaths - Looking for rom by name in subfolder: D:\mame\roms\terracre\terracre.rar
  136. 10:56:21:290 | RL | INFO | +0 | CheckPaths - Rom not found
  137. 10:56:21:290 | RL | INFO | +0 | CheckPaths - Looking for rom: D:\mame\roms\terracre.zip
  138. 10:56:21:307 | RL | INFO | +16 | CheckPaths - Found rom: D:\mame\roms\terracre.zip
  139. 10:56:21:307 | RL | DEBUG | +0 | CheckPaths - Current romName: terracre
  140. 10:56:21:307 | RL | DEBUG | +0 | CheckPaths - Current romPath: D:\mame\roms
  141. 10:56:21:307 | RL | DEBUG | +0 | CheckPaths - Current romExtension: .zip
  142. 10:56:21:307 | RL | INFO | +0 | CheckPaths - Ended
  143. 10:56:21:308 | RL | INFO | +0 | BuildScript - User Variables:
  144. ;----------------------------------------------------------------------------
  145. ; INJECTED VARIABLES
  146. ;----------------------------------------------------------------------------
  147.  
  148. #NoTrayIcon
  149. #InstallKeybdHook
  150. MiscUtils.DetectHiddenWindows("On")
  151. SetTitleMatchMode, 2
  152. SendMode, Event
  153. 0 = 2
  154. rlPath = D:\RocketLauncher
  155. pluginPath = D:\RocketLauncher\Plugins
  156. pluginName = RocketLauncherUI
  157. pluginExt = .plugin
  158. contextOnExit =
  159. rlMode =
  160. rlTitle = RocketLauncher
  161. rlVersion = 1.1.1.1
  162. rlAuthor = djvj
  163. rlURL = www.rlauncher.com
  164. langFile = D:\RocketLauncher\Data\Language\Localization.ini
  165. primMonitor = 1
  166. frontendPID = 640
  167. frontendPath = D:\hyperspin
  168. frontendExe = HyperSpin.exe
  169. frontendExt = exe
  170. frontendName = HyperSpin
  171. frontendDrive = D
  172. exitEmulatorKey = ~Esc
  173. restoreFE = false
  174. exitScriptKey = ~q & ~s
  175. toggleCursorKey = ~e & ~t
  176. emuFullPath = D:\mame\mame.exe
  177. emuPath = D:\mame
  178. emuName = MAME
  179. emuExt = exe
  180. baseRomPath = D:\Stella\newroms\MAME
  181. romPath = D:\mame\roms
  182. romPathFromIni = D:\mame\roms|D:\Stella\newroms\MAME
  183. romExtension = .zip
  184. romExtensionOrig = .zip
  185. romExtensions = 7z|rar|zip|chd|cue|32x|a26|a52|a78|bin|caq|col|cpr|gg|gb|gba|gbc|int|lnx|rom|sms|st2|md|j64|n64|nes|ngc|ngp|pce|sfc|sv|vb|vec|ws|wsc
  186. executable = mame.exe
  187. systemDbName = MAME
  188. systemName = MAME
  189. dbPath =
  190. dbName = terracre
  191. dbExt =
  192. romName = terracre
  193. romMapPath =
  194. romMappingEnabled = false
  195. romMappingLaunchMenuEnabled = false
  196. romMappingFirstMatchingExt = false
  197. romMappingShowAllRomsInArchive = true
  198. romMappingNumberOfGamesByScreen = 7
  199. romMappingHideParent = false
  200. romMappingMenuWidth = 400
  201. romMappingMenuMargin = 65
  202. romMappingTextFont = Bebas Neue
  203. romMappingTextOptions = cFFFFFFFF r4 s60 Bold
  204. romMappingDisabledTextColor = ff888888
  205. romMappingTextSizeDifference = 7
  206. romMappingTextMargin = 15
  207. romMappingTitleTextFont = Bebas Neue
  208. romMappingTitleTextOptions = cFFFFFFFF r4 s90 Bold
  209. romMappingTitle2TextFont = Bebas Neue
  210. romMappingTitle2TextOptions = cFFFFFFFF r4 s22 Bold
  211. romMappingGameInfoTextFont = Bebas Neue
  212. romMappingGameInfoTextOptions = cFFFFFFFF r4 s22 Regular
  213. romMappingGameNameTextFont = Bebas Neue
  214. romMappingGameNameTextOptions = cFFFFFFFF r4 s40 Regular
  215. romMappingBackgroundBrush = aa000000
  216. romMappingColumnBrush = 33000000
  217. romMappingButtonBrush1 = 6f000000
  218. romMappingButtonBrush2 = 33000000
  219. romMappingBackgroundAlign = Stretch and Lose Aspect
  220. romMappingMenuFlagWidth = 55
  221. romMappingMenuFlagSeparation = 7
  222. romMappingDefaultMenuList = FullList
  223. romMappingSingleFilteredRomAutomaticLaunch = false
  224. altArchiveNameOnly =
  225. altRomNameOnly =
  226. altArchiveAndRomName =
  227. altArchiveAndManyRomNames =
  228. altRomNamesOnly =
  229. romMapScenario =
  230. skipchecks = false
  231. romMatchExt = false
  232. blockInputTime = 0
  233. blockInputFile = D:\RocketLauncher\Module Extensions\BlockInput.exe
  234. errorLevelReporting = false
  235. lockLaunch = false
  236. lockLaunchGame =
  237. screenRotationAngle = 0
  238. screenRotationAngleGame =
  239. setResolution =
  240. logFile =
  241. logLabel := [" INFO"," WARNING"," ERROR"," DEBUG"," TRACE"]
  242. logLevel = 4
  243. logShowDebugConsole = false
  244. logShowCommandWindow = false
  245. logCommandWindow = false
  246. logIncludeModule = true
  247. logIncludeFileProperties = false
  248. logIncludeDLLLogs = false
  249. errorSounds = true
  250. rlDebugConsoleStdout =
  251. sysLang = English_United_States
  252. sysType = 64-bit
  253. broadcastWindowTitle =
  254. navUpKey = Up
  255. navDownKey = Down
  256. navLeftKey = Left
  257. navRightKey = Right
  258. navSelectKey = Enter
  259. navP2UpKey = Numpad8
  260. navP2DownKey = Numpad2
  261. navP2LeftKey = Numpad4
  262. navP2RightKey = Numpad6
  263. navP2SelectKey = NumpadEnter
  264. originalWidth = 1280
  265. originalHeight = 1024
  266. vdEnabled = false
  267. vdFullPath =
  268. vdUseSCSI = true
  269. vdDriveLetter =
  270. vdDriveLetterScsi =
  271. vdAddDrive = true
  272. demulShooterPath =
  273. servoStikEnabled = false
  274. servoStikExitMode = false
  275. ledblinkyEnabled = false
  276. ledblinkySystemName =
  277. ledblinkyFullPath =
  278. ledblinkyProfilePath = D:\RocketLauncher\Profiles\LEDBlinky
  279. ledblinkyRLProfile = D:\RocketLauncher\Profiles\LEDBlinky\RocketLauncher
  280. winIPACFullPath =
  281. ultraMapEnabled = false
  282. ultraMapFullPath =
  283. emuIdleShutdown = 0
  284. launchPasswordHash = UpUpDownDownLeftRightLeftRight
  285. hideCursor = false
  286. hideEmu = false
  287. hideFE = false
  288. suspendFE = false
  289. fadeIn = false
  290. fadeInDuration = 500
  291. fadeInTransitionAnimation = DefaultAnimateFadeIn
  292. fadeInDelay = 0
  293. fadeInExitDelay = 0
  294. fadeOutExitDelay = 0
  295. fadeOut = false
  296. fadeOutExtraScreen = false
  297. fadeOutDuration = 500
  298. fadeOutTransitionAnimation = DefaultAnimateFadeOut
  299. fadeOutDelay = 0
  300. fadeLyrInterpolation = 7
  301. fadeMuteEmulator = false
  302. fadeUseBackgrounds = false
  303. fadeClickThrough = false
  304. fadeSounds = true
  305. fade7zProgressMode = extraction
  306. fadeWidthBaseRes = 1920
  307. fadeHeightBaseRes = 1080
  308. fadeLyr1Color = FF000000
  309. fadeLyr1AlignImage = Stretch and Lose Aspect
  310. fadeLyr2Pos = Stretch and Lose Aspect
  311. fadeLyr2X = 0
  312. fadeLyr2Y = 0
  313. fadeLyr2W =
  314. fadeLyr2H =
  315. fadeLyr2Adjust = 1
  316. fadeLyr2PicPad = 0
  317. fadeLyr2Prefix = Extra Layer 1 - Console
  318. fadeLyr3Pos = Center
  319. fadeLyr3X = 450
  320. fadeLyr3Y = 450
  321. fadeLyr3W =
  322. fadeLyr3H =
  323. fadeLyr3Adjust = 1
  324. fadeLyr3PicPad = 0
  325. fadeLyr3Speed = 750
  326. fadeLyr3Animation = DefaultFadeAnimation
  327. fadeLyr37zAnimation = DefaultFadeAnimation
  328. fadeLyr3Type = imageandbar
  329. fadeLyr3ImgFollow7zProgress = true
  330. fadeLyr3Repeat = 1
  331. fadeLyr3BackImageTransparency = 30
  332. fadeLyr3StaticPos = No Alignment
  333. fadeLyr3StaticX = 0
  334. fadeLyr3StaticY = 870|1575
  335. fadeLyr3StaticW =
  336. fadeLyr3StaticH =
  337. fadeLyr3StaticAdjust = 1
  338. fadeLyr3StaticPicPad = 0
  339. fadeLyr3StaticPrefix = Info Bar
  340. fadeLyr4Adjust = 1
  341. fadeLyr4X = 1792|952
  342. fadeLyr4Y = 891|1596
  343. fadeLyr4W = 128
  344. fadeLyr4H =
  345. fadeLyr4Pos = No Alignment
  346. fadeLyr4FPS = 50
  347. fadeLyr4PicPad = 0
  348. fadeTranspGifColor = FFFFFF
  349. fadeBarWindow = Image
  350. fadeBarWindowX =
  351. fadeBarWindowY =
  352. fadeBarWindowW = 900
  353. fadeBarWindowH =
  354. fadeBarWindowR = 30
  355. fadeBarWindowM = 30
  356. fadeBarWindowHatchStyle = 8
  357. fadeBar = 7zOnly
  358. fadeProgressDuration = 0
  359. fadeBarBack = true
  360. fadeBarBackColor = FF555555
  361. fadeBarH = 30
  362. fadeBarR = 10
  363. fadeBarColor = DD00BFFF
  364. fadeBarHatchStyle = 8
  365. fadeBarPercentageText = true
  366. fadeBarInfoText = true
  367. fadeBarXOffset = 0
  368. fadeBarYOffset = 150
  369. fadeRomInfoDescription = filtered text
  370. fadeRomInfoSystemName = image
  371. fadeRomInfoYear = text with label
  372. fadeRomInfoDeveloper = text with label
  373. fadeRomInfoPublisher = text with label
  374. fadeRomInfoGenre = disabled
  375. fadeRomInfoRating = image
  376. fadeRomInfoOrder = Description|SystemName|Year|Developer|Genre|Rating|Publisher
  377. fadeRomInfoTextPlacement = User Defined
  378. fadeRomInfoTextMargin = 7
  379. fadeRomInfoText1Options = w1600|787 h90 x165 y870|1575 cFFE1E1E1 r4 s90 Left Regular
  380. fadeRomInfoText2Options = w400 x8 y15 cFF555555 r4 s60 Bold
  381. fadeRomInfoText3Options = w310 x165 y960|1665 cFFE1E1E1 r4 s66 Left Regular
  382. fadeRomInfoText4Options = w1305|492 h66 x460 y960|1665 cFFE1E1E1 r4 s66 Left Regular
  383. fadeRomInfoText5Options = cFF555555 r4 s42 Bold
  384. fadeRomInfoText6Options = h135 x15 y885|1590 cFFCFCFCA r4 s120 Regular
  385. fadeRomInfoText7Options = h135 x15 y885|1590 cFFCFCFCA r4 s120 Regular
  386. fadeStats_Number_of_Times_Played = text with label
  387. fadeStats_Last_Time_Played = text with label
  388. fadeStats_Average_Time_Played = text with label
  389. fadeStats_Total_Time_Played = text with label
  390. fadeStats_System_Total_Played_Time = text with label
  391. fadeStats_Total_Global_Played_Time = text with label
  392. fadeStatsInfoOrder = Number_of_Times_Played|Last_Time_Played|Average_Time_Played|Total_Time_Played|System_Total_Played_Time|Total_Global_Played_Time
  393. fadeStatsInfoTextPlacement = topRight
  394. fadeStatsInfoTextMargin = 7
  395. fadeStatsInfoText1Options = cFFB4B4B4 r4 s22 Bold
  396. fadeStatsInfoText2Options = cFFB4B4B4 r4 s22 Bold
  397. fadeStatsInfoText3Options = cFFB4B4B4 r4 s22 Bold
  398. fadeStatsInfoText4Options = cFFB4B4B4 r4 s22 Bold
  399. fadeStatsInfoText5Options = cFFB4B4B4 r4 s22 Bold
  400. fadeStatsInfoText6Options = cFFB4B4B4 r4 s22 Bold
  401. fadeText1X = 0
  402. fadeText1Y = 0
  403. fadeText1Options = cFFB4B4B4 r4 s30 Right Bold
  404. fadeText1 = Loading Game
  405. fadeText2X = 0
  406. fadeText2Y = 0
  407. fadeText2Options = cFFB4B4B4 r4 s30 Right Bold
  408. fadeText2 = Extraction Complete, Ready
  409. fadeText3 = Loading Game
  410. fadeText4 = Loading Complete
  411. fadeFont = Bebas Neue
  412. fadeSystemAndRomLayersOnly = false
  413. fadeExtractionTime = disabled
  414. fadeExtractionTimeTextX = 0
  415. fadeExtractionTimeTextY = 0
  416. fadeExtractionTimeTextOptions = cFF555555 r4 s20 Bold
  417. fadeInterruptKey =
  418. detectFadeErrorEnabled = true
  419. fadeImgPath = D:\RocketLauncher\Media\Fade
  420. RLDataPath = D:\RocketLauncher\Data
  421. RLMediaPath = D:\RocketLauncher\Media
  422. RLErrSoundPath = D:\RocketLauncher\Media\Sounds\Error
  423. modulesPath = D:\RocketLauncher\Modules
  424. moduleFullName = D:\RocketLauncher\Modules\MAME\MAME.ahk
  425. moduleName = MAME
  426. modulePath = D:\RocketLauncher\Modules\MAME
  427. moduleExtension = ahk
  428. moduleExtensionsPath = D:\RocketLauncher\Module Extensions
  429. libPath = D:\RocketLauncher\Lib
  430. sevenZEnabled = false
  431. sevenZPath = D:\RocketLauncher\Module Extensions\7z.exe
  432. sevenZDllPath = D:\RocketLauncher\Module Extensions\7z.dll
  433. sevenZExtractPath = D:\temp
  434. sevenZExtractPathOrig =
  435. sevenZAttachSystemName = false
  436. sevenZDelTemp = true
  437. sevenZFormats = .zip|.rar|.7z|.lzh|.gzip|.tar
  438. sevenZFormatsNoP = zip|rar|7z|lzh|gzip|tar
  439. sevenZFormatsRegEx = \.zip|\.rar|\.7z|\.lzh|\.gzip|\.tar
  440. 7zExtractPath = D:\temp
  441. mgEnabled = false
  442. mgKey = ~NumpadSub
  443. mgBackgroundColor = FF000000
  444. mgSidePadding = 0.2
  445. mgWidthBaseRes = 1920
  446. mgHeightBaseRes = 1080
  447. mgYOffset = 500|800
  448. mgFont = Arial
  449. mgText1Options = x10p y250|500 w80p Center cBBFFFFFF r4 s100 BoldItalic
  450. mgText1Text = Please select a game
  451. mgText2Options = w96p cFFFFFFFF r4 s50 Center BoldItalic
  452. mgText2Offset = 100
  453. mgUseSound = true
  454. mgSoundfreq = 300
  455. mgExitEffect = none
  456. mgSelectedEffect = rotate
  457. mgUseGameArt = false
  458. mgCandidate =
  459. mgValidTypes = \(Disc|\(Disk|\(Cart|\(Tape|\(Cassette|\(Part|\(Side
  460. mgOnLaunch = false
  461. pauseEnabled = true
  462. pauseKey = ~NumpadAdd
  463. pauseBackToMenuBarKey = X
  464. pauseZoomInKey = C
  465. pauseZoomOutKey = V
  466. pauseScreenshotKey = ~PrintScreen
  467. pauseHiToTextPath = D:\RocketLauncher\Module Extensions\HiToText.exe
  468. pauseSaveStateKeyCodes = {shift down}{F7 down}{F7 up}{shift up}
  469. pauseLoadStateKeyCodes = {F7 down}{F7 up}
  470. keyboardEncoder =
  471. keyboardEncoderEnabled = false
  472. keymapperEnabled = true
  473. keymapperAHKMethod = false
  474. keymapper = joytokey
  475. xpadderFullPath = D:\Utilities\Xpadder\xpadder.exe
  476. joyToKeyFullPath = D:\RocketLauncher\Profiles\JoyToKey\JoyToKey.exe
  477. profilePath = D:\RocketLauncher\Profiles
  478. keymapperProfilePath = D:\RocketLauncher\Profiles\joytokey
  479. keymapperFrontEndProfileName = HyperSpin
  480. keymapperFrontEndProfile = joytokey
  481. keymapperRocketLauncherProfileEnabled = true
  482. joyIDsEnabled = true
  483. joyIDsPreferredControllersGlobal = blue|red
  484. joyIDsPreferredControllersSystem = use_global
  485. joyIDsPreferredControllersOnExit =
  486. CustomJoyNamesEnabled = true
  487. CustomJoyNames = Generic USB Joystick|blue\Generic USB Joystick|red
  488. rotateMethod = false
  489. FEProfile = D:\RocketLauncher\Profiles\joytokey\HyperSpin
  490. defaultProfile = D:\RocketLauncher\Profiles\joytokey\_Default
  491. systemProfile = D:\RocketLauncher\Profiles\joytokey\MAME
  492. xPadderSystemProfile = D:\RocketLauncher\Profiles\joytokey\MAME\_Default
  493. emuProfile = D:\RocketLauncher\Profiles\joytokey\MAME\MAME
  494. romProfile = D:\RocketLauncher\Profiles\joytokey\MAME\terracre
  495. RocketLauncherProfile = D:\RocketLauncher\Profiles\joytokey\RocketLauncher
  496. blankProfile = D:\RocketLauncher\Profiles\joytokey\blank
  497. ahkFEProfile = D:\RocketLauncher\Profiles\AHK\HyperSpin
  498. ahkDefaultProfile = D:\RocketLauncher\Profiles\AHK\_Default
  499. ahkSystemProfile = D:\RocketLauncher\Profiles\AHK\MAME
  500. ahkEmuProfile = D:\RocketLauncher\Profiles\AHK\MAME\MAME
  501. ahkRomProfile = D:\RocketLauncher\Profiles\AHK\MAME\terracre
  502. ahkRocketLauncherProfile = D:\RocketLauncher\Profiles\AHK\RocketLauncher
  503. bezelEnabled = false
  504. bezelICEnabled = false
  505. shaderName = false
  506. shaderColor =
  507. shaderTransparency =
  508. statisticsEnabled = true
  509. pressDuration = -1
  510. emuVolume = 1
  511. dxwndIni = D:\RocketLauncher\Module Extensions\dxwnd\dxwnd.ini
  512. dxwndFullPath = D:\RocketLauncher\Module Extensions\dxwnd\dxwnd.exe
  513. qResFullPath = D:\RocketLauncher\Module Extensions\QRes.exe
  514. mon1O =
  515. pacDrivedllFile = D:\RocketLauncher\Module Extensions\PacDrive32.dll
  516. userFadeAnimIniFile = D:\RocketLauncher\Lib\User Fade Animations.ini
  517. testFile =
  518. testDuration =
  519. initialErrorMode = 0
  520.  
  521. 10:56:21:311 | RL | INFO | +0 | BuildScript - Loaded XHotkey Init.ahk scripts
  522. 10:56:21:311 | RL | INFO | +0 | BuildScript - Loaded Keymapper Init.ahk scripts
  523. 10:56:21:311 | RL | INFO | +0 | BuildScript - Loaded Pause Init.ahk scripts
  524. 10:56:21:311 | RL | INFO | +0 | BuildScript - Loaded Statistics Init.ahk scripts
  525. 10:56:21:311 | RL | WARNING | +0 | BuildScript - "D:\RocketLauncher\Lib\User Functions Init.ahk" not found
  526. 10:56:21:311 | RL | DEBUG | +0 | BuildScript - Module starts on line: 2
  527. 10:56:21:311 | RL | INFO | +0 | BuildScript - Validating module
  528. 10:56:21:425 | RL | INFO | +125 | BuildScript - Validation complete
  529. 10:56:21:425 | RL | INFO | +0 | BuildScript - Module:
  530. MEmu = MAME
  531. MEmuV = v0.166
  532. MURL = http://www.mame.net/
  533. MAuthor = djvj,faahrev,brolly,Tomkun
  534. MVersion = 2.3.7
  535. MCRC = 5C737136
  536. iCRC = 25E2CCF
  537. mId = 635746812784197028
  538. MSystem = "AAE","Aamber Pegasus","Acorn Electron","Amstrad CPC","Amstrad GX4000","APF Imagination Machine","Apple II","Apple IIGS","Applied Technology MicroBee","Atari 8-Bit","Atari 2600","Atari 5200","Atari 7800","Atari Classics","Atari Jaguar","Atari Lynx","Bally Astrocade","Bandai Super Vision 8000","Bandai WonderSwan","Bandai WonderSwan Color","Bit Corporation Gamate","Camputers Lynx","Capcom","Capcom Classics","Capcom Play System","Capcom Play System II","Capcom Play System III","Casio PV-1000","Casio PV-2000","Cave","Coleco ADAM","ColecoVision","Commodore 64","Commodore MAX Machine","Creatronic Mega Duck","Data East Classics","EACA EG2000 Colour Genie","Emerson Arcadia 2001","Entex Adventure Vision","Epoch Game Pocket Computer","Epoch Super Cassette Vision","Exidy Sorcerer","Fairchild Channel F","Fujitsu FM-7","Funtech Super Acan","GamePark 32","GCE Vectrex","Hartung Game Master","HBMAME","Interton VC 4000","Irem Classics","JungleTac Sport Vii","Jupiter Ace","Konami Classics","LaserDisc","Magnavox Odyssey 2","MAME","Matra & Hachette Alice","Mattel Aquarius","Mattel Intellivision","MGT Sam Coupe","Midway Classics","Milton Bradley MicroVision","Namco Classics","Namco System 22","NEC PC-8801","NEC PC Engine","NEC PC Engine-CD","NEC SuperGrafx","NEC TurboGrafx-16","NEC TurboGrafx-CD","Nintendo 64","Nintendo 64DD","Nintendo Arcade Systems","Nintendo Classics","Nintendo Entertainment System","Nintendo Famicom","Nintendo Famicom Disk System","Nintendo Game Boy","Nintendo Game Boy Advance","Nintendo Game Boy Color","Nintendo Pokemon Mini","Nintendo Satellaview","Nintendo Super Famicom","Nintendo Super Game Boy","Nintendo Virtual Boy","Othello Multivision","PacMAME","Philips CD-i","Philips VG 5000","Philips Videopac Plus G7400","RCA Studio II","Sega 32X","Sega CD","Sega Classics","Sega Game Gear","Sega Genesis","Sega Master System","Sega Mega Drive","Sega Model 1","Sega Pico","Sega Saturn","Sega SC-3000","Sega SG-1000","Sega ST-V","Sega VMU","Sharp X1","Sinclair ZX81","SNK Classics","SNK Neo Geo","SNK Neo Geo AES","SNK Neo Geo AES","SNK Neo Geo CD","SNK Neo Geo MVS","SNK Neo Geo Pocket","SNK Neo Geo Pocket Color","Sony PlayStation","Sony PocketStation","Sord M5","Soundic Victory MPT-02","Super Nintendo Entertainment System","Taito Classics","Tandy TRS-80 Color Computer","Texas Instruments TI 99-4A","Tiger Game.com","Tomy Tutor","VTech CreatiVision","Watara Supervision","Williams Classics"
  539. ;----------------------------------------------------------------------------
  540. ; Notes:
  541. ; This module now includes everything from the legacy MAME and MESS modules, but combined to match the merge of the 2 emulators that occured on version 0.162.
  542. ;
  543. ; Exit fade will only work correctly if you don't have Esc, the default MAME exit key, as your exit key. If you use Esc, turn off the ExitScreen
  544. ; This module will set your rom paths on the fly via CLI, but you must make sure the RLUI module setting for this module "MAME_BIOS_Path" is correctly set. It defaults to your roms subfolder where MAME.exe is found.
  545. ; This module assumes you have bios zip in your MAME "roms" directory, which might be different than your actual roms directory, for each system you need this module for. All tested systems listed below
  546. ; If MAME has a problem reading the bios zips, try archving them with "no compression"
  547. ; This site can help a ton with details for the various systems supported: http://www.progettoemma.net/mess/index.html
  548. ; You may get a black screen or MAME may close w/o notice if you do not have a bios rom for your system when one is needed.
  549. ; If you use bezel, it is recommended to set the module bezel mode to normal, and go to your MAME.ini file, on your emulator folder, and choose these options: artwork_crop 1, use_backdrops 1, use_overlays 1, use_bezels 0
  550. ;
  551. ; Command Line Options - http://easyemu.mameworld.info/mameguide/mameguide-options.html
  552. ; High Scores DO NOT SAVE when cheats are enabled!
  553. ; HLSL Documentation: http://mamedev.org/source/docs/hlsl.txt.html
  554. ; If you use MAME for AAE, create a vector.ini in mame's ini subfolder and paste these HLSL settings in there: http://www.mameworld.info/ubbthreads/showflat.php?Cat=&Number=309968&page=&view=&sb=5&o=&vc=1
  555. ;
  556. ; Be aware that several systems will require a BIOS zip with their roms inside. They all come bundled in the MAME set so make sure you add your MAME roms folder to the
  557. ; roms path for that system. If you have doubts about their filenames check the mTypeVar module variable content.
  558. ;
  559. ; Following systems will also require some specific files to operate properly:
  560. ; APF Imagination Machine - apfimag (tape games), apfm1000 (cart games)
  561. ; Camputers Lynx - lynx64k, lynx96k, lynx128k
  562. ; Coleco ADAM - adam, adam_ddp, adam_fdc, adam_kb, adam_prn, adam_spi
  563. ; NEC PC Engine-CD - "Super CD-ROM2 System V3.0 (J).pce" [262,656 bytes] (placed in the roms subfolder in the emuPath)
  564. ; NEC TurboGrafx-CD - "Super CD-ROM2 System V3.01 (U).pce" [262,144 bytes] (placed in the roms subfolder in the emuPath)
  565. ; Sega CD - segacd, megacd, megacd2j (megacd2j seems to be more compatible over megacdj)
  566. ; Sony PlayStation - psa, pse, psj, psu
  567. ;
  568. ; Tape Control:
  569. ; MAME tape/cassette emulation is terrible because normally it means you need to manually start and stop the tapes yourself so it's highly suggested that you use another emulator for such systems.
  570. ; Tape control commands are accessible through the UI, press tab and then select Tape Control and you can start/stop the loaded tape from there.
  571. ; The following hotkeys can also be used:
  572. ; F2 - Start Tape
  573. ; Left Shift + F2 - Stop Tape
  574. ; Insert - While held, runs the game with throttling disabled and with the maximum frameskip. Useful to speedup the long tape loading process.
  575. ;
  576. ; Be aware that tape games are normally used on PC systems therefore it's likely that full keyboard emulation is enabled which means that you'll need to disable it in order to use any of the above
  577. ; hotkeys. To disable it press the Scroll Lock key, press it again to enable it back.
  578. ;
  579. ; 7z Support:
  580. ; Make sure you have 7z disabled for all MAME Arcade systems. Their roms are supposed to be archived, if you have 7z enabled then your games will fail to load. It's
  581. ; fine to enable 7z to non-arcade systems.
  582. ;
  583. ; Custom Configuration Files:
  584. ; If you want to use custom configuration files (.cfg files) for some games you will need to store them inside your MAME cfg folder using the following structure:
  585. ; cfg\mame_system_name\database_rom_name\mame_system_name.cfg
  586. ; An example of a game that requires specific settings is ICBM Attack for the Bally Astrocade, in this case special cfg file should be:
  587. ; cfg\astrocde\I.C.B.M. Attack (USA) (Unl)\astrocde.cfg
  588. ;
  589. ; Ini Files:
  590. ; Module will set most settings through command line which will override any settings you might have on your MAME ini files. Everything else will be read from
  591. ; those. MAME supports a hierarchical ini file structure and will load settings from several ini files following a specific order:
  592. ;- mame.ini
  593. ;- <mymame>.ini (i.e. if MAME was renamed mame060.exe, MAME parses mame060.ini here)
  594. ;- debug.ini (if the debugger is enabled)
  595. ;- <parent>.ini (for clones only, may be called recursively)
  596. ;- <gamename>.ini
  597. ;- vertical.ini (for games with vertical monitor orientation)
  598. ;- horizont.ini (for games with horizontal monitor orientation)
  599. ;- vector.ini (for vector games only)
  600. ;- <driver>.ini (based on the source filename of the driver)
  601. ;
  602. ; The settings in the later ini's override those in the earlier ini's.
  603. ;
  604. ; It's highly recommended that you set skipchecks to 'Rom Only" for MAME otherwise RocketLauncher won't be able to launch several games due
  605. ; to the way MAME roms are packaged. This will be even more noticeable for those using merged sets.
  606. ;
  607. ; Bally Astrocade:
  608. ; ICBM requires a soft reset (even on the real hardware) to launch. You can read about it here: http://www.ballyalley.com/ballyalley/articles/Playing_ICBM_Attack_Using_MESS.pdf
  609. ; Other games might require this as well, you can enable this in the module's settings so the machine is reset automatically on launch, otherwise you need to press F3 to start the game.
  610. ; Also ICBM Attack uses different controls then the rest of the games. Make sure you follow the procedure explained above under "Custom Configuration Files" to create such file.
  611. ;
  612. ; GCE Vectrex:
  613. ; Requires a vectrex.lay and a png overlay for each game. These all need to be placed in the MAME\artwork\vectrex folder.
  614. ; You can download all these pngs and the lay file in my ftp folder. You need to use the HyperList XML to match the pngs.
  615. ;
  616. ; Jupiter Ace:
  617. ; Set mame to 48k ram
  618. ;
  619. ; Magnavox Odyssey 2:
  620. ; Euro games should use the videopac bios instead of the odyssey2 one or you'll get some timing issues.
  621. ; Use the systemName ini file in the folder with this module for this, example:
  622. ; [Moto-Crash (France)]
  623. ; Bios=videopac
  624. ;
  625. ; RCA Studio 2:
  626. ; Most of the games require you to press a button to start the game, like 1 or 2 (refer to the game's manual).
  627. ; The game screen will be black until you do.
  628. ;
  629. ; Texas Instruments TI 99/4A:
  630. ; This system requires full keyboard emulation to work properly
  631. ; Split cart dumps are not supported since MESS .145 so you'll have to convert them to RPK format or use an earlier version of MESS (and a different module)
  632. ; You can check how to convert split cart dumps to RPK here:
  633. ; http://www.ninerpedia.org/index.php/MESS_multicart_system
  634. ; For floppy games make sure you have a RPK dump of an extended basic rom on your roms folder. It should be named "extended_basic.rpk"
  635. ; This system requires you to use a MAME build with Direct Input enabled in order to auto start the games. Most games will require commands to be typed to start
  636. ; and it's normally too complex to be able to do it through the -ab switch so SendCommand is used instead which means a Direct Input enabled MAME version is required.
  637. ;
  638. ; Bezels:
  639. ; Module settings control whether RocketLauncher or MAME bezels are shown
  640. ; In the bezel normal mode only RocketLauncher Bezels will be show and the MAME use_bezels option will be forced disbaled
  641. ; In the bezel layout mode, RocketLauncher Bezels will be drawn only when you do not have a layout file on your MAME folders for the current game
  642. ;
  643. ; ServoStik:
  644. ; The module will automatically control any connected ServoStiks found on the system.
  645. ; It does this by reading the xml info from MAME. If that XML info has directional info at 4 or less, 4-way mode will be enabled. All others get 8-way mode.
  646. ;
  647. ; Per game controller types:
  648. ; MAME allows you to change the controller type for each game by using slot devices. Slot devices are highly customizable and vary greatly from system to
  649. ; system so to avoid adding a huge complexity to the module this must be done through the Parameters settings.
  650. ; Slot devices are stored in the MAME ini file you are using, so the best way to find the command line you need to use is to start your game set the slot devices
  651. ; through the MAME UI (Press tab while in MAME) exit and then open the MAME ini file and search for a section named SLOT DEVICES.
  652. ; This is an example for Atari 2600 for a game using wheel controllers on both joy ports:
  653. ; #
  654. ; # SLOT DEVICES
  655. ; #
  656. ; joyport1 wheel
  657. ; joyport2 wheel
  658. ; The suggested method is to set the desired controllers you want to use by default in the Module Global Settings, in this case under the Atari 2600 tab you would
  659. ; set Parameters=-joyport1 joy -joyport2 joy
  660. ; And then for specific games do the same under Module Specific Settings for that system, if a game requires the wheel controller you'd set
  661. ; Parameters=-joyport1 wheel -joyport2 wheel
  662. ;
  663. ; Another option is to set the default values in the MAME ini file and make sure you also set writeconfig to 0.
  664. ; Swapping slot devices wipes out SYSTEM custom configs on the unplugged controllers, so to avoid any customised controls getting erased everytime you change slot devices,
  665. ; ensure you set your controls in the main MAME config file (MAME.ini), not the system one (ex. Atari 2600.ini).
  666. ;
  667. ; Linking/NetPlay:
  668. ; The module will automatically set correct network ports for linked games.
  669. ; Up to 8 players on the same PC are supported. Multiple copies of MAME will be launched.
  670. ; Placement of the screens are automatic but can be controlled in RocketLauncherUI MAME module settings. Windowed mode is required when more than one copy of mame is launched and is set automatically.
  671. ; Each player will use a different cfg and nvram folder in your MAME folder. Player 1 will always use .\cfg and .\nvram.
  672. ; Players 2 through 8 will use .\cfg2, .\cfg3, etc and .\nvram2, .\nvram3, etc
  673. ; These folders and cfg/nvram files will be automatically created for you on launch so you do not need to create them manually.
  674. ; Global inputs is automatically turned on for you but it is your job to setup individual controls for each instance. MAME only supports raw-input in this mode however.
  675. ; Over a LAN/WAN connection only 2 players are supported due to the way the ports are designated, it's impossible to automate port allocation because there is no 1 server where all hosts connect to.
  676. ; Default starting port for the Master is 15111 and consecutively goes up from there upto 15119 for 8 players. You can change the default starting port in the module settings if it conflicts with used ports on your network.
  677. ; There are other network related settings in the module settings to assist with starting IPs and connectivity, so check them out as well.
  678. ;
  679. ; NVRAM Automation for linked games:
  680. ; When launching linked games on the same pc NVRAM settings are automatically set for you so each player will be unique.
  681. ; For instance, in Virtua Racing, Player 1 is red, player 2 is blue, player 3 is yellow, etc.
  682. ; To do this, some other options are also set automatically for you as well, like region, difficulty, countr, course, etc
  683. ; I set these to defaults, but prefer USA region. If you do not like these, you will have to disable NVRAM automation in the module settings in RocketLauncherUI.
  684. ;
  685. ; Additional Link info that may be of some importance:
  686. ; The original Model-1 has a max Bandwidth of 6 MBit/s (TOTX173/TORX173).
  687. ; One Board sends about 20 KByte/s.
  688. ; So bandwidth CLIENTSIDE is like...
  689. ; 2 Boards - 20 KByte/s inbound and 20 KByte/s outbound.
  690. ; 3 Boards - 40 KByte/s inbound and 20 KByte/s outbound.
  691. ; 4 Boards - 60 KByte/s inbound and 20 KByte/s outbound.
  692. ; etc.
  693. ; Some good info on Linking: http://www.mameworld.info/ubbthreads/showflat.php?Cat=&Number=297577&page=0
  694. ; also http://forum.arcadecontrols.com/index.php/topic,130136.msg1331485.html
  695. ;----------------------------------------------------------------------------
  696. StartModule()
  697. BezelGUI()
  698.  
  699. dialogOpen := i18n("dialog.open") ; Looking up local translation
  700. primaryExe := new Emulator(emuPath . "\" . executable) ; instantiate emulator executable object
  701. emuPrimaryWindow := new Window(new WindowTitle("","MAME")) ; instantiate primary emulator window object
  702. emuOpenWindow := new Window(new WindowTitle(dialogOpen,"ConsoleWindowClass"))
  703. emuConsoleWindow := new Window(new WindowTitle("","ConsoleWindowClass"))
  704. emuDebugWindow := new Window(new WindowTitle("","MAMEDebugWindow"))
  705. emuOutputWindow := new Window(new WindowTitle("","MAMEOutput"))
  706.  
  707. ; This object controls how the module reacts to different systems. MAME can play a lot of systems, but needs to know what system you want to run, so this module has to adapt.
  708. mTypeVar := "
  709. ( LTrim
  710. Aamber Pegasus|pegasus
  711. Acorn Electron|electron
  712. Amstrad CPC|cpc664
  713. Amstrad GX4000|gx4000
  714. APF Imagination Machine|apfimag
  715. Apple II|apple2ep
  716. Apple IIGS|apple2gs
  717. Applied Technology MicroBee|mbeeic
  718. Atari 8-Bit|a800
  719. Atari 2600|a2600
  720. Atari 5200|a5200
  721. Atari 7800|a7800
  722. Atari Jaguar|jaguar
  723. Atari Lynx|lynx
  724. Bally Astrocade|astrocde
  725. Bandai Super Vision 8000|sv8000
  726. Bandai WonderSwan|wswan
  727. Bandai WonderSwan Color|wscolor
  728. Bit Corporation Gamate|gamate
  729. Camputers Lynx|lynx128k
  730. Casio PV-1000|pv1000
  731. Casio PV-2000|pv2000
  732. Coleco ADAM|adam
  733. ColecoVision|coleco
  734. Commodore 64|c64
  735. Commodore MAX Machine|vic10
  736. Creatronic Mega Duck|megaduck
  737. EACA EG2000 Colour Genie|cgenie
  738. Emerson Arcadia 2001|arcadia
  739. Entex Adventure Vision|advision
  740. Epoch Game Pocket Computer|gamepock
  741. Epoch Super Cassette Vision|scv
  742. Exidy Sorcerer|sorcerer
  743. Fairchild Channel F|channelf
  744. Fujitsu FM-7|fmnew7
  745. Funtech Super Acan|supracan
  746. GamePark 32|gp32
  747. GCE Vectrex|vectrex
  748. Hartung Game Master|gmaster
  749. Interton VC 4000|vc4000
  750. JungleTac Sport Vii|vii
  751. Jupiter Ace|jupace
  752. Magnavox Odyssey 2|odyssey2
  753. Matra & Hachette Alice|alice32
  754. Mattel Aquarius|aquarius
  755. Mattel Intellivision|intv
  756. MGT Sam Coupe|samcoupe
  757. Milton Bradley MicroVision|microvsn
  758. NEC PC-8801|pc8801
  759. NEC PC Engine|pce
  760. NEC PC Engine-CD|pce
  761. NEC SuperGrafx|sgx
  762. NEC TurboGrafx-16|tg16
  763. NEC TurboGrafx-CD|tg16
  764. Nintendo 64|n64
  765. Nintendo 64DD|n64dd
  766. Nintendo Entertainment System|nes
  767. Nintendo Famicom|famicom
  768. Nintendo Famicom Disk System|fds
  769. Nintendo Game Boy|gameboy
  770. Nintendo Game Boy Advance|gba
  771. Nintendo Game Boy Color|gbcolor
  772. Nintendo Pokemon Mini|pokemini
  773. Nintendo Satellaview|snes
  774. Nintendo Super Famicom|snes
  775. Nintendo Super Game Boy|supergb
  776. Nintendo Virtual Boy|vboy
  777. Othello Multivision|omv1000
  778. Philips CD-i|cdimono1
  779. Philips Videopac Plus G7400|g7400
  780. Philips VG 5000|vg5k
  781. RCA Studio II|studio2
  782. Sega 32X|32x
  783. Sega CD|segacd
  784. Sega Game Gear|gamegear
  785. Sega Genesis|genesis
  786. Sega Master System|sms
  787. Sega Mega Drive|megadriv
  788. Sega Pico|pico
  789. Sega Saturn|saturn
  790. Sega SC-3000|sc3000
  791. Sega SG-1000|sg1000
  792. Sega VMU|svmu
  793. Sharp X1|x1turbo40
  794. Sinclair ZX81|zx81
  795. SNK Neo Geo AES|aes
  796. SNK Neo Geo CD|neocdz
  797. SNK Neo Geo Pocket|ngp
  798. SNK Neo Geo Pocket Color|ngpc
  799. Sony PlayStation|psx
  800. Sony PocketStation|pockstat
  801. Sord M5|m5
  802. Soundic Victory MPT-02|mpt02
  803. Super Nintendo Entertainment System|snes
  804. Tandy TRS-80 Color Computer|coco3
  805. Texas Instruments TI 99-4A|ti99_4a
  806. Tiger Game.com|gamecom
  807. Tomy Tutor|tutor
  808. VTech CreatiVision|crvision
  809. Watara Supervision|svision
  810. )"
  811. mType := Object()
  812. Loop, Parse, mTypeVar, `n, `r
  813. {
  814. obj := {}
  815. Loop, Parse, A_LoopField, |
  816. If (A_Index = 1)
  817. obj.System := A_LoopField
  818. Else ; 2
  819. obj.mameID := A_LoopField
  820. mType.Insert(obj["System"], obj)
  821. }
  822. RLLog.Debug("Module - Finished building the " . MEmu . " object")
  823. ; For easier use throughout the module
  824. mameSystem := mType[systemName].System
  825. mameID := mType[systemName].mameID
  826.  
  827. If !mameSystem {
  828. RLLog.Warning("Module - """ . systemName . """ is not a known console or computer system. Defaulting to MAME's Arcade mode for the remainder of this " . MEmu . " module.")
  829. mameSystem := systemName
  830. mameID := "MAME"
  831. }
  832.  
  833. Fullscreen := moduleIni.Read("Settings", "Fullscreen","true","",1) ; Set fullscreen mode
  834. legacyMode := moduleIni.Read(romName . "|" . mameSystem . "|Settings", "LegacyMode","false","",1)
  835. mameBiosPath := moduleIni.Read("Settings", "MAME_BIOS_Path", emuPath . "\roms","",1)
  836. Videomode := moduleIni.Read("Settings", "Videomode","d3d","",1) ; Choices are gdi,ddraw,d3d. If left blank, MAME uses d3d by default
  837. pauseMethod := moduleIni.Read("Settings", "PauseMethod",1,"",1) ; set the pause method that works better on your machine (preferred methods 1 and 2) 1 = Win7 and Win8 OK - Problems with Win XP, 2 = preferred method for WinXP - Problems in Win7, 3 and 4 = same as 1 and 2, 5 = only use If you have a direct input version of mame, 6 = suspend mame process method, it could crash mame in some computers
  838. bilinearFilter := moduleIni.Read(mameSystem . "|Settings", "BilinearFilter","false","",1)
  839. hlsl := moduleIni.Read(romName . "|" . mameSystem . "|Settings", "HLSL","false","",1)
  840. glsl := moduleIni.Read(romName . "|" . mameSystem . "|Settings", "GLSL","false","",1)
  841. bezelMode := moduleIni.Read(romName . "|" . mameSystem . "|Settings", "BezelMode","layout","",1) ; "layout" or "normal"
  842. verticalRotationMode := moduleIni.Read(romName . "|" . mameSystem . "|Settings", "VerticalRotationMode","none","",1)
  843. cheatMode := moduleIni.Read("Settings", "CheatMode","false","",1)
  844. cheatModeKey := moduleIni.Read("Settings", "CheatModeKey","","",1) ; user defined key to be held down before launching a mame rom.
  845. UseSoftwareList := moduleIni.Read(romName . "|" . mameSystem, "UseSoftwareList","false","",1)
  846. sysStaticParams := moduleIni.Read(mameSystem, "StaticParameters", "","",1)
  847. sysParams := moduleIni.Read(mameSystem, "Parameters", "","",1)
  848. romParams := moduleIni.Read(romName, "Parameters", sysParams,"",1)
  849. mameRomName := moduleIni.Read(romName, "MameRomName", "","",1)
  850. autosave := moduleIni.Read(romName . "|" . mameSystem, "Autosave", "false","",1)
  851. volume := moduleIni.Read(romName . "|" . mameSystem . "|Settings", "Volume","","",1)
  852. Artwork_Crop := moduleIni.Read(romName . "|" . mameSystem, "Artwork_Crop", "true","",1)
  853. Use_Bezels := moduleIni.Read(romName . "|" . mameSystem, "Use_Bezels", "false","",1)
  854. Use_Overlays := moduleIni.Read(romName . "|" . mameSystem, "Use_Overlays", "true","",1)
  855. Use_Backdrops := moduleIni.Read(romName . "|" . mameSystem, "Use_Backdrops", "true","",1)
  856. Use_Cpanels := moduleIni.Read(romName . "|" . mameSystem, "Use_Cpanels", "false","",1)
  857. Use_Marquees := moduleIni.Read(romName . "|" . mameSystem, "Use_Marquees", "false","",1)
  858. inipath := moduleIni.Read(mameSystem, "IniPath", "","",1)
  859. hashpath := moduleIni.Read(mameSystem, "HashPath", "","",1)
  860. UseControllerRemap := moduleIni.Read(mameSystem . "|Settings", "UseControllerRemap", "true","",1)
  861. ControllerRemapPath := moduleIni.Read(mameSystem . "|Settings", "ControllerRemapPath", emuPath . "\ControllerRemap\ControllerRemap.exe","",1)
  862. CtrlRemapFile := new File(ControllerRemapPath)
  863. ControllerRemapConfigPath := moduleIni.Read( mameSystem . "|Settings", "ControllerRemapConfigPath", CtrlRemapFile.FilePath . "\ctrlr\","",1)
  864. MAMECtrlrPath := moduleIni.Read(mameSystem . "|Settings", "MAMECtrlrPath", emuPath . "\ctrlr","",1)
  865.  
  866. mameBiosPath := GetFullName(mameBiosPath)
  867.  
  868. ; Loop, 8
  869. ; car%A_Index%Color := moduleIni.Read(romName, "Car_" . A_Index . "_Color","","",1)
  870.  
  871. enableLinkPlay := moduleIni.Read(romName . "|Link/Network", "Enable_Link_Play", "false","",1)
  872. networkSession := ""
  873. If (enableLinkPlay != "false") {
  874. RLLog.Info("Module - Link/Network Multi-Player is an available option for " . romName)
  875. getWANIP := moduleIni.Read("Link/Network", "Get_WAN_IP","false","",1)
  876. myIP := If getWANIP = "true" ? GetPublicIP() : "127.0.0.1" ; use local ip by default if user does not want to get the WAN IP as MAME needs this for linked games
  877. networkPlayers := enableLinkPlay ; Max amount of networkable players
  878. localLink := 1 ; Tell Multiplayer menu to enable menu option for local linking
  879.  
  880. enableNVRAMAutomation := moduleIni.Read(romName . "|Link/Network", "Enable_NVRAM_Automation","true","",1)
  881. maxPlayersPerMonitor := moduleIni.Read(romName . "|Link/Network", "Max_Players_Per_monitor","1|1|1|1|1|1|1|1","",1)
  882. splitScreen2PlayersMode := moduleIni.Read(romName . "|Link/Network", "SplitScreen_2_Players","Horizontal","",1) ;horizontal or vertical
  883. splitScreen3PlayersMode := moduleIni.Read(romName . "|Link/Network", "SplitScreen_3_Players","P1top","",1) ; For Player1 screen to be on left: P1left. For Player1 screen to be on top: P1top. For Player1 screen to be on bottom: P1bottom. For Player1 screen to be on right: P1right.
  884. localPort := moduleIni.Read("Link/Network", "Local_Port","15111","",1)
  885.  
  886. defaultServerIP := moduleIni.Read("Link/Network", "Default_Server_IP", myIP,"",1)
  887. defaultServerPort := moduleIni.Read("Link/Network", "Default_Server_Port","15111","",1)
  888. lastIP := moduleIni.Read("Link/Network", "Last_IP", defaultServerIP,"",1) ; also known as the Remote IP in mame. Does not need to be on the ISD
  889. lastPort := moduleIni.Read("Link/Network", "Last_Port", defaultServerPort,"",1) ; also known as the Remote Port in mame. Does not need to be on the ISD
  890.  
  891. MultiplayerMenu(lastIP, lastPort, networkType, networkPlayers,,,,,,localLink,"ipAndPort")
  892.  
  893. ;MultiPlayer Menu Result
  894. ; If !(networkType)
  895. ; MsgBox, % "Single Player Game"
  896. ; Else If (networkType="localLink")
  897. ; MsgBox, % "Local Link selected with the number of players equal to: " . networkPlayers
  898. ; Else If (networkType="server")
  899. ; MsgBox, % "WAN IP Address=" . networkIP . " | LAN IP Address=" . localIP[1,2] . " | Port=" . networkPort . " | networkPlayers=" . networkPlayers . " | networkRequiresSetup=" . networkRequiresSetup
  900. ; Else If (networkType="client")
  901. ; MsgBox, % "NetworkIP=" . networkIP . " | Port Number=" . networkPort . " | networkRequiresSetup=" . networkRequiresSetup
  902.  
  903. If networkSession {
  904. RLLog.Info("Module - Using a Network for " . romName)
  905. multiPlayerObj := Object() ; initialize object to store the multiplayer options
  906. If (networkType="localLink") {
  907. RLLog.Info("Module - Setting remote host to 127.0.0.1 to support local link mode as it is running on this PC.")
  908. linkEnabledGame := 1
  909. If networkPlayers > 1
  910. { RLLog.Info("Module - Local link mode was selected and " . networkPlayers . " sessions will be launched.")
  911. fullscreen := "false" ; must turn off fullscreen if running multiple MAMEs on the same machine
  912. Loop % networkPlayers {
  913. multiPlayerObj[A_Index,"Player"] := A_Index
  914. multiPlayerObj[A_Index,"CfgDir"] := " -cfg_directory cfg" . (If A_Index = 1 ? "" : A_Index)
  915. multiPlayerObj[A_Index,"NvramDir"] := " -nvram_directory nvram" . (If A_Index = 1 ? "" : A_Index)
  916. If (A_Index = 1) { ; Player 1
  917. initialLocalPort := localPort ; must be stored for last player
  918. multiPlayerObj[A_Index,"LocalHost"] := " -comm_localhost 0.0.0.0"
  919. multiPlayerObj[A_Index,"LocalPort"] := " -comm_localport " . localPort
  920. localPort++
  921. multiPlayerObj[A_Index,"RemotePort"] := " -comm_remoteport " . localPort
  922. } Else { ; Players 2+
  923. multiPlayerObj[A_Index,"LocalPort"] := " -comm_localport " . localPort
  924. localPort++
  925. multiPlayerObj[A_Index,"RemoteHost"] := " -comm_remotehost 127.0.0.1"
  926. multiPlayerObj[A_Index,"RemotePort"] := " -comm_remoteport " . (If A_Index = networkPlayers ? initialLocalPort : localPort) ; must set remote port to first port on last player
  927. }
  928.  
  929. ; msgbox % "Player: " . multiPlayerObj[A_Index]["Player"] . "`nLocalHost: " . multiPlayerObj[A_Index]["LocalHost"] . "`nLocalPort: " . multiPlayerObj[A_Index]["LocalPort"] . "`nRemoteHost: " . multiPlayerObj[A_Index]["RemoteHost"] . "`nRemotePort: " . multiPlayerObj[A_Index]["RemotePort"] . "`nCfgDir: " . multiPlayerObj[A_Index]["CfgDir"] . "`nNvramDir: " . multiPlayerObj[A_Index]["NvramDir"]
  930. }
  931. } Else
  932. RLLog.Info("Module - Local link mode was selected but user only chose 1 player. Launch will be a normal session.")
  933. } Else If (networkType = "client") {
  934. RLLog.Info("Module - Remote host is running on another PC, module will use remote link mode.")
  935. moduleIni.Write(networkIP,"GlobalModuleIni","Link/Network","Last_IP") ; Save last used IP and Port for quicker launching next time
  936. moduleIni.Write(networkPort,"GlobalModuleIni","Link/Network","Last_Port")
  937. linkType := "Slave"
  938. networkPlayers := 1
  939. multiPlayerObj[1,"Player"] := 1
  940. multiPlayerObj[1,"CfgDir"] := " -cfg_directory cfg"
  941. multiPlayerObj[1,"NvramDir"] := " -nvram_directory nvram"
  942. multiPlayerObj[1,"LocalHost"] := " -comm_localhost 0.0.0.0" ; don't really need to set this but just in case
  943. multiPlayerObj[1,"LocalPort"] := " -comm_localport " . localPort
  944. multiPlayerObj[1,"RemoteHost"] := " -comm_remotehost " . networkIP
  945. multiPlayerObj[1,"RemotePort"] := " -comm_remoteport " . networkPort
  946. } Else { ; server
  947. RLLog.Info("Module - This PC is acting as the host, telling mame to listen for incoming connections on port: " . localPort)
  948. moduleIni.Write(networkIP,"GlobalModuleIni","Link/Network","Last_IP") ; Save last used IP and Port for quicker launching next time
  949. moduleIni.Write(networkPort,"GlobalModuleIni","Link/Network","Last_Port")
  950. linkType := "Master"
  951. networkPlayers := 1
  952. multiPlayerObj[1,"Player"] := 1
  953. multiPlayerObj[1,"CfgDir"] := " -cfg_directory cfg"
  954. multiPlayerObj[1,"NvramDir"] := " -nvram_directory nvram"
  955. multiPlayerObj[1,"LocalHost"] := " -comm_localhost 0.0.0.0" ; don't really need to set this but just in case
  956. multiPlayerObj[1,"LocalPort"] := " -comm_localport " . networkPort
  957. multiPlayerObj[1,"RemoteHost"] := " -comm_remotehost " . networkIP
  958. multiPlayerObj[1,"RemotePort"] := " -comm_remoteport " . networkPort
  959. }
  960. RLLog.Info("Module - Starting a network session using the IP """ . networkIP . """ and PORT """ . networkPort . """")
  961. } Else {
  962. RLLog.Info("Module - User chose Single Player mode for this session")
  963. }
  964. }
  965.  
  966. FadeInStart()
  967.  
  968. If inipath
  969. inipath := AbsoluteFromRelative(EmuPath, inipath)
  970. If hashpath
  971. hashpath := AbsoluteFromRelative(EmuPath, hashpath)
  972.  
  973. artworkCrop := If (Artwork_Crop = "true") ? " -artwork_crop" : " -noartwork_crop"
  974. useBezels := If (Use_Bezels = "true") ? " -use_bezels" : " -nouse_bezels"
  975. useOverlays := If (Use_Overlays = "true") ? " -use_overlays" : " -nouse_overlays"
  976. useBackdrops := If (Use_Backdrops = "true") ? " -use_backdrops" : " -nouse_backdrops"
  977. useCpanels := If (Use_Cpanels = "true") ? " -use_cpanels" : " -nouse_cpanels"
  978. useMarquees := If (Use_Marquees = "true") ? " -use_marquees" : " -nouse_marquees"
  979. autosave := If autosave = "true" ? " -autosave" : ""
  980. volume := If volume != "" ? " -volume " . volume : ""
  981. inipath := If inipath != "" ? " -inipath """ . inipath . """" : ""
  982. hashpath := If hashpath != "" ? " -hashpath """ . hashpath . """" : ""
  983.  
  984. If (verticalRotationMode = "none")
  985. verticalRotationMode := ""
  986.  
  987. ; Process mame's ListXML for certain features
  988. If (bezelEnabled = "true" || servoStikEnabled = "auto" || verticalRotationMode || UseControllerRemap = "true") {
  989. ListXMLObject := Object()
  990. ListXMLObject := ListXMLInfo(If mameRomName ? mameRomName : romName)
  991.  
  992. Angle := ListXMLObject["Angle"].Value
  993. If (bezelEnabled = "true") {
  994. If (networkPlayers > 1) {
  995. useBezels := " -nouse_bezels" ; force disabling MAME built-in bezels
  996. BezelStart(networkPlayers)
  997. } Else {
  998. If (bezelMode = "layout"){
  999. BezelStart("layout",ListXMLObject["Parent"].Value,Angle,romName)
  1000. } Else { ;bezel mode = normal
  1001. useBezels := " -nouse_bezels" ; force disabling MAME built-in bezels
  1002. BezelStart(,,Angle)
  1003. }
  1004. }
  1005. }
  1006. If (servoStikEnabled = "auto") {
  1007. ServoStik(If ListXMLObject["Ways"].Value <= 4 ? 4 : 8) ; If "ways" in the xml is set to 4 or less, the servo will go into 4-way mode, else 8-way mode will be enabled
  1008. }
  1009. If (verticalRotationMode && Angle) {
  1010. RLLog.Info("Setting rotation mode to " . verticalRotationMode . " - Game's angle is " . Angle)
  1011. If (verticalRotationMode = "original")
  1012. verticalRotationMode := " -norotate"
  1013. Else If (verticalRotationMode = "right")
  1014. verticalRotationMode := " -ror"
  1015. Else If (verticalRotationMode = "left")
  1016. verticalRotationMode := " -rol"
  1017. Else
  1018. verticalRotationMode := ""
  1019. }
  1020. Else
  1021. verticalRotationMode := ""
  1022.  
  1023. ;Controller Remap
  1024. If (UseControllerRemap = "true") {
  1025. RLLog.Info("Controller Remap: Start")
  1026. romProfileName := (mameRomName ? mameRomName : romName)
  1027. romParentName := ListXMLObject["Parent"].Value
  1028.  
  1029. If ControllerRemapPath
  1030. ControllerRemapPath := AbsoluteFromRelative("", ControllerRemapPath)
  1031. If ControllerRemapConfigPath
  1032. ControllerRemapConfigPath := AbsoluteFromRelative("", ControllerRemapConfigPath)
  1033. If MAMECtrlrPath
  1034. MAMECtrlrPath := AbsoluteFromRelative(emuPath, MAMECtrlrPath)
  1035.  
  1036. ctrlrPath := ""
  1037. RLLog.Info("Controller Remap: ControllerRemapConfigPath: " . ControllerRemapConfigPath)
  1038.  
  1039. ;~ ;1- Check for Rom. 2- Check for Rom Parent. 3- Check for System default
  1040. If (FileExist(ControllerRemapConfigPath . "\" . systemName . "\" . romProfileName . ".cfg")) {
  1041. RLLog.Info("Controller Remap: Rom Config File Found: " . ControllerRemapConfigPath . "\" . systemName . "\" . romProfileName . ".cfg")
  1042. ctrlrPath := new File(ControllerRemapConfigPath . "\" . systemName . "\" . romProfileName . ".cfg")
  1043. }
  1044. else if (romParentName and FileExist(ControllerRemapConfigPath . "\" . systemName . "\" . romParentName . ".cfg")) {
  1045. RLLog.Info("Controller Remap: Parent Rom Config File Found: " . ControllerRemapConfigPath . "\" . systemName . "\" . romParentName . ".cfg")
  1046. ctrlrPath := new File(ControllerRemapConfigPath . "\" . systemName . "\" . romParentName . ".cfg")
  1047. }
  1048. else If (FileExist(ControllerRemapConfigPath . "\" . systemName . "\_Default.cfg")) {
  1049. RLLog.Info("Controller Remap: System Config File Found: " . ControllerRemapConfigPath . "\" . systemName . "\_Default.cfg")
  1050. ctrlrPath := new File(ControllerRemapConfigPath . "\" . systemName . "\_Default.cfg")
  1051. }
  1052. else If (FileExist(ControllerRemapConfigPath . "\_Default.cfg")) {
  1053. RLLog.Info("Controller Remap: Global Config File Found: " . ControllerRemapConfigPath . "\_Default.cfg")
  1054. ctrlrPath := new File(ControllerRemapConfigPath . "\_Default.cfg")
  1055. }
  1056.  
  1057. ; Is there a controller file?
  1058. if (ctrlrPath) {
  1059. ctrlrFile := " -ctrlr RocketLauncher"
  1060.  
  1061. ;Replace <system name="default"> with the Right mameID in the RocketLauncher.cfg file
  1062. if(mameID != "MAME") {
  1063. ctrlrPath.Read()
  1064. rocketLauncherCfgFile := new File(MAMECtrlrPath . "\RocketLauncher.cfg")
  1065. rocketLauncherCfgFile.Delete()
  1066. rocketLauncherCfgFile.Append(StringUtils.Replace(ctrlrPath.Text, "<system name=""default"">", "<system name=""" . mameID . """>"))
  1067. }
  1068. else {
  1069. ctrlrPath.Copy(MAMECtrlrPath . "\RocketLauncher.cfg",1)
  1070. }
  1071.  
  1072. RLLog.Info("Controller Remap: Running """ . ControllerRemapPath . """ /remap:""" . MAMECtrlrPath . "\RocketLauncher.cfg""")
  1073. ControllerRemapProcess := new Process(ControllerRemapPath)
  1074. ControllerRemapProcess.Run(" /remap:""" . MAMECtrlrPath . "\RocketLauncher.cfg""","Hide")
  1075. }
  1076. else {
  1077. RLLog.Info("Controller Remap: No Controller config file found.")
  1078. }
  1079. RLLog.Info("Controller Remap: End")
  1080. }
  1081. }
  1082.  
  1083. winstate := If (Fullscreen = "true") ? "Hide UseErrorLevel" : "UseErrorLevel"
  1084. fullscreenParam := If (Fullscreen = "true") ? " -nowindow" : " -window"
  1085.  
  1086. hideEmuObj := Object(emuOpenWindow,0,emuDebugWindow,0,emuOutputWindow,0,emuPrimaryWindow,1)
  1087. 7z(romPath, romName, romExtension, sevenZExtractPath)
  1088.  
  1089. ; Get MAME version from executable, this is needed since some CLI switches are not available in older MAME versions
  1090. exeAtrib := FileGetVersionInfo_AW(emuPath . "\" . executable, "FileVersion|ProductVersion", "|")
  1091. Loop, Parse, exeAtrib, |%A_Tab%, %A_Space%
  1092. A_Index & 1 ? ( _ := A_LoopField ) : ( %_% := A_LoopField )
  1093. If ProductVersion
  1094. MAMEVersion := StringUtils.Right(ProductVersion, StringUtils.StringLength(ProductVersion) - 2)
  1095. RLLog.Info("Module - Detected MAME Product Version from '" . EmuPath . "\" . executable . "' is " . MAMEVersion)
  1096.  
  1097. If (videomode = "opengl") {
  1098. hlsl := " -nohlsl_enable"
  1099. If (MAMEVersion > 159)
  1100. glsl := If glsl = "true" ? " -gl_glsl" : (If glsl = "ini" ? "" : " -nogl_glsl")
  1101. Else
  1102. glsl := ""
  1103. } Else {
  1104. hlsl := If hlsl = "true" ? " -hlsl_enable" : (If hlsl = "ini" ? "" : " -nohlsl_enable")
  1105. If (MAMEVersion > 159)
  1106. glsl := If videomode = "ini" ? "" : " -nogl_glsl"
  1107. Else
  1108. glsl := ""
  1109.  
  1110. If (videomode = "ini")
  1111. videomode := ""
  1112. }
  1113. videomode := If (Videomode != "" ) ? " -video " . videomode : ""
  1114.  
  1115. param1 := " -cart """ . romPath . "\" . romName . romExtension . """" ; default param1 used for launching most systems.
  1116. If (romExtension = ".txt") ; This can be applied to all systems
  1117. param1 := ""
  1118.  
  1119. If (mameID = "apfimag") ; APF Imagination Machine
  1120. If (romExtension != ".tap")
  1121. mameID := "apfm1000" ; cart games for APF Imagination Machine require a different bios to be loaded
  1122.  
  1123. If (UseSoftwareList != "true")
  1124. { ; Now that we know the system we are loading, determine if we use an ini assocated with that system for custom game configs a user might need. Then load the configs associated to that game.
  1125. If StringUtils.Contains(mameID,"ti99_4a|aes|apple2gs|electron|mbeeic|odyssey2|astrocde|samcoupe|vic10|cpc664") ; these systems will use an ini to store game specific settings
  1126. {
  1127. If !SystemModuleIni.Exist()
  1128. SystemModuleIni.Append() ; create a blank file if it does not exist
  1129.  
  1130. If (mameID = "ti99_4a") ; Texas Instruments TI 99-4A
  1131. {
  1132. ExpansionCartLocation := moduleIni.Read("Settings", "ExpansionCartLocation", romPathOrig . "\System","",1)
  1133. ExpansionCartLocation := GetFullName(ExpansionCartLocation)
  1134. CommandWaitOffset := moduleIni.Read("Settings", "CommandWaitOffset", 0,"",1)
  1135.  
  1136. ExpansionCart := moduleIni.Read(romName, "Expansion_Cart","extended_basic.rpk","",1) ; user can specify a rom specific cart instead of the default basic one
  1137. Command := moduleIni.Read(romName, "Command", "","",1)
  1138.  
  1139. ; Now set the parameters to send to MAME
  1140. If (romExtension = ".dsk") ; Expansion Disk
  1141. {
  1142. ; If using the mainCart , send expansionLocation to MAME. This will require DirectInput to be enabled on the MAME build! Else we are loading a Disk game
  1143. param1 := " -nat -gromport single -cart1"
  1144. param2 := " """ . ExpansionCartLocation . "\" . ExpansionCart . """"
  1145. param3 := " -peb:slot2 32kmem -peb:slot3 speech -peb:slot6 tirs232 -peb:slot8 hfdc"
  1146. param4 := " -flop1"
  1147. param5 := " """ . romPath . "\" . romName . romExtension . """"
  1148. If StringUtils.Contains(romName, "\(Disk")
  1149. {
  1150. TimerUtils.Sleep(50)
  1151. If (romTable.MaxIndex() = 2)
  1152. {
  1153. param4 := " -flop1 " . " """ . romTable[1,1] . """"
  1154. param5 := " -flop2 " . " """ . romTable[2,1] . """"
  1155. }
  1156. }
  1157. } Else If (romExtension = ".rpk") ; Cart Game (RPK Format)
  1158. param1 := " -nat -gromport single -cart1", param2:=" """ . romPath . "\" . romName . romExtension . """", param3:=" -peb:slot3 speech" ;-cart will also work here
  1159. param6 := " -ui_active" ;Enable partial keyboard mode at startup
  1160. } Else If (mameID = "aes") ; SNK Neo Geo AES
  1161. { biosRegion := moduleIni.Read(romName, "BIOS_Region","asia","",1)
  1162. param1 := " -bios " . biosRegion ; can also be japan, but the asian one has english menus for most games
  1163. param2 := " -cart " . romName
  1164. }Else If (mameID = "apple2gs") ; Apple IIGS
  1165. { externalOS := moduleIni.Read(romName, "External_OS","false","",1)
  1166. 2gsSystemFile := "System6.2mg" ;For games without OS included, always force this name and error out if not found
  1167. multipartTable := CreateRomTable(multipartTable)
  1168.  
  1169. If (externalOS = "true")
  1170. { CheckFile(romPath . "\" . 2gsSystemFile)
  1171. param1 := " -flop3", param2:=" """ . romPath . "\" . 2gsSystemFile . """", param3:=" -flop4", param4:=" """ . romPath . "\" . romName . romExtension . """"
  1172. } Else {
  1173. param1 := " -flop3", param2:=" """ . romPath . "\" . romName . romExtension . """"
  1174. If (multipartTable.MaxIndex() > 1)
  1175. param3 := " -flop4", param4 := " """ . multipartTable[2,1] . """"
  1176. }
  1177. param5 := " -ui_active" ;Enable partial keyboard mode at startup
  1178. }Else If (mameID = "electron") ; Acorn Electron
  1179. { AutoBootDelay := moduleIni.Read("Settings", "AutoBootDelay","2","",1) ; Read delay from config.
  1180. AutoBootDelay := " -autoboot_delay " . AutoBootDelay
  1181. If (romExtension = ".bin")
  1182. mediaDeviceType := "cart"
  1183. Else ; any other format
  1184. mediaDeviceType := "cass"
  1185. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """ -autoboot_command ""chain""""""""""""\n""" . AutoBootDelay . ""
  1186. }Else If (mameID = "sc3000") ; Sega SC-3000
  1187. { AutoBootDelay := moduleIni.Read("Settings", "AutoBootDelay","2","",1) ; Read delay from config.
  1188. AutoBootDelay := " -autoboot_delay " . AutoBootDelay
  1189. If StringUtils.Contains(romExtension,"\.bin|\.sg\|.sc")
  1190. mediaDeviceType := "cart"
  1191. Else ; any other format
  1192. mediaDeviceType := "cass"
  1193. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """ -autoboot_command ""chain""""""""""""\n""" . AutoBootDelay . ""
  1194. }Else If (mameID = "c64") ; Commodore 64
  1195. { AutoBootDelay := moduleIni.Read("Settings", "AutoBootDelay","2","",1) ; Read delay from config.
  1196. AutoBootDelay := " -autoboot_delay " . AutoBootDelay
  1197. If StringUtils.Contains(romExtension,"\.d64|\.g64|\.g41|\.d77|\.d88|\.1dd|\.dfi|\.imd|\.ipf|\.mfi|\.mfm|\.td0|\.cqm|\.cqi|\.dsk")
  1198. mediaDeviceType := "flop1"
  1199. Else If StringUtils.Contains(romExtension,"\.wav|\.tap")
  1200. mediaDeviceType := "cass1"
  1201. Else If StringUtils.Contains(romExtension,"\.80|\.a0|\.e0|\.crt")
  1202. mediaDeviceType := "cart1"
  1203. Else If StringUtils.Contains(romExtension,"\.p00|\.prg|\.t64")
  1204. mediaDeviceType := "quik1"
  1205. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """ -autoboot_command ""chain""""""""""""\n""" . AutoBootDelay . ""
  1206. }Else If mameID = mbeeic ; Applied Technology MicroBee
  1207. { microbeeModel := moduleIni.Read(romName, "MicroBee_Model","mbeeic","",1)
  1208. If !StringUtils.Contains(microbeeModel,"mbee|mbeeic|mbeepc|mbeepc85|mbee56")
  1209. ScriptError("This is not a known MicroBee model value: " . microbeeModel)
  1210. Else If (microbeeModel != "mbeeic")
  1211. mameID := microbeeModel
  1212. If StringUtils.Contains(romExtension,"\.mwb|\.com|\.bee")
  1213. mediaDeviceType := "quik1"
  1214. Else If StringUtils.Contains(romExtension,"\.wav|\.tap")
  1215. mediaDeviceType := "cass"
  1216. Else If StringUtils.Contains(romExtension,"\.rom")
  1217. mediaDeviceType := "cart"
  1218. Else If StringUtils.Contains(romExtension,"\.dsk")
  1219. mediaDeviceType := "flop1"
  1220. Else ; .bin format
  1221. mediaDeviceType := "quik2"
  1222. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """"
  1223. }Else If (mameID = "odyssey2") ; Magnavox Odyssey 2
  1224. { param2 := " -ui_active" ;Enable partial keyboard mode at startup
  1225. If romName not contains (USA
  1226. mameID := "videopac"
  1227. }Else If (mameID = "astrocde") ; Bally Astrocade
  1228. {
  1229. BlueRAMBasicRom := moduleIni.Read("Settings", "BlueRAMBasicRom","Blue RAM Basic v1.1 (USA).bin","",1) ; Blue RAM Basic rom
  1230. RequiresReset := moduleIni.Read(romname, "RequiresReset","false","",1) ; Check if game requires a reset
  1231.  
  1232. BlueRAMBasicRomPath := new File(romPath . "\" . BlueRAMBasicRom)
  1233. If (romExtension = ".script") {
  1234. ; Will require blue ram basic
  1235. If !BlueRAMBasicRomPath.Exist() {
  1236. ; Blue RAM Basic games might be in their own sub-folders since they have several files, so let's try to find the Blue RAM cart in the parent folder as well
  1237. StringUtils.SplitPath(romPath,"",romBasePath) ; grab path one level up
  1238. BlueRAMBasicRomPath.__Delete()
  1239. BlueRAMBasicRomPath := new File(romBasePath . "\" . BlueRAMBasicRom)
  1240. BlueRAMBasicRomPath.CheckFile("Couldn't find " . BlueRAMBasicRom . " on any of these paths:" . romBasePath . "|" . romPath)
  1241. }
  1242.  
  1243. ScriptFile := new File(romPath . "\" . romName . romExtension)
  1244. param1 := " -cart """ . BlueRAMBasicRomPath.FileFullPath . """"
  1245.  
  1246. ; Replace rompath variable in script
  1247. ScriptFile.Read()
  1248. ScriptFile.Text := StringUtils.Replace(ScriptFile.Text, "{romPath}", romPath, "all")
  1249.  
  1250. ; Create cmd file to send to MESS
  1251. RomCMDFile := new File(romPath . "\" . romName . ".cmd")
  1252. RomCMDFile.Delete()
  1253. RomCMDFile.Append(ScriptFile.Text)
  1254. param2 := " -exp blue_ram_16k -debug -debugscript """ . RomCMDFile.FileFullPath . """"
  1255.  
  1256. closeDebugWindow := "true"
  1257. }
  1258. }Else If (mameID = "samcoupe") ; MGT Sam Coupe
  1259. { AutoBootDelay := moduleIni.Read("Settings", "AutoBootDelay","2","",1) ; Read delay from config.
  1260. AutoBootDelay := " -autoboot_delay " . AutoBootDelay
  1261.  
  1262. If StringUtils.Contains(romExtension,"\.mgt|\.dsk|\.d77|\.d88|\.1dd|\.dfi|\.imd|\.ipf|\.mfi|\.mfm|\.td0|\.cqm|\.cqi")
  1263. mediaDeviceType := "flop1"
  1264. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """ -autoboot_command ""\nBOOT\n""" . AutoBootDelay . ""
  1265. }Else If (mameID = "vic10") ; Commodore MAX Machine
  1266. { AutoBootDelay := moduleIni.Read("Settings", "AutoBootDelay","2","",1) ; Read delay from config.
  1267. AutoBootDelay := " -autoboot_delay " . AutoBootDelay
  1268.  
  1269. If StringUtils.Contains(romExtension,"\.e0|\.80")
  1270. param1 := " -cart """ . romPath . "\" . romName . romExtension . """"
  1271. Else If StringUtils.Contains(romExtension,"\.wav|\.tap")
  1272. param1 := " -cass """ . romPath . "\" . romName . romExtension . """"
  1273. Else If StringUtils.Contains(romExtension,"\.t64|\.prg|\.p00")
  1274. {
  1275. mediaDeviceType := "quik"
  1276. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """ -autoboot_command ""RUN""" . AutoBootDelay . ""
  1277. }
  1278. }Else If (mameID = "cpc664") ; Amstrad CPC
  1279. { LaunchProgram := moduleIni.Read(romName, "LaunchProgram","disk","",1) ; Read command from config.
  1280. LaunchProgram := " -autoboot_command " . """RUN \""" . LaunchProgram . "\n"""
  1281. AutoBootDelay := moduleIni.Read("Settings", "AutoBootDelay","2","",1) ; Read delay from config.
  1282. AutoBootDelay := " -autoboot_delay " . AutoBootDelay
  1283.  
  1284. If StringUtils.Contains(romExtension,"\.d77|\.d88|\.1dd|\.dfi|\.imd|\.ipf|\.mfi|\.mfm|\.td0|\.cqm|\.cqi|\.dsk")
  1285. mediaDeviceType := "flop1"
  1286. param1 := " -" . mediaDeviceType . " """ . romPath . "\" . romName . romExtension . """" . LaunchProgram . AutoBootDelay
  1287. }
  1288.  
  1289. ;Use a different bios if needed (This must be done after the above if conditions since the mameID will change)
  1290. iniBios := moduleIni.Read(romName, "Bios",mameID,"",1) ; for all games, we use the default bios. Some games might require different bios like Odyssey2's Jopac games use the videopac bios instead, which should be defined in the ini
  1291. If (iniBios != "")
  1292. mameID := iniBios ; need to change the bios name for some games
  1293. }
  1294.  
  1295. ; These systems don't use an ini, but do require parameters to be changed from the default method of launching MAME
  1296. If (mameID = "neocdz" || mameID = "cdimono1" || mameID = "segacd" || mameID = "saturn" || mameID = "psx" || (mameID = "tg16" && mameSystem = "NEC TurboGrafx-CD") || (mameID = "pce" && mameSystem = "NEC PC Engine-CD")) ; SNK Neo Geo CD, Philips CD-i, Sega CD, Sega Saturn, Sony PlayStation, NEC PC Engine-CD or NEC TurboGrafx-CD
  1297. { If !StringUtils.Contains(romExtension,"\.chd|\.cue")
  1298. ScriptError("MAME only supports " . mameSystem . " games in chd and cue format. It does not support:`n" . romExtension)
  1299. If (mameSystem = "NEC TurboGrafx-CD") { ; NEC TurboGrafx-CD needs an additional bios mounted as a cart to run
  1300. ; tgcdBios := CheckFile(emuPath . "\roms\CD-ROM System V2.01 (U).pce") ; older bios that doesn't seem to work with many games
  1301. tgcdBios := CheckFile(emuPath . "\roms\Super CD-ROM2 System V3.01 (U).pce")
  1302. param2 := " -cart " . """" . tgcdBios . """"
  1303. } Else If (mameSystem = "NEC PC Engine-CD") { ; NEC PC Engine-CD needs an additional bios mounted as a cart to run
  1304. pcecdBios := CheckFile(emuPath . "\roms\Super CD-ROM2 System V3.0 (J).pce")
  1305. param2 := " -cart " . """" . pcecdBios . """"
  1306. } Else If (mameID = "psx") { ; Sony PlayStation
  1307. mameID := "psu" ; changing mameID sent to MAME to use the USA bios
  1308. ; SelectMemCard() ; future function to swap around memcards
  1309. ; Usage: mc1 "J:\MAME\software\psu\card1.mc"
  1310. } If (mameSystem = "Sega CD") { ;
  1311. If StringUtils.InStr(romName,"(Jap") ; Mega CD Japanese v2
  1312. mameID := "megacd2j"
  1313. Else If StringUtils.InStr(romName,"(Euro") ; Mega CD European (PAL)
  1314. mameID := "megacd"
  1315. }
  1316. param1 := " -cdrm """ . romPath . "\" . romName . romExtension . """"
  1317. }Else If (mameID = "gamecom") ; Tiger Game.com
  1318. { If (romExtension != ".txt")
  1319. param1 := " -cart1 """ . romPath . "\" . romName . romExtension . """"
  1320. }Else If (mameID = "genesis") ; Sega Genesis
  1321. { If (StringUtils.InStr(romName, "(Europe") || StringUtils.InStr(romName, "(PAL")) ; if rom is from europe, tell MAME to boot a Mega Drive instead
  1322. mameID := "megadriv"
  1323. }Else If (mameID = "megadriv") ; Sega Mega Drive
  1324. { If (StringUtils.InStr(romName, "(USA") || StringUtils.InStr(romName, "(NTSC")) ; if rom is from America, tell MAME to boot a Genesis instead
  1325. mameID := "genesis"
  1326. }Else If (mameID = "vii") ; JungleTac Sport Vii
  1327. { If (romName = "Built-In Games (China)") ; Has some built-in games, gotta launch just BIOS for it.
  1328. param1 := ""
  1329. }Else If (mameID = "alice32") ; Matra & Hachette Alice
  1330. { If (romExtension != ".txt")
  1331. param1 := " -cass1 """ . romPath . "\" . romName . romExtension . """"
  1332. }Else If (mameID = "cgenie") ; EACA EG2000 Colour Genie
  1333. { If (romExtension != ".txt")
  1334. param1 := " -cass1 """ . romPath . "\" . romName . romExtension . """"
  1335. }Else If (mameID = "pockstat") ; Sony PocketStation
  1336. { If (romExtension != ".gme")
  1337. param1 := " -cart1 """ . romPath . "\" . romName . romExtension . """"
  1338. }Else If (mameID = "coco3") ; Tandy TRS-80 Color Computer
  1339. { If (romExtension != ".txt")
  1340. param1 := " -cart """ . romPath . "\" . romName . romExtension . """"
  1341. }Else If (mameID = "zx81") ; Sinclair ZX81
  1342. { If (romExtension != ".txt")
  1343. param1 := " -cass1 """ . romPath . "\" . romName . romExtension . """"
  1344. }Else If (mameID = "lynx128k") ; Camputers Lynx
  1345. { If (romExtension != ".txt")
  1346. param1 := " -cass1 """ . romPath . "\" . romName . romExtension . """"
  1347. }Else If (mameID = "vg5k") ; Philips VG 5000
  1348. { If (romExtension != ".txt")
  1349. param1 := " -cass1 """ . romPath . "\" . romName . romExtension . """"
  1350. }Else If (mameID = "sorcerer") ; Exidy Sorcerer
  1351. { If (romExtension = ".snp") ; Snapshot file
  1352. param1 := " -dump """ . romPath . "\" . romName . romExtension . """"
  1353. Else If (romExtension = ".bin")
  1354. param1 := " -quik """ . romPath . "\" . romName . romExtension . """"
  1355. }Else If (messID = "jupace") ; jupiter ace
  1356. { If (romExtension = ".ace")
  1357. param1 := " -dump """ . romPath . "\" . romName . romExtension . """"
  1358. }Else If (mameID = "a800" || mameID = "fds") ; Atari 8-Bit, Nintendo Famicom Disk System
  1359. { If (romExtension != ".txt")
  1360. param1 := " -flop1 """ . romPath . "\" . romName . romExtension . """"
  1361. }Else If (mameID = "vectrex") ; GCE Vectrex
  1362. { If (romName = "Mine Storm (World)") ; MAME dumps an error if you try to launch Mine Storm using a rom instead of just booting vectrex w/o a game in it (Mine Storm is built into vectrex)
  1363. param1 := ""
  1364. }Else If (mameID = "apfm1000") ; APF Imagination Machine/APF M1000
  1365. { If (romName = "Rocket Patrol (USA)") ; Rocket Patrol is built into the APF M1000 ROM.
  1366. param1 := ""
  1367. }Else If (mameID = "adam") ; Coleco ADAM
  1368. param1 := (If romExtension = ".ddp" ? " -cass1" : (If romExtension = ".dsk" ? " -flop1" : " -cart1")) . " """ . romPath . "\" . romName . romExtension . """" ; Decide if tape, disk, or cart game
  1369. Else If (mameID = "pegasus") ; Aamber Pegasus
  1370. { If (romExtension != ".txt")
  1371. param1 := " -cart1 """ . romPath . "\" . romName . romExtension . """"
  1372. }Else If (mameID = "gp32") ; GamePark 32
  1373. { If (romExtension != ".txt")
  1374. param1 := " -memc """ . romPath . "\" . romName . romExtension . """"
  1375. }Else If (mameID = "svmu") ; Sega VMU
  1376. {
  1377. param1 := " -quik """ . romPath . "\" . romName . romExtension . """"
  1378. }Else If (mameID = "x1turbo40") ; Sharp X1
  1379. { If StringUtils.Contains(romExtension,"\.bin|\.rom")
  1380. param1 := " -cart """ . romPath . "\" . romName . romExtension . """"
  1381. Else If StringUtils.Contains(romExtension,"\.wav|\.tap")
  1382. param1 := " -cass """ . romPath . "\" . romName . romExtension . """"
  1383. Else
  1384. param1 := " -flop1 """ . romPath . "\" . romName . romExtension . """"
  1385. }Else If (mameID = "pc8801") ; NEC PC-8801
  1386. { If (romExtension = ".d88")
  1387. param1 := " -flop1 """ . romPath . "\" . romName . romExtension . """"
  1388. }Else If (mameID = "fmnew7") ; Fujitsu FM-7
  1389. { If StringUtils.Contains(romExtension,"\.fdi|\.td0|\.imd|\.cqm|\.dsk|\.d77|\.d88|\.1dd")
  1390. param1 := " -flop1 """ . romPath . "\" . romName . romExtension . """"
  1391. Else If StringUtils.Contains(romExtension,"\.wav|\.t77")
  1392. param1 := " -cass """ . romPath . "\" . romName . romExtension . """"
  1393. }Else If (mameID = "apple2ep") ; Apple II
  1394. { If StringUtils.Contains(romExtension,"\.dsk|\.do|\.po|\.rti|\.edd|\.d77|\.d88|\.1dd|\.dfi|\.imd|\.i pf|\.mfi|\.mfm|\.td0|\.cqm|\.cqi")
  1395. param1 := " -flop1 """ . romPath . "\" . romName . romExtension . """"
  1396. Else If StringUtils.Contains(romExtension,"\.wav")
  1397. param1 := " -cass """ . romPath . "\" . romName . romExtension . """"
  1398. }Else If (mameID = "n64dd") ; Nintendo 64DD
  1399. {
  1400. N64RomFile := new FIle(romPath . "\" . romName . ".n64")
  1401. If N64RomFile.Exist()
  1402. param1 := " -cart """ . N64RomFile.FileFullPath . """ -quik """ . romPath . "\" . romName . romExtension . """"
  1403. Else
  1404. param1 := " -quik """ . romPath . "\" . romName . romExtension . """"
  1405. }Else If StringUtils.Contains(mameID,"studio2|mpt02") ; RCA Studio 2
  1406. {
  1407. If (romExtension != ".txt")
  1408. param1 := " -cart1 """ . romPath . "\" . romName . romExtension . """"
  1409. Else {
  1410. If StringUtils.Contains(romName,"Doodle")
  1411. button2 := "A 1" ; Press 1 on P1 controller
  1412. If StringUtils.Contains(romName,"Patterns")
  1413. button2 := "A 2" ; Press 2 on P1 controller
  1414. If StringUtils.Contains(romName,"Bowling")
  1415. button2 := "A 3" ; Press 3 on P1 controller
  1416. If StringUtils.Contains(romName,"Freeway")
  1417. button2 := "A 4" ; Press 4 on P1 controller
  1418. If StringUtils.Contains(romName,"Addition")
  1419. button2 := "A 5" ; Press 5 on P1 controller
  1420. }
  1421.  
  1422. ; Generate a lua script to press the Clear button so games will start
  1423. ScriptFileName := GeneratePressButtonScript("Clear",button2)
  1424. bootscript := " -script """ . ScriptFileName . """ -autoboot_delay 1"
  1425. }
  1426. } Else { ; Use Software List
  1427. hashname := mameID
  1428. param1 := " """ . romName . """" ; param1 used for launching from software lists
  1429.  
  1430. If (mameID = "aes") ; SNK Neo Geo AES
  1431. { hashname := "neogeo"
  1432. biosRegion := moduleIni.Read(romName, "BIOS_Region","asia","",1)
  1433. param2 := " -bios " . biosRegion ; can also be japan, but the asian one has english menus for most games
  1434. }
  1435. CheckFile(emuPath . "\hash\" . hashname . ".xml","Could not find a software list for the system " . mameID) ;Check if software list for selected system exists
  1436. }
  1437.  
  1438. If (mameID = "vectrex") { ; GCE Vectrex
  1439. VectrexArtFile := new File(emuPath . "\artwork\Vectrex\" . romName . ".png")
  1440. param2 := " -view " . (If VectrexArtFile.Exist() ? ("""" . romName . """") : "standard") ; need overlays extracted in the artwork\vectres folder. PNGs must match romName
  1441. }
  1442.  
  1443. sysStaticParams := If sysStaticParams != "" ? A_Space . sysStaticParams : "" ; tacking on a space in case user forgot to add one
  1444. romParams := If romParams != "" ? A_Space . romParams : "" ; tacking on a space in case user forgot to add one
  1445.  
  1446. mameRomPaths := StringUtils.Replace(romPathFromIni,"|",`"`;`",1) ; replace all instances of | to ; in the Rom_Path from RL's Emulators.ini so MAME knows where to find your roms
  1447. mameRomPaths := " -rompath """ . (If mameRomName ? romPath : mameRomPaths) . (If mameBiosPath ? ";" . mameBiosPath : "") . """" ; If using an alt rom, only supply mame with the path to that rom so it doesn't try to use the original rom. If a bios path was supplied, add it into the rom paths sent to MAME
  1448.  
  1449. If StringUtils.InStr(romParams,"-rompath")
  1450. ScriptError("""-rompath"" is defined as a parameter for " . romName . ". The MAME module fills this automatically so please remove this from Params in the module's settings.")
  1451. If StringUtils.InStr(sysStaticParams,"-rompath")
  1452. ScriptError("""-rompath"" is defined as a parameter for " . mameSystem . ". The MAME module fills this automatically so please remove this from Params in the module's settings.")
  1453.  
  1454. ; use a custom rom name, not the one from the db
  1455. If mameRomName {
  1456. MameRomOriginalFile := new File(romPath . "\" . romName . romExtension)
  1457. MameRomCustomFile := new File(romPath . "\" . mameRomName . romExtension)
  1458. errLvl := MameRomOriginalFile.Move(MameRomCustomFile.FileFullPath) ; rename rom to match what mame needs
  1459. originalRomName := romName ; store romName from database so we know what to rename it back to later
  1460. romName := mameRomName
  1461. If errLvl
  1462. ScriptError("There was a problem renaming " . romName . " to " . mameRomName . " in " . romPath . ". Please check you have write permission to this folder/file and you don't already have a file named """ . mameRomName . """ in your rom folder.",8)
  1463. Else ; if rename was successful, set var so we know to move it back later
  1464. fileRenamed := 1
  1465. }
  1466.  
  1467. ; use a custom cfg file if it exists and append it to param1
  1468. CustomCFGPath := new Folder(emuPath . "\cfg\" . mameID . "\" . dbName)
  1469. If CustomCFGPath.Exist()
  1470. param1 := " -cfg_directory """ . CustomCFGPath.FileFullPath . """" . param1
  1471.  
  1472. If (bilinearFilter = "true")
  1473. bilinearEnabled := " -filter"
  1474. Else
  1475. bilinearEnabled := " -nofilter"
  1476.  
  1477. If (cheatMode = "true") {
  1478. CheatZipFile := new File(emuPath . "\cheat.zip")
  1479. Cheat7zFile := new File(emuPath . "\cheat.7z")
  1480. If (!CheatZipFile.Exist() && !Cheat7zFile.Exist())
  1481. RLLog.Warning("Module - You have cheats enabled for " . MEmu . " but could not locate a ""cheat.zip"" or ""cheat.7z"" in " . emuPath)
  1482. Else {
  1483. RLLog.Info("Module - Cheat file found in " . emuPath)
  1484. If cheatModeKey ; if user wants to use a key to enable CheatMode
  1485. cheatEnabled := If XHotkeyAllKeysPressed(cheatModeKey) ? " -cheat" : "" ; only enables cheatMode when key is held down on launch
  1486. Else ; no cheat mode key defined
  1487. cheatEnabled := " -cheat"
  1488. }
  1489. }
  1490.  
  1491. If (RequiresReset = "true")
  1492. { ; Generate a lua script to send a system soft reset
  1493. ScriptFileName := GenerateSoftResetScript()
  1494. bootscript := " -script """ . ScriptFileName . """ -autoboot_delay 1"
  1495. }
  1496.  
  1497. HideAppStart(hideEmuObj,hideEmu)
  1498.  
  1499.  
  1500.  
  1501. If (legacyMode = "true")
  1502. { RLLog.Info("Module - Running MAME in legacy Mode")
  1503. errLvl := primaryExe.Run(" " . (If mameID = "MAME" ? romName : mameID . param1 . param2 . param3 . param4 . param5 . param6) . fullscreenParam . cheatEnabled . volume . mameRomPaths . sysStaticParams . romParams, winstate,"","","",1) ; wrap quotes around exe
  1504. } Else {
  1505. RLLog.Info("Module - Running MAME in non-legacy mode")
  1506. ; If (networkPlayers = 1 || !linkEnabledGame) {
  1507. If !networkSession {
  1508. RLLog.Info("Module - SinglePlayer session")
  1509. errLvl := primaryExe.Run(" " . (If mameID = "MAME" ? romName : mameID . param1 . param2 . param3 . param4 . param5 . param6 ) . ctrlrFile . mameRomPaths . sysStaticParams . romParams . fullscreenParam . glsl . cheatEnabled . volume . inipath . hashpath . verticalRotationMode . artworkCrop . useBezels . useOverlays . useBackdrops . autosave . bootscript . " -skip_gameinfo", winstate,"","","",1) ; wrap quotes around exe
  1510. } Else { ; multiplayer game run
  1511. RLLog.Info("Module - Network/MultiPlayer session")
  1512. BuildNVRAMObject() ; build nvram object
  1513. ;screen positions
  1514. screenPos := []
  1515. screenPos := SplitScreenPos(networkPlayers,splitScreen2PlayersMode,splitScreen3PlayersMode,maxPlayersPerMonitor)
  1516. If (networkType="localLink")
  1517. globalInputs := " -global_inputs" ; tell mame to accept inputs when its window is not focused
  1518. Loop % networkPlayers
  1519. {
  1520. currentPlayer := A_Index
  1521. ; Update NVRAM setting(s)
  1522. If (enableNVRAMAutomation = "true") {
  1523. If nvramSettings[romName]["Settings"]["Credit"]["Position"].MaxIndex() { ; If nvram settings exist for this game
  1524. NVRamFile%currentPlayer% := new File(emuPath . "\nvram" . (If currentPlayer = 1 ? "" : currentPlayer) . "\" . romName . "\" . nvramSettings[romName]["Settings"]["NVRAM"]["File"][1])
  1525. If NVRamFile%currentPlayer%.Exist() {
  1526. RLLog.Info("Module - Checking nvram file(s) for required changes")
  1527. If (networkType = "localLink") { ; only local link is supported for now
  1528. ; Parse through each setting of each player and lookup the position to write new setting to the nvram file
  1529. for playerOptionLabel, selectedPlayerOption in nvramSettings[romName]["Player"][currentPlayer] ;looping on each player selected options
  1530. for index, setting in nvramSettings[romName]["Settings"][playerOptionLabel]["Position"] ;Looping through hex values of the current option
  1531. HexCompareWrite(NVRamFile%currentPlayer%.FileFullPath,nvramSettings[romName]["Settings"][playerOptionLabel]["Position"][index],nvramSettings[romName]["Settings"][playerOptionLabel]["Option"][selectedPlayerOption][index])
  1532. for index, playerCRC in nvramSettings[romName]["CRC"]["Player"][currentPlayer] ;looping on each player selected options
  1533. HexCompareWrite(NVRamFile%currentPlayer%.FileFullPath,nvramSettings[romName]["Settings"]["CRC"]["Position"][index],nvramSettings[romName]["CRC"]["Player"][currentPlayer][index])
  1534. } Else If (networkType = "Server") {
  1535. RLLog.Info("Module - Converting this nvram to ""Master"" in: " . NVRamFile%currentPlayer%.FileFullPath)
  1536. ; RLLog.Info("Module - NVRAM automation for ""Server"" not supported at this time") ; only idea to get this to work is to duplicate nvram edit code from local link here but only set player 1
  1537. HexCompareWrite(NVRamFile%currentPlayer%.FileFullPath,nvramSettings[romName]["Settings"]["Link"]["Position"][1],nvramSettings[romName]["Settings"]["Link"]["Option"]["Master"][1])
  1538. } Else If (networkType = "Client") {
  1539. RLLog.Info("Module - Converting this nvram to ""Slave"" in: " . NVRamFile%currentPlayer%.FileFullPath)
  1540. ; RLLog.Info("Module - NVRAM automation for ""Client"" not supported at this time") ; only idea to get this to work is to duplicate nvram edit code from local link here but only set player 2
  1541. HexCompareWrite(NVRamFile%currentPlayer%.FileFullPath,nvramSettings[romName]["Settings"]["Link"]["Position"][1],nvramSettings[romName]["Settings"]["Link"]["Option"]["Slave"][1])
  1542. }
  1543. } Else
  1544. RLLog.Info("Module - Did not find an NVRAM file to update for player " . currentPlayer . " (Ignore this if this is the first time you are launching this rom): " . NVRamFile%currentPlayer%.FileFullPath)
  1545. } Else
  1546. RLLog.Info("Module - This rom does not contain an entry in the NVRAM object")
  1547. }
  1548. ;;Run Line for each of the multiplayer MAME instances using the nvramPath and cfgPath variables to the extra mames
  1549. MameMultiPlayer%currentPlayer%Exe := new Process(emuPath . "\" . executable) ; instantiate a new process for each player
  1550. errLvl := MameMultiPlayer%currentPlayer%Exe.Run(" " . (If mameID = "MAME" ? romName : mameID . param1 . param2 . param3 . param4 . param5 . param6) . ctrlrFile . mameRomPaths . multiPlayerObj[currentPlayer]["CfgDir"] . multiPlayerObj[currentPlayer]["NvramDir"] . globalInputs . multiPlayerObj[currentPlayer]["LocalHost"] . multiPlayerObj[currentPlayer]["LocalPort"] . multiPlayerObj[currentPlayer]["RemoteHost"] . multiPlayerObj[currentPlayer]["RemotePort"] . sysStaticParams . romParams . fullscreenParam . hlsl . glsl . cheatEnabled . volume . inipath . hashpath . verticalRotationMode . videomode . artworkCrop . useBezels . useOverlays . useBackdrops . useCpanels . useMarquees . autosave . bootscript . bilinearEnabled . " -skip_gameinfo", winstate,"","","",1) ; wrap quotes around exe
  1551. MameMultiPlayer%currentPlayer%Exe.Process("Exist") ; get PID
  1552. MameMultiPlayer%currentPlayer%Window := new Window(new WindowTitle("","","","",MameMultiPlayer%currentPlayer%Exe.PID))
  1553. MameMultiPlayer%currentPlayer%Window.ExcludeTitle := "MAMEOutput" ; ignore the mame debug window
  1554. MameMultiPlayer%currentPlayer%Window.Wait()
  1555. }
  1556.  
  1557. Loop % networkPlayers
  1558. {
  1559. MameMultiPlayer%A_Index%Window.Get("ID")
  1560. MameMultiPlayer%A_Index%Window.RemoveTitlebar()
  1561. MameMultiPlayer%A_Index%Window.ToggleMenu()
  1562. MameMultiPlayer%A_Index%Window.RemoveBorder()
  1563. MameMultiPlayer%A_Index%Window.Move(screenPos[A_Index].X, screenPos[A_Index].Y, screenPos[A_Index].W, screenPos[A_Index].H)
  1564. TimerUtils.Sleep(50)
  1565. }
  1566. }
  1567. }
  1568.  
  1569. If errLvl {
  1570. If (errLvl = 1)
  1571. Error := "Failed Validity"
  1572. Else If(errLvl = 2)
  1573. Error := "Missing Files"
  1574. Else If(errLvl = 3)
  1575. Error := "Fatal Error"
  1576. Else If(errLvl = 4)
  1577. Error := "Device Error"
  1578. Else If(errLvl = 5)
  1579. Error := "Game Does Not Exist"
  1580. Else If(errLvl = 6)
  1581. Error := "Invalid Config"
  1582. Else If StringUtils.Contains(errLvl,"7|8|9")
  1583. Error := "Identification Error"
  1584. Else
  1585. Error := "MAME Error"
  1586. RLLog.Error("MAME Error - " . Error)
  1587. }
  1588.  
  1589. emuPrimaryWindow.Wait()
  1590. emuPrimaryWindow.WaitActive()
  1591.  
  1592. If (mameID = "ti99_4a") ; Texas Instruments TI 99-4A
  1593. {
  1594. KeyUtils.SendCommand("X",1000) ; To bypass the first screen
  1595. If (Command)
  1596. KeyUtils.SendCommand(Command,,,,,,CommandWaitOffset) ; Send command affect it with an offset if needed
  1597. }
  1598.  
  1599. ; Close the debugger window if exists
  1600. If (closeDebugWindow = "true") {
  1601. emuDebugWindow.Wait(2)
  1602. emuDebugWindow.Close()
  1603. }
  1604.  
  1605. BezelDraw()
  1606. HideAppEnd(hideEmuObj,hideEmu)
  1607.  
  1608. If (networkPlayers = 1 || !linkEnabledGame) {
  1609. emuPrimaryWindow.Show() ; Show the emulator
  1610. } Else {
  1611. Loop % networkPlayers
  1612. MameMultiPlayer%A_Index%Window.Show() ; Show the emulator
  1613. MameMultiPlayer1Window.Activate() ; Activate first player window so that first player can use keyboard instead of last player
  1614. }
  1615.  
  1616. FadeInExit()
  1617. primaryExe.Process("WaitClose")
  1618. 7zCleanUp()
  1619. BezelExit()
  1620.  
  1621. If fileRenamed { ; Rename file back to alternate name for next launch
  1622. errLvl := MameRomCustomFile.Move(MameRomOriginalFile.FileFullPath) ; Put original name back
  1623. If errLvl ; If rename was successful, set var so we know to move it back later
  1624. ScriptError("There was a problem renaming " . MameRomCustomFile.FileName . " back to " . MameRomOriginalFile.FileName)
  1625. }
  1626.  
  1627. FadeOutExit()
  1628. ExitModule()
  1629.  
  1630.  
  1631. ListXMLInfo(rom){ ; Returns MAME info about parent rom, orientation angle, resolution
  1632. Global emuFullPath,emuPath,RLLog
  1633. ListXMLObject := Object()
  1634. listXMLVarLog := ""
  1635. ComSpecProcess := new Process(ComSpec) ; instantiate cmd.exe process
  1636. ComSpecProcess.RunDirect(comspec . " /c " . """" . emuFullPath . """" . " -listxml " . rom . " > tempBezel.txt", emuPath, "Hide", 1) ; Run from emu's folder
  1637. TempBezelFile := new File(emuPath . "\tempBezel.txt")
  1638. TempBezelFile.Read()
  1639. StringUtils.RegExMatch(TempBezelFile.Text, "s)<(machine|game).*name=" . """" . rom . """" . ".*" . "cloneof=" . """" . "[^""""]*", parent)
  1640. StringUtils.RegExMatch(parent,"cloneof=" . """" . ".*", parent)
  1641. StringUtils.RegExMatch(parent,"""" . ".*", parent)
  1642. parent := StringUtils.TrimLeft(parent, 1)
  1643. StringUtils.RegExMatch(TempBezelFile.Text, "s)<display.*rotate=" . """" . "[0-9]+" . """", angle)
  1644. StringUtils.RegExMatch(angle,"[0-9]+", angle, "-6")
  1645. StringUtils.RegExMatch(TempBezelFile.Text, "s)<display.*width=" . """" . "[0-9]+" . """", width)
  1646. StringUtils.RegExMatch(width,"[0-9]+", width, "-6")
  1647. StringUtils.RegExMatch(TempBezelFile.Text, "s)<display.*height=" . """" . "[0-9]+" . """", Height)
  1648. StringUtils.RegExMatch(Height,"[0-9]+", Height, "-6")
  1649. StringUtils.RegExMatch(TempBezelFile.Text, "s)<control.*ways=" . """" . "[0-9]+" . """", Ways)
  1650. StringUtils.RegExMatch(Ways,"[0-9]+", Ways, "-6")
  1651. logVars := "Parent|Angle|Height|Width|Ways"
  1652. Loop, Parse, logVars, |
  1653. {
  1654. currentobj := {}
  1655. currentobj.Label := A_Loopfield
  1656. currentobj.Value := %A_Loopfield%
  1657. ListXMLObject.Insert(currentobj["Label"], currentobj)
  1658. listXMLLog .= "`r`n`t`t`t`t`t" . currentobj["Label"] . " = " . currentobj["Value"]
  1659. }
  1660. RLLog.Info("Module - MAME ListXML values: " . listXMLLog)
  1661. If (ListXMLObject["Height"].Value > ListXMLObject["Width"].Value) {
  1662. ListXMLObject["Angle"].Value := true
  1663. RLLog.Info("Module - This game's height is greater than its width, forcing vertical mode")
  1664. }
  1665. TempBezelFile.Delete()
  1666. Return ListXMLObject
  1667. }
  1668.  
  1669. GenerateSoftResetScript(){ ; Generates a lua script to send a soft reset to MAME
  1670. Global emuPath
  1671.  
  1672. SoftScriptFile := new File(emuPath . "\soft_reset.lua")
  1673. ScriptFileName := emuPath . "\soft_reset.lua"
  1674. SoftScriptFile.Delete()
  1675.  
  1676. AppendTxt :="
  1677. (
  1678. -- This script will reset the machine
  1679. local function reset_machine()
  1680. if resetcounter == nil then
  1681. manager:machine():soft_reset();
  1682. resetcounter = 1;
  1683. end
  1684. end
  1685. if resetcounter == nil then
  1686. emu.wait(1);
  1687. reset_machine();
  1688. end
  1689. )"
  1690. SoftScriptFile.Append(AppendTxt)
  1691. Return SoftScriptFile.FileFullPath
  1692. }
  1693.  
  1694. GeneratePressButtonScript(button1,button2=""){ ; Generates a lua script to send a soft reset to MAME
  1695. Global emuPath
  1696.  
  1697. PressScriptFile := new File(emuPath . "\press_button.lua")
  1698. PressScriptFile.Delete()
  1699. If (button2) {
  1700. button2str := "`n`t`temu.wait(1);`n`t`tioport[""" . button2 . """]:write(1);`n`t`temu.wait(1);`n`t`tioport[""" . button2 . """]:write(0);"
  1701. }
  1702.  
  1703. AppendTxt :="
  1704. (
  1705. local function press_button()
  1706. if resetcounter == nil then
  1707. ioport[""" . button1 . """]:write(1);
  1708. emu.wait(1);
  1709. ioport[""" . button1 . """]:write(0);
  1710. resetcounter = 1;" . button2str . "
  1711. end
  1712. end
  1713. if resetcounter == nil then
  1714. emu.wait(1);
  1715. press_button();
  1716. end
  1717. )"
  1718. PressScriptFile.Append(AppendTxt)
  1719. Return PressScriptFile.FileFullPath
  1720. }
  1721.  
  1722. BuildNVRAMObject() {
  1723. Global nvramSettings,RLLog
  1724. RLLog.Info("BuildNVRAMObject - Started")
  1725.  
  1726. nvramSettings := {}
  1727.  
  1728. nvramSettings["vr"] := {}
  1729. nvramSettings["vr"]["Settings"] := {"BiosCounter":{"Position":["248"], "Option":{0:["00"], 1:["01"], 2:["02"], 3:["03"]}}, "Cabinet":{"Position":["52"], "Option":{"Special":["00"], "Standard":["01"], "Upright":["02"], "2PLink":["03"]}}, "Color":{"Position":["68"], "Option":{"Red":["00"], "Blue":["01"], "Yellow":["02"], "Green":["03"], "Black":["04"], "Pink":["05"], "SkyBlue":["06"], "Orange":["07"]}}, "Country":{"Position":["54"], "Option":{"Japan":["00"], "USA":["01"], "Export":["02"]}}, "Course":{"Position":["66"], "Option":{"Vote":["00"], "Beginner":["01"], "Middle":["02"], "Expert":["03"]}}, "CRC":{"Position":["16","18"]}, "Credit":{"Position":["32","40"], "Option":{"1":["00","00"], "Freeplay":["1A","01"]}}, "Difficulty":{"Position":["64"], "Option":{"Easy":["00"], "Normal":["01"], "Hard":["02"], "Hardest":["03"]}}, "Link":{"Position":["24"], "Option":{"None":["00"], "Master":["01"], "Slave":["02"], "Live":["03"]}}, "Monitor":{"Position":["22"], "Option":{"Standard":["00"], "Wide":["01"]}}, "NVRAM":{"File":["nvram"]}, "Race":{"Position":["70"], "Option":{"Normal":["00"], "Grandprix":["01"]}}, "StartCoin":{"Position":["42"], "Option":{1:["01"], 2:["02"], 3:["03"], 4:["04"], 5:["05"]}}}
  1730.  
  1731. nvramSettings["vr"]["Player"] := {}
  1732. nvramSettings["vr"]["Player"].Insert(1, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Red", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Master", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1733. nvramSettings["vr"]["Player"].Insert(2, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Blue", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1734. nvramSettings["vr"]["Player"].Insert(3, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Yellow", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1735. nvramSettings["vr"]["Player"].Insert(4, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Green", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1736. nvramSettings["vr"]["Player"].Insert(5, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Black", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1737. nvramSettings["vr"]["Player"].Insert(6, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Pink", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1738. nvramSettings["vr"]["Player"].Insert(7, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"SkyBlue", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1739. nvramSettings["vr"]["Player"].Insert(8, {"BiosCounter":"3", "Cabinet":"Standard", "Color":"Orange", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Monitor":"Wide", "Race":"Normal", "StartCoin":"1"})
  1740. nvramSettings["vr"]["CRC"] := {"Player":{1:["06","21"], 2:["3C","C7"], 3:["0E","5F"], 4:["FF","D8"], 5:["4B","7F"], 6:["BA","F8"], 7:["88","60"], 8:["79","E7"]}}
  1741.  
  1742. nvramSettings["vformula"] := {}
  1743. nvramSettings["vformula"]["Settings"] := {"BiosCounter":{"Position":["248"], "Option":{0:["00"], 1:["01"], 2:["02"], 3:["03"]}}, "Color":{"Position":["68"], "Option":{"Red":["00"], "Blue":["01"], "Yellow":["02"], "Green":["03"], "Black":["04"], "Pink":["05"], "SkyBlue":["06"], "Orange":["07"]}}, "Country":{"Position":["54"], "Option":{"Japan":["00"], "USA":["01"], "Export":["02"]}}, "Course":{"Position":["66"], "Option":{"Vote":["00"], "Beginner":["01"], "Middle":["02"], "Expert":["03"]}}, "CRC":{"Position":["16","18"]}, "Credit":{"Position":["32","40"], "Option":{"1":["00","00"], "Freeplay":["1A","01"]}}, "Difficulty":{"Position":["64"], "Option":{"Easy":["00"], "Normal":["01"], "Hard":["02"], "Hardest":["03"]}}, "Link":{"Position":["24"], "Option":{"None":["00"], "Master":["01"], "Slave":["02"], "Live":["03"]}}, "NVRAM":{"File":["nvram"]}, "Race":{"Position":["70"], "Option":{"Normal":["00"], "Grandprix":["01"]}}, "Sound":{"Position":["22"], "Option":{"On":["00"], "Off":["01"]}}, "StartCoin":{"Position":["42"], "Option":{1:["01"], 2:["02"], 3:["03"], 4:["04"], 5:["05"]}}}
  1744.  
  1745. nvramSettings["vformula"]["Player"] := {}
  1746. nvramSettings["vformula"]["Player"].Insert(1, {"BiosCounter":"1", "Color":"Red", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Master", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1747. nvramSettings["vformula"]["Player"].Insert(2, {"BiosCounter":"1", "Color":"Blue", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1748. nvramSettings["vformula"]["Player"].Insert(3, {"BiosCounter":"1", "Color":"Yellow", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1749. nvramSettings["vformula"]["Player"].Insert(4, {"BiosCounter":"1", "Color":"Green", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1750. nvramSettings["vformula"]["Player"].Insert(5, {"BiosCounter":"1", "Color":"Black", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1751. nvramSettings["vformula"]["Player"].Insert(6, {"BiosCounter":"1", "Color":"Pink", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1752. nvramSettings["vformula"]["Player"].Insert(7, {"BiosCounter":"1", "Color":"SkyBlue", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1753. nvramSettings["vformula"]["Player"].Insert(8, {"BiosCounter":"1", "Color":"Orange", "Country":"USA", "Course":"Vote", "Credit":"Freeplay", "Difficulty":"Normal", "Link":"Slave", "Race":"Normal", "Sound":"On", "StartCoin":"1"})
  1754. nvramSettings["vformula"]["CRC"] := {"Player":{1:["F2","EB"], 2:["C8","0D"], 3:["FA","95"], 4:["0B","12"], 5:["BF","B5"], 6:["4E","32"], 7:["7C","AA"], 8:["8D","2D"]}}
  1755.  
  1756. RLLog.Info("BuildNVRAMObject - Ended")
  1757. }
  1758.  
  1759. BezelLabel:
  1760. emuConsoleWindow.Set("Transparent",0)
  1761. Return
  1762.  
  1763. HaltEmu:
  1764. If (pauseMethod = 1)
  1765. { disableSuspendEmu := "true"
  1766. disableRestoreEmu := "true"
  1767. emuPrimaryWindow.PostMessage("0x211",1)
  1768. } Else If (pauseMethod = 2)
  1769. { disableSuspendEmu := "true"
  1770. emuPrimaryWindow.PostMessage("0x211",1)
  1771. } Else If (pauseMethod = 3)
  1772. { disableSuspendEmu := "true"
  1773. disableRestoreEmu := "true"
  1774. emuPrimaryWindow.PostMessage(0x0400+6,1)
  1775. } Else If (pauseMethod = 4)
  1776. { disableSuspendEmu := "true"
  1777. emuPrimaryWindow.PostMessage(0x0400+6,1)
  1778. } Else If (pauseMethod = 5)
  1779. { disableSuspendEmu := "true"
  1780. KeyUtils.Send("{P down}")
  1781. TimerUtils.Sleep(1000)
  1782. KeyUtils.Send("{P up} ")
  1783. }
  1784. Return
  1785. RestoreEmu:
  1786. If (pauseMethod = 1)
  1787. emuPrimaryWindow.PostMessage("0x212",1)
  1788. Else If (pauseMethod = 2)
  1789. emuPrimaryWindow.PostMessage("0x212",1)
  1790. Else If (pauseMethod = 3)
  1791. emuPrimaryWindow.PostMessage(0x0400+6,0)
  1792. Else If (pauseMethod = 4)
  1793. emuPrimaryWindow.PostMessage(0x0400+6,0)
  1794. Else If (pauseMethod = 5) {
  1795. disableSuspendEmu := "true"
  1796. KeyUtils.Send("{P down}")
  1797. TimerUtils.Sleep(1000)
  1798. KeyUtils.Send("{P up} ")
  1799. }
  1800. emuPrimaryWindow.Activate()
  1801. Return
  1802.  
  1803. CloseProcess:
  1804. FadeOutStart()
  1805. If (networkSession && networkPlayers > 1) {
  1806. Loop % networkPlayers {
  1807. MameMultiPlayer%A_Index%Window.Close()
  1808. MameMultiPlayer%A_Index%Window.WaitClose()
  1809. }
  1810. } Else
  1811. emuPrimaryWindow.Close()
  1812. Return
  1813.  
  1814. 10:56:21:490 | RL | INFO | +63 | BuildScript - Loaded Pause scripts
  1815. 10:56:21:496 | RL | INFO | +0 | BuildScript - Loaded Multi-Player scripts
  1816. 10:56:21:503 | RL | INFO | +15 | BuildScript - Loaded Statistics.ahk script
  1817. 10:56:21:503 | RL | WARNING | +0 | BuildScript - "D:\RocketLauncher\Lib\User Functions.ahk" not found
  1818. 10:56:21:503 | RL | INFO | +0 | BuildScript - Finished injecting functions into module
  1819. 10:56:21:509 | RL | INFO | +0 | Main - Module is built
  1820. 10:56:21:509 | RL | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\AutoHotkey.dll exists
  1821. 10:56:21:629 | RL | INFO | +125 | Main - Running module
  1822. 10:56:24:387 | MD | INFO | +N/A | Module initialized
  1823. 10:56:24:389 | MD | INFO | +0 | Keymapper - Creating Custom Joy Name Array for Name Replacements
  1824. 10:56:24:389 | MD | INFO | +0 | LoadPreferredControllers - Started
  1825. 10:56:24:389 | MD | INFO | +0 | GetJoystickArray - Started
  1826. 10:56:24:629 | MD | INFO | +250 | GetJoystickGUID - Started
  1827. 10:56:24:629 | MD | INFO | +0 | GetJoystickGUID - Ended and found GUID: 302322709CDEE8118001444553540000
  1828. 10:56:24:632 | MD | INFO | +0 | GetJoystickGUID - Started
  1829. 10:56:24:632 | MD | INFO | +0 | GetJoystickGUID - Ended and found GUID: 302322709CDEE8118002444553540000
  1830. 10:56:24:632 | MD | INFO | +0 | GetJoystickArray - Ended
  1831. 10:56:24:632 | MD | INFO | +0 | LoadPreferredControllers - Sorting Currently Connected joysticks List to match the order of the Preferred Controller List
  1832. 10:56:24:633 | MD | INFO | +0 | LoadPreferredControllers - Assigning the New Joystick IDs according to the preferred list for the active controllers
  1833. 10:56:24:633 | MD | INFO | +0 | ChangeJoystickID - Started
  1834. 10:56:24:633 | MD | INFO | +0 | ChangeJoystickID - Ended
  1835. 10:56:24:633 | MD | INFO | +0 | ChangeJoystickID - Started
  1836. 10:56:24:633 | MD | INFO | +0 | ChangeJoystickID - Ended
  1837. 10:56:24:633 | MD | INFO | +0 | LoadPreferredControllers - Ended
  1838. 10:56:24:633 | MD | INFO | +0 | CheckFile - Checking if D:\RocketLauncher\Profiles\JoyToKey\JoyToKey.exe exists
  1839. 10:56:24:633 | MD | INFO | +0 | Keymapper - Loading joytokey
  1840. 10:56:24:633 | MD | INFO | +0 | RunKeymapper - Started, using method "load"
  1841. 10:56:24:633 | MD | INFO | +0 | GetJoystickArray - Started
  1842. 10:56:24:877 | MD | INFO | +250 | GetJoystickGUID - Started
  1843. 10:56:24:877 | MD | INFO | +0 | GetJoystickGUID - Ended and found GUID: 302322709CDEE8118001444553540000
  1844. 10:56:24:880 | MD | INFO | +0 | GetJoystickGUID - Started
  1845. 10:56:24:880 | MD | INFO | +0 | GetJoystickGUID - Ended and found GUID: 302322709CDEE8118002444553540000
  1846. 10:56:24:881 | MD | INFO | +0 | GetJoystickArray - Ended
  1847. 10:56:24:881 | MD | WARNING | +0 | GetProfile - Keymapper support is enabled for "joytokey", but could not find a "terracre", "MAME", "MAME", default, a "" player 1 profile or a blank profile in "D:\RocketLauncher\Profiles\joytokey" for controller ""
  1848. 10:56:24:881 | MD | INFO | +0 | RunJoyToKey - Started
  1849. 10:56:24:881 | MD | INFO | +0 | WinClose - Closing: JoyToKey ahk_class TMainForm
  1850. 10:56:25:252 | MD | INFO | +375 | Process - WaitClose JoyToKey.exe 2
  1851. 10:56:25:382 | MD | INFO | +125 | RunJoyToKey - Ended
  1852. 10:56:25:382 | MD | INFO | +0 | RunKeymapper - Ended
  1853. 10:56:25:385 | MD | INFO | +0 | StartModule - Started
  1854. 10:56:25:385 | MD | INFO | +0 | StartModule - MEmu: MAME
  1855. MEmuV: v0.166
  1856. MURL: http://www.mame.net/
  1857. MAuthor: djvj,faahrev,brolly,Tomkun
  1858. MVersion: 2.3.7
  1859. MCRC: 5C737136
  1860. iCRC: 25E2CCF
  1861. MID:
  1862. MSystem: "AAE","Aamber Pegasus","Acorn Electron","Amstrad CPC","Amstrad GX4000","APF Imagination Machine","Apple II","Apple IIGS","Applied Technology MicroBee","Atari 8-Bit","Atari 2600","Atari 5200","Atari 7800","Atari Classics","Atari Jaguar","Atari Lynx","Bally Astrocade","Bandai Super Vision 8000","Bandai WonderSwan","Bandai WonderSwan Color","Bit Corporation Gamate","Camputers Lynx","Capcom","Capcom Classics","Capcom Play System","Capcom Play System II","Capcom Play System III","Casio PV-1000","Casio PV-2000","Cave","Coleco ADAM","ColecoVision","Commodore 64","Commodore MAX Machine","Creatronic Mega Duck","Data East Classics","EACA EG2000 Colour Genie","Emerson Arcadia 2001","Entex Adventure Vision","Epoch Game Pocket Computer","Epoch Super Cassette Vision","Exidy Sorcerer","Fairchild Channel F","Fujitsu FM-7","Funtech Super Acan","GamePark 32","GCE Vectrex","Hartung Game Master","HBMAME","Interton VC 4000","Irem Classics","JungleTac Sport Vii","Jupiter Ace","Konami Classics","LaserDisc","Magnavox Odyssey 2","MAME","Matra & Hachette Alice","Mattel Aquarius","Mattel Intellivision","MGT Sam Coupe","Midway Classics","Milton Bradley MicroVision","Namco Classics","Namco System 22","NEC PC-8801","NEC PC Engine","NEC PC Engine-CD","NEC SuperGrafx","NEC TurboGrafx-16","NEC TurboGrafx-CD","Nintendo 64","Nintendo 64DD","Nintendo Arcade Systems","Nintendo Classics","Nintendo Entertainment System","Nintendo Famicom","Nintendo Famicom Disk System","Nintendo Game Boy","Nintendo Game Boy Advance","Nintendo Game Boy Color","Nintendo Pokemon Mini","Nintendo Satellaview","Nintendo Super Famicom","Nintendo Super Game Boy","Nintendo Virtual Boy","Othello Multivision","PacMAME","Philips CD-i","Philips VG 5000","Philips Videopac Plus G7400","RCA Studio II","Sega 32X","Sega CD","Sega Classics","Sega Game Gear","Sega Genesis","Sega Master System","Sega Mega Drive","Sega Model 1","Sega Pico","Sega Saturn","Sega SC-3000","Sega SG-1000","Sega ST-V","Sega VMU","Sharp X1","Sinclair ZX81","SNK Classics","SNK Neo Geo","SNK Neo Geo AES","SNK Neo Geo AES","SNK Neo Geo CD","SNK Neo Geo MVS","SNK Neo Geo Pocket","SNK Neo Geo Pocket Color","Sony PlayStation","Sony PocketStation","Sord M5","Soundic Victory MPT-02","Super Nintendo Entertainment System","Taito Classics","Tandy TRS-80 Color Computer","Texas Instruments TI 99-4A","Tiger Game.com","Tomy Tutor","VTech CreatiVision","Watara Supervision","Williams Classics"
  1863. 10:56:25:385 | MD | INFO | +0 | StartModule - You have a supported System Name for this module: "MAME"
  1864. 10:56:25:387 | MD | INFO | +0 | PluginInit - Started
  1865. 10:56:25:387 | MD | DEBUG | +0 | BuildDatabaseTable - Started - Building Table for: Name|Cloneof|Manufacturer|Year|Genre|Rating
  1866. 10:56:25:387 | MD | INFO | +0 | CheckFile - Checking if D:\hyperspin\Databases\MAME\MAME.xml exists
  1867. 10:56:25:461 | MD | DEBUG | +78 | BuildDatabaseTable - Searching for a "Game Name" in the database
  1868. 10:56:25:461 | MD | DEBUG | +0 | BuildDatabaseTable - Found "Game Name" in the database!
  1869. 10:56:25:466 | MD | DEBUG | +0 | BuildDatabaseTable - Searching database for: Name
  1870. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Found "Name" with a value: "Terra Cresta (YM3526 set 1)"
  1871. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Searching database for: Cloneof
  1872. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Could not find: Cloneof
  1873. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Searching database for: Manufacturer
  1874. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Found "Manufacturer" with a value: "Nichibutsu"
  1875. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Searching database for: Year
  1876. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Found "Year" with a value: "1985"
  1877. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Searching database for: Genre
  1878. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Found "Genre" with a value: "Shoot-'Em-Up"
  1879. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Searching database for: Rating
  1880. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Found "Rating" with a value: ""
  1881. 10:56:25:467 | MD | DEBUG | +0 | BuildDatabaseTable - Ended
  1882. 10:56:25:511 | MD | INFO | +47 | PluginInit - Ended
  1883. 10:56:25:511 | MD | DEBUG | +0 | StartModule - Setting romName to the dbName sent to RocketLauncher: terracre
  1884. 10:56:25:539 | MD | INFO | +31 | StartModule - Ended
  1885. 10:56:25:539 | MD | INFO | +0 | i18n - Started
  1886. 10:56:25:539 | MD | DEBUG | +0 | i18n - Section "English_United_States" & key "dialog.open" not found, trying section "English"
  1887. 10:56:25:539 | MD | INFO | +0 | i18n - Ended, using "Open" for "dialog.open"
  1888. 10:56:25:541 | MD | DEBUG | +0 | Module - Finished building the MAME object
  1889. 10:56:25:541 | MD | WARNING | +0 | Module - "MAME" is not a known console or computer system. Defaulting to MAME's Arcade mode for the remainder of this MAME module.
  1890. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Fullscreen: true (DEFAULT)
  1891. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - LegacyMode: false (DEFAULT)
  1892. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - MAME_BIOS_Path: D:\mame\roms (DEFAULT)
  1893. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Videomode: d3d (DEFAULT)
  1894. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - PauseMethod: 1 (DEFAULT)
  1895. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - BilinearFilter: false (DEFAULT)
  1896. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - HLSL: false (DEFAULT)
  1897. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - GLSL: false (DEFAULT)
  1898. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - BezelMode: layout (DEFAULT)
  1899. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - VerticalRotationMode: none (DEFAULT)
  1900. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - CheatMode: false (DEFAULT)
  1901. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - CheatModeKey: (NO VALUE)
  1902. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - UseSoftwareList: false (DEFAULT)
  1903. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - StaticParameters: (NO VALUE)
  1904. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Parameters: (NO VALUE)
  1905. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Parameters: (NO VALUE)
  1906. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - MameRomName: (NO VALUE)
  1907. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Autosave: false (DEFAULT)
  1908. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Volume: (NO VALUE)
  1909. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Artwork_Crop: true (DEFAULT)
  1910. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Use_Bezels: false (DEFAULT)
  1911. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Use_Overlays: true (DEFAULT)
  1912. 10:56:25:541 | MD | INFO | +0 | RIniFile.Read - Module - Use_Backdrops: true (DEFAULT)
  1913. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - Use_Cpanels: false (DEFAULT)
  1914. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - Use_Marquees: false (DEFAULT)
  1915. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - IniPath: (NO VALUE)
  1916. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - HashPath: (NO VALUE)
  1917. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - UseControllerRemap: true (DEFAULT)
  1918. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - ControllerRemapPath: D:\mame\ControllerRemap\ControllerRemap.exe (DEFAULT)
  1919. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - ControllerRemapConfigPath: D:\mame\ControllerRemap\ctrlr\ (DEFAULT)
  1920. 10:56:25:542 | MD | INFO | +0 | RIniFile.Read - Module - MAMECtrlrPath: D:\mame\ctrlr (DEFAULT)
  1921. 10:56:25:543 | MD | INFO | +0 | RIniFile.Read - Module - Enable_Link_Play: false (DEFAULT)
  1922. 10:56:35:753 | MD | DEBUG | +10219 | Process.RunDirect - "C:\Windows\system32\cmd.exe /c "D:\mame\mame.exe" -listxml terracre > tempBezel.txt" Process ID: 2324 and ErrorLevel reported as: 0
  1923. 10:56:39:368 | MD | INFO | +3610 | Module - MAME ListXML values:
  1924. Parent =
  1925. Angle =
  1926. Height =
  1927. Width =
  1928. Ways =
  1929. 10:56:39:373 | MD | INFO | +0 | Controller Remap: Start
  1930. 10:56:39:374 | MD | INFO | +0 | Controller Remap: ControllerRemapConfigPath: D:\mame\ControllerRemap\ctrlr\
  1931. 10:56:39:374 | MD | INFO | +0 | Controller Remap: No Controller config file found.
  1932. 10:56:39:374 | MD | INFO | +0 | Controller Remap: End
  1933. 10:56:39:374 | MD | INFO | +0 | Module - Detected MAME Product Version from 'D:\mame\mame.exe' is
  1934. 10:56:39:471 | MD | INFO | +109 | Module - Running MAME in non-legacy mode
  1935. 10:56:39:471 | MD | INFO | +0 | Module - SinglePlayer session
  1936. 10:56:39:471 | MD | INFO | +0 | Process.Run - Running: "D:\mame\mame.exe" terracre -rompath "D:\mame\roms;D:\Stella\newroms\MAME;D:\mame\roms" -nowindow -artwork_crop -nouse_bezels -use_overlays -use_backdrops -skip_gameinfo
  1937. 10:56:40:419 | MD | DEBUG | +937 | Process.Run - "mame.exe terracre -rompath "D:\mame\roms;D:\Stella\newroms\MAME;D:\mame\roms" -nowindow -artwork_crop -nouse_bezels -use_overlays -use_backdrops -skip_gameinfo" Process ID: 1572
  1938. 10:56:40:419 | MD | DEBUG | +0 | MiscUtils.GetActiveWindowStatus - Title: HyperSpin | Class: ThunderRT6FormDC | State: 0 | X: 0 | Y: 0 | Width: 1280 | Height: 1024 | Window HWND: 0x30138 | Process ID: 640 | Process Path: D:\hyperspin\HyperSpin.exe
  1939. 10:56:40:419 | MD | INFO | +0 | Window.Wait - Waiting for window "ahk_class MAME"
  1940. 10:56:41:316 | MD | DEBUG | +907 | MiscUtils.GetActiveWindowStatus - Title: HyperSpin | Class: ThunderRT6FormDC | State: 0 | X: 0 | Y: 0 | Width: 1280 | Height: 1024 | Window HWND: 0x30138 | Process ID: 640 | Process Path: D:\hyperspin\HyperSpin.exe
  1941. 10:56:41:317 | MD | DEBUG | +0 | MiscUtils.GetActiveWindowStatus - Title: HyperSpin | Class: ThunderRT6FormDC | State: 0 | X: 0 | Y: 0 | Width: 1280 | Height: 1024 | Window HWND: 0x30138 | Process ID: 640 | Process Path: D:\hyperspin\HyperSpin.exe
  1942. 10:56:41:317 | MD | INFO | +0 | Window.WaitActive - Waiting for "ahk_class MAME"
  1943. 10:56:41:799 | MD | DEBUG | +484 | MiscUtils.GetActiveWindowStatus - Title: MAME: Terra Cresta (YM3526 set 1) [terracre] | Class: MAME | State: 0 | X: | Y: | Width: | Height: | Window HWND: 0x201a8 | Process ID: 1572 | Process Path: D:\mame\mame.exe
  1944. 10:56:42:539 | MD | INFO | +734 | Process.Process - "WaitClose" "mame.exe"
  1945. 10:56:51:621 | MD | DEBUG | +9079 | Process.Process - "mame.exe" returned 0 and is now closed. Continuing thread.
  1946. 10:56:51:621 | MD | INFO | +0 | ExitModule - Started
  1947. 10:56:51:621 | MD | INFO | +0 | Starting Updating Statistics:
  1948. 10:56:52:849 | MD | INFO | +1234 | Game section statistics updated.
  1949. 10:56:52:849 | MD | INFO | +0 | RunKeymapper - Started, using method "unload"
  1950. 10:56:52:849 | MD | INFO | +0 | GetJoystickArray - Started
  1951. 10:56:53:275 | MD | INFO | +422 | GetJoystickGUID - Started
  1952. 10:56:53:276 | MD | INFO | +0 | GetJoystickGUID - Ended and found GUID: 302322709CDEE8118001444553540000
  1953. 10:56:53:278 | MD | INFO | +0 | GetJoystickGUID - Started
  1954. 10:56:53:279 | MD | INFO | +0 | GetJoystickGUID - Ended and found GUID: 302322709CDEE8118002444553540000
  1955. 10:56:53:279 | MD | INFO | +0 | GetJoystickArray - Ended
  1956. 10:56:53:279 | MD | INFO | +0 | GetProfile - Loading Player 1 Profile -> D:\RocketLauncher\Profiles\joytokey\HyperSpin\HyperSpin.cfg
  1957. 10:56:53:279 | MD | INFO | +0 | RunJoyToKey - Started
  1958. 10:56:53:280 | MD | INFO | +0 | WinClose - Closing: JoyToKey ahk_class TMainForm
  1959. 10:56:53:583 | MD | INFO | +312 | Process - WaitClose JoyToKey.exe 2
  1960. 10:56:53:584 | MD | INFO | +0 | Run - Running: D:\RocketLauncher\Profiles\JoyToKey\JoyToKey.exe "D:\RocketLauncher\Profiles\joytokey\HyperSpin\HyperSpin.cfg"
  1961. 10:56:53:757 | MD | DEBUG | +172 | Run - "JoyToKey.exe "D:\RocketLauncher\Profiles\joytokey\HyperSpin\HyperSpin.cfg"" Process ID: 2852
  1962. 10:56:53:757 | MD | INFO | +0 | RunJoyToKey - Ended
  1963. 10:56:53:757 | MD | INFO | +0 | RunKeymapper - Ended
  1964. 10:56:53:831 | MD | INFO | +78 | ExitModule - Ended
  1965. End of Module Logs
  1966. 10:56:53:841 | RL | INFO | +32203 | Main - Module ended, exiting RocketLauncher normally
  1967. 10:56:53:841 | RL | INFO | +0 | ExitScript - Started
  1968. 10:56:53:847 | RL | DEBUG | +16 | Registry.Read - Reading from Registry : RootKey=HKEY_LOCAL_MACHINE, SubKey=System\CurrentControlSet\Control\Windows, ValueName=ErrorMode,RegistryVersion=32
  1969. 10:56:53:847 | RL | DEBUG | +0 | Registry.Read - Registry Read finished, returning 0
  1970. 10:56:53:913 | RL | INFO | +62 | ExitScript - Checking what application is currently in focus.
  1971. 10:56:53:913 | RL | INFO | +0 | ExitScript - HyperSpin is currently active. Proceeding with exit
  1972. 10:56:53:930 | RL | INFO | +16 | SystemCursor - Restoring mouse cursor
  1973. 10:56:53:940 | RL | INFO | +16 | ExitScript - Restored cursor
  1974. [/code]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement