Page 1 of 1

new user: some questions

Posted: Tue May 24, 2016 5:09 am
by Dankuro
First of all, thank you for this amazing front-end, I'm building an arcade machine as my final project for school and we needed a new front-end since hyperspin was giving us hell. The ease of use of this one is a blessing compared to that. However, i have come across a rather bothersome issue. When we boot games from the front-end, they only come up on the front if they are on true fullscreen, borderless window games will stay hidden behind the front-end, unreachable by any means. I have read on the main page that you can script a workarround but i'm short on time and unfamiliar with the scripting language itself.
Also, i would like to know how to add video to the game selection screen, and if there is a possibility to create my own theme for the front-end.
Thank you so much in advance and thanks for reading.  :D

Re: new user: some questions

Posted: Tue May 24, 2016 10:42 am
by jmd
When we boot games from the front-end, they only come up on the front if they are on true fullscreen, borderless window games will stay hidden behind the front-end, unreachable by any means.
What emulator are you using? For some emu you'll have indeed to download a script to add a missing functionality to the emulator (mainly: quit with ESC or run full screen))
Also, i would like to know how to add video to the game selection screen
You simply have to give the path to the 'Video folder' for that system in mGalaxy_Runway (you'll find video packs on Emumovies.com...or internet)
and if there is a possibility to create my own theme for the front-end
No, it's not possible to create themes.  'Themes' is actually the "business model" retained by mGalaxy to help fund the project!
This is the only way to get a little back for all the investment in time and keep the quality level so high...so I doubt that this situation should change!?

Re: new user: some questions

Posted: Tue May 24, 2016 12:57 pm
by Dankuro
Thank you so much with these answers! throught the day we've been getting through with the front-end just nicely, we're focusing mainly on MAME which has the ESC key functionality built in, although we are working on some AHK workarrounds if we add more emulators in the future, we figured out the snaps system and we've pretty much got every issue resolved (tutorials on the forum would have been nice, but the threads helped).
We came across an important issue on Windows XP (we don't know if thiis happens on other versions. The front-end will stay up front and cover every Windows game we launch from it if it doesn't run on true fullscreen, this has limited us on our game choices a lot. Is this a common issue?

Re: new user: some questions

Posted: Tue May 24, 2016 2:39 pm
by jmd
we are working on some AHK workarrounds if we add more emulators in the future
I told you that some emu needed a script to work nicely with mGalaxy...but those scripts already exist and are available to download you know!!
http://www.mgalaxy.com/tutorial_emulators.html
tutorials on the forum would have been nice
All the tutorials are there, they covers many aspects of mGalaxy settings
http://www.mgalaxy.com/tutorial_mGalaxy.html
We came across an important issue on Windows XP (we don't know if thiis happens on other versions. The front-end will stay up front and cover every Windows game we launch from it if it doesn't run on true fullscreen
I don't have this issue on my cabinet running XP! Does it happen with MAME and/or another emu?

Re: new user: some questions

Posted: Tue May 24, 2016 8:13 pm
by Dankuro
It is not with an emulator, but with PC games, filed under "Microsoft" in the databases.
Some examples include TBOI: Rebirth and PAC-MAN Championship edition DX+. Both of these run on borderless window and get stuck behind the front-end when they launch. MAME doesn't do this, and neither do true fullscreen games like Metal Slug Collection or any Touhou games.

Re: new user: some questions

Posted: Wed May 25, 2016 3:33 pm
by Aeliss
The future mGalaxy have a new system to manage them, but for the moment I have this problem on some TaitoX game (it's windows application) so I m using a special script

Code: Select all

;Parsing
Local $count = StringInStr($CmdLineRaw, ".exe", 0 , 1, 1)
local $app = StringLeft ( $CmdLineRaw, $count + 4 )
local $command = StringTrimLeft( $CmdLineRaw, $count + 4 )
if not $command then exit 0

;Get more info
$count = StringInStr($command, '"', 0 , 1, 1)
local $link = StringTrimLeft ( $command, $count  )
$link = StringTrimRight ( $link, 1 )
Local $aDetails = FileGetShortcut($link)
If @error Then exit
local $tmp = StringSplit($aDetails[0], "\")
local $apptorun = $tmp[$tmp[0]]


;run command
;Run ('"' & $app & '" ' & $command)
ShellExecute('"' & $link & '"')

;wait for application launched with protection loop
;wait for 5 s and exit if no application found
local $protloop = 10
While not(ProcessExists($apptorun))
    $protloop = $protloop - 1
   if ($protloop < 0) then exit 0
   sleep(500)
WEnd

;try to put in front
local $PID = GetProcessPID($apptorun)
local $WinName =  ProcessGetWindow($PID)
WinSetState($WinName,"",@SW_SHOW)
WinSetState($WinName,"",@SW_ENABLE)

;wait for close
While (ProcessExists($apptorun) or (ProcessExists("cmd.exe")))
   sleep(500)
WEnd

;To resolve bug in taito  Xom Tetris gran master
local $list = ProcessList("game.exe")
if $list[0][0] > 0 Then
   local $PID = $list[1][1]
   ProcessWaitClose($PID)
endif

Exit 0




;*********************************************************
;functions
;*********************************************************

Func GetProcessPID($name)
   Local $list = ProcessList($name)
   For $i = 1 To $list[0][0]
       If $list[$i][0] <> "" then
          Return $list[$i][1]
        Endif
   Next
   return 0
endFunc

Func ProcessGetWindow($PId)
    If IsNumber($PId) = 0 then
        SetError(1)
    Else
        Local $WinList = WinList()

        For $i = 1 To $WinList[0][0]
            If WinGetProcess($WinList[$i][0], "") = $PId Then
                return $WinList[$i][0]
            EndIf
        Next
        Return 0
    EndIf
 EndFunc
 
 
 
;~   
;~ Func _WinWaitActivePID($iPid)
;~    While 1
;~        Local $list = WinList()
;~        For $i = 1 To $list[0][0]
;~            If $list[$i][0] <> "" And IsVisible($list[$i][1]) Then
;~                If WinGetProcess($list[$i][1]) = $iPid AND WinActive($list[$i][1]) Then Return $list[$i][0]
;~            EndIf
;~        Next
;~    WEnd
;~ EndFunc
;~      
;~ Func IsVisible($handle)
;~     If BitAND(WinGetState($handle), 2) Then
;~         Return 1
;~     Else
;~         Return 0
;~     EndIf
;~  EndFunc
 
I m using this script in a special folder, inside I put the cmd.exe application used as emul.

Edit:
I have made a try 5 mn ago with TBOI, I haven't problem even without script, but I m on Win7. Have you configured the Fullscreen for it ?

Re: new user: some questions

Posted: Wed May 25, 2016 8:59 pm
by Dankuro
yes, i did, TBOI rebirth only has borderless window in the options menu (it calls it fullscreen), same for pacman DX+.
I'm working on a workarround i thought about, if mGalaxy can only charge one script whilst loading games, i can make mgalaxy launch scrpts that charge the games instead of the games themselves, that way i can have an AHK for each game according to my needs, i'll try it out tomorrow.
I only have until june 3rd to have this entire setup working, wish me luck!