Page 1 of 1

New Winkawaks AutoIT

Posted: Fri Sep 01, 2017 12:19 pm
by Gtamax
Hi!
I'm using Winkawaks 1.65 and I had problems with the mGalaxy default script, I got freeze when I exit the emulator.
So I maked experimentations and I have made this script, it reduce the window before any operations, that was the cause of the freeze.

Code: Select all

;----------========== Parsing (common to every scripts) ==========----------
;
; There has been a call from mGalaxy to AutoIt and a commandline has been passed to it:
; Structure:/AutoIt3ExecuteScript "Path_to_script(between quotes)" Path_to_emu Emu_parameters(including a "Path_to_rom"(between quotes))
; Example:/AutoIt3ExecuteScript "C:\...\MESS [Script].au3" C:\...\mess64.exe a800 -flop1 "C:\...\Boulder_Dash.zip" -skip_gameinfo -nowindow
;
; 1. We don't need the part related to AutoiIt anymore [/AutoIt3ExecuteScript "Path to script (between quotes)"], the rest is assigned to '$commandline'
; 2. '$commandline' is then split in two: [Path_to_emu] goes to '$app', [parameters(including a "Path to rom" (between quotes))] goes to '$command'
; 3. Some apps (MESS for instance, when it searchs for a system Bios) need to know the path to their 'Working Directory'. We do 'extract' it from the full app path
;
; 1
Local $count = StringInStr($CmdLineRaw, '.au3"', 0 , 1, 1)
Local $commandline = StringTrimLeft( $CmdLineRaw, $count + 5 )
; 2
Local $count2 = StringInStr($commandline, '.exe', 0 , 1, 1)
local $app = StringLeft ($commandline, $count2 + 3 )
local $command = StringTrimLeft($commandline, $count2 + 4 )
if not $command then exit 0
; 3
Local $workingDir = StringRegExpReplace($app, "\\[^\\]*$", "")
FileChangeDir($workingDir)
;---------------------------------------------------------------------------

hotkeyset("{esc}", "Terminate")

;load application
Runwait ( '"' & $app & '" ' & $command )

;exit
exit 0

;*************************************
;functions
Func Terminate()
   Sleep(250)
   Send("!{Enter}")
   Sleep(250)
   Send("{Enter}")
   Sleep(250)
   Send("!{F4}")
   Exit 0
EndFunc
Enjoy  ;)

Re: New Winkawaks AutoIT

Posted: Sat Sep 02, 2017 8:17 pm
by Aeliss
I don't use Winkawaks so I can't check for the bugs, but rly useful to know, thx.

Re: New Winkawaks AutoIT

Posted: Wed Sep 06, 2017 2:10 pm
by mgalaxy
Thank you, I will adapt the official script accordingly! :)
Is ' Send("!{Enter}")' (the one with the exclamation mark) needed? This is to switch on/off full-screen isn't it? Is this necessary here? (just asking cause I can't test it right now)

Re: New Winkawaks AutoIT

Posted: Fri Sep 08, 2017 3:14 pm
by Gtamax
mgalaxy wrote: Thank you, I will adapt the official script accordingly! :)
Is ' Send("!{Enter}")' (the one with the exclamation mark) needed? This is to switch on/off full-screen isn't it? Is this necessary here? (just asking cause I can't test it right now)
Yes! I can't close the emulator in fullscreen mode, this line switch the emulator to window mode (ALT + ENTER = !{Enter}).