- ali2k1 - 2010-12-08
Hey you go guys found some 1500 mame marquees
http://www.mediafire.com/download.php?tjj1mch33lx
by the way you can import the thumbs easily by using the old launcher but for fanart you have to do it manually in advanced launcher If it helps. Nice work!!
- Angelscry - 2010-12-08
ali2k1 Wrote:Hey you go guys found some 1500 mame marquees
http://www.mediafire.com/download.php?tjj1mch33lx
by the way you can import the thumbs easily by using the old launcher but for fanart you have to do it manually in advanced launcher If it helps. Nice work!! If your image files are named correctly and into the right directories you can easily import both thumbs and fanarts with the Advanced launcher.- When creating a launcher if the roms fanarts path and roms thumbs path are the same as the roms path the advanced launcher will automatically search for romfilename_thumb.jpg and romfilename_fanart.jpg.
- If roms fanarts path and roms thumbs path are differents than roms path the launcher will automatically search for romfilename.jpg image in each different directory.
With this feature you can for example delete a launcher, recreate one, with the same thumbs and fanarts paths and quickly recover all your images.
- Angelscry - 2010-12-09
@jpreville
Please could you try to replace the def _test_mame_name function into the emulators.py file by this one and tell me if it solve something or not :
Code: def _test_mame_name( app, filename ):
mamefiles = ['sdlmame','mame']
for mamefile in mamefiles:
if ( app.find(mamefile) > 0 ):
page = subprocess.Popen(app+' -listfull '+filename, shell=True, stdout=subprocess.PIPE)
page.wait()
stdout_value = page.communicate()[0]
name = re.findall('"(.*?)"', stdout_value)
romname = re.sub(' \(.*?\)', '', name[0])
return romname.replace('/','-')
return page
Thank you...
- Eldorado - 2010-12-09
Angelscry Wrote:So that's not the problem. Could you please post here the content of your launchers.xml file? Thank you.
Sure, just 4 emulators so far and 1 game in each and each of them throw up some sort of an error, generally due to file not found
thanks!
Code: <?xml version="1.0" encoding="utf-8" standalone="yes"?>
<launchers>
<launcher>
<name>Project64</name>
<application>smb://tower/Game/Emulator/N64/Project64_1.7.0.49/Project64.exe</application>
<args></args>
<rompath>smb://tower/Game/Emulator/N64/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/N64/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/N64/ROMS/</fanartpath>
<romext>z64|v64</romext>
<platform>Nintendo 64</platform>
<thumb>smb://tower/Game/Emulator/N64/Mario Kart 64.jpg</thumb>
<fanart>smb://tower/Game/Emulator/N64/ROMS/</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Mario Kart 64</name>
<filename>smb://tower/Game/Emulator/N64/ROMS/Mario Kart 64 (U) [!].z64</filename>
<platform>Nintendo 64</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
<launcher>
<name>zsnes</name>
<application>C:\Games\Emulator\SNES\ZSNES\zsnesw.exe</application>
<args>-m -s -v 22</args>
<rompath>smb://tower/Game/Emulator/SNES/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/SNES/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/SNES/ROMS/</fanartpath>
<romext>ZIP</romext>
<platform>Super Nintendo Entertainment System</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Super Mario All-Stars</name>
<filename>smb://tower/Game/Emulator/SNES/ROMS/Super Mario All-Stars (U).zip</filename>
<platform>Super Nintendo Entertainment System</platform>
<thumb>smb://tower/Game/Emulator/SNES/Super Mario All-Stars (U).jpg</thumb>
<fanart>smb://tower/Game/Emulator/SNES/ROMS/Super Mario All-Stars (U).zip</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
<launcher>
<name>nestopia</name>
<application>C:\Games\Emulator\NES\Nestopia\nestopia.exe</application>
<args></args>
<rompath>smb://tower/Game/Emulator/NES/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/NES/ROMS/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/NES/ROMS/</fanartpath>
<romext>NES</romext>
<platform>Nintendo Entertainment System</platform>
<thumb>smb://tower/Game/Emulator/NES/ROMS/</thumb>
<fanart>smb://tower/Game/Emulator/NES/ROMS/</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Final Fantasy</name>
<filename>smb://tower/Game/Emulator/NES/ROMS/Final Fantasy (U).nes</filename>
<platform>Nintendo Entertainment System</platform>
<thumb>smb://tower/Game/Emulator/NES/ROMS/Final Fantasy (U)_thumb.jpg</thumb>
<fanart>smb://tower/Game/Emulator/NES/ROMS/Final Fantasy (U)_fanart.jpg</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
<launcher>
<name>snes9x</name>
<application>C:\Games\Emulator\SNES\SNES9X\snes9x.exe</application>
<args></args>
<rompath>smb://tower/Game/Emulator/SNES/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/SNES/ROMS/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/SNES/ROMS/</fanartpath>
<romext>zip</romext>
<platform>Super Nintendo Entertainment System</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Chrono Trigger</name>
<filename>smb://tower/Game/Emulator/SNES/ROMS/Chrono Trigger (U).zip</filename>
<platform>Super Nintendo Entertainment System</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
</launchers>
Edit: I also get an error attempting to scan for new files, as I thought the addon would automatically populate the list of roms when I add a new launcher, but it never does so I need to manually add them - which works fine
Could it be some sort of permissions error? Might be the cause of the ROM not being able to launch, and I can assure you the path is correct as I needed to add this path as a source
ERROR: Error Contents: (123, 'The filename, directory name, or volume label syntax is incorrect', 'smb://tower/Game/Emulator/N64/ROMS/*.*')
http://pastebin.com/QCB8zNSi
- ali2k1 - 2010-12-09
Thank you, did not know I had to add _thumb and _fanart at the end. Would you know the arguments I need for nebula and fba, I'm using windows 7 dharma 4. It just dint load.
- jpreville - 2010-12-09
this is the error i get. on the above code. i started clean on the addon and launchers xml. I'm on Ubuntu 10.04 64 Bit and mame 0.139
Quote:18:12:40 T:140538930702096 M:3515998208 NOTICE: Mode AddOn ON
18:12:40 T:140538930702096 M:3515998208 NOTICE: /home/john/.xbmc/userdata/addon_data/plugin.program.advanced.launcher
18:12:40 T:140538930702096 M:3515998208 NOTICE: -1
18:12:40 T:140538930702096 M:3515998208 NOTICE: Launcher: found 1 launchers
18:12:40 T:140538930702096 M:3515736064 ERROR: dll_fstat64 emulated function failed
18:12:40 T:140538930702096 M:3515736064 WARNING: dll_setvbuf - May not be implemented correctly
18:12:40 T:140538930702096 M:3515854848 ERROR: Error Type: exceptions.OSError
18:12:40 T:140538930702096 M:3515854848 ERROR: Error Contents: (10, 'No child processes')
18:12:40 T:140538930702096 M:3515854848 ERROR: Traceback (most recent call last):
File "/home/john/.xbmc/addons/plugin.program.advanced.launcher/addon.py", line 20, in ?
plugin.Main()
File "/home/john/.xbmc/addons/plugin.program.advanced.launcher/resources/lib/launcher_plugin.py", line 171, in __init__
self._import_roms(launcher)
File "/home/john/.xbmc/addons/plugin.program.advanced.launcher/resources/lib/launcher_plugin.py", line 924, in _import_roms
romname = self._test_mame_name(selectedLauncher["application"],f[:-len(ext)-1])
File "/home/john/.xbmc/addons/plugin.program.advanced.launcher/resources/lib/emulators.py", line 38, in _test_mame_name
page.wait()
File "/usr/lib/xbmc/system/python/python24.zip/subprocess.py", line 1007, in wait
pid, sts = os.waitpid(self.pid, 0)
OSError: (10, 'No child processes')
now if i put the code in the external program.. it sreams through it just fine..
This is Python 2.6.6. Wonder maybe XBMC might be something different... hmm . i'll check
Quote:import os
import re
import subprocess
lsprocess=subprocess.Popen('ls -1 /home/john/.mame/roms/',shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
filenames=lsprocess.stdout.read()
filename=re.findall('(.+?).zip',filenames)
for index1 in range(len(filename)):
print filename[index1]
app='/usr/games/mame'
page = subprocess.Popen(app+' -listfull '+filename[index1], shell=True, stdout=subprocess.PIPE)
page.wait()
stdout_value = page.communicate()[0]
name = re.findall('"(.*?)"', stdout_value)
romname = re.sub(' \(.*?\)', '', name[0])
print name[0]
got rid of xbmc from repository. compiled xbmc with external python support. still error as above.
John
i'll play around with code on that external code i posted...
- Jurai - 2010-12-09
Angelscry Wrote:But... if you do not use quotation, paths with white spaces will not working. No ?
Thats what i'd assume, but it does actually work when tested from command line, I guess they just concat all of the passed arg's into one combined path since the app doesn't take any other commandline input. Weird choice on their part but it is listed as fact on their faq page. Unfortunately the 1.7 beta is still closed access (unless you donate, or 'obtain' it). I guess you could work around it by not passing the quotations if using PJ64, but then you'd also need to detect if you were passing args to 1.6 or 1.7
- Angelscry - 2010-12-09
Eldorado Wrote:Sure, just 4 emulators so far and 1 game in each and each of them throw up some sort of an error, generally due to file not found
thanks!
Code: <?xml version="1.0" encoding="utf-8" standalone="yes"?>
<launchers>
<launcher>
<name>Project64</name>
<application>smb://tower/Game/Emulator/N64/Project64_1.7.0.49/Project64.exe</application>
<args></args>
<rompath>smb://tower/Game/Emulator/N64/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/N64/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/N64/ROMS/</fanartpath>
<romext>z64|v64</romext>
<platform>Nintendo 64</platform>
<thumb>smb://tower/Game/Emulator/N64/Mario Kart 64.jpg</thumb>
<fanart>smb://tower/Game/Emulator/N64/ROMS/</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Mario Kart 64</name>
<filename>smb://tower/Game/Emulator/N64/ROMS/Mario Kart 64 (U) [!].z64</filename>
<platform>Nintendo 64</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
<launcher>
<name>zsnes</name>
<application>C:\Games\Emulator\SNES\ZSNES\zsnesw.exe</application>
<args>-m -s -v 22</args>
<rompath>smb://tower/Game/Emulator/SNES/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/SNES/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/SNES/ROMS/</fanartpath>
<romext>ZIP</romext>
<platform>Super Nintendo Entertainment System</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Super Mario All-Stars</name>
<filename>smb://tower/Game/Emulator/SNES/ROMS/Super Mario All-Stars (U).zip</filename>
<platform>Super Nintendo Entertainment System</platform>
<thumb>smb://tower/Game/Emulator/SNES/Super Mario All-Stars (U).jpg</thumb>
<fanart>smb://tower/Game/Emulator/SNES/ROMS/Super Mario All-Stars (U).zip</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
<launcher>
<name>nestopia</name>
<application>C:\Games\Emulator\NES\Nestopia\nestopia.exe</application>
<args></args>
<rompath>smb://tower/Game/Emulator/NES/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/NES/ROMS/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/NES/ROMS/</fanartpath>
<romext>NES</romext>
<platform>Nintendo Entertainment System</platform>
<thumb>smb://tower/Game/Emulator/NES/ROMS/</thumb>
<fanart>smb://tower/Game/Emulator/NES/ROMS/</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Final Fantasy</name>
<filename>smb://tower/Game/Emulator/NES/ROMS/Final Fantasy (U).nes</filename>
<platform>Nintendo Entertainment System</platform>
<thumb>smb://tower/Game/Emulator/NES/ROMS/Final Fantasy (U)_thumb.jpg</thumb>
<fanart>smb://tower/Game/Emulator/NES/ROMS/Final Fantasy (U)_fanart.jpg</fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
<launcher>
<name>snes9x</name>
<application>C:\Games\Emulator\SNES\SNES9X\snes9x.exe</application>
<args></args>
<rompath>smb://tower/Game/Emulator/SNES/ROMS/</rompath>
<thumbpath>smb://tower/Game/Emulator/SNES/ROMS/</thumbpath>
<fanartpath>smb://tower/Game/Emulator/SNES/ROMS/</fanartpath>
<romext>zip</romext>
<platform>Super Nintendo Entertainment System</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<launcherplot></launcherplot>
<wait>true</wait>
<roms>
<rom>
<name>Chrono Trigger</name>
<filename>smb://tower/Game/Emulator/SNES/ROMS/Chrono Trigger (U).zip</filename>
<platform>Super Nintendo Entertainment System</platform>
<thumb></thumb>
<fanart></fanart>
<genre></genre>
<release></release>
<publisher></publisher>
<gameplot></gameplot>
</rom>
</roms>
</launcher>
</launchers>
Edit: I also get an error attempting to scan for new files, as I thought the addon would automatically populate the list of roms when I add a new launcher, but it never does so I need to manually add them - which works fine
Could it be some sort of permissions error? Might be the cause of the ROM not being able to launch, and I can assure you the path is correct as I needed to add this path as a source
ERROR: Error Contents: (123, 'The filename, directory name, or volume label syntax is incorrect', 'smb://tower/Game/Emulator/N64/ROMS/*.*')
http://pastebin.com/QCB8zNSi I think the problem could be related to your samba server. I did not already try to test the launcher under this king of configuration possibility. But there is something strange with your launcher.
Your launchers path are like this : Code: C:\Games\Emulator\SNES\SNES9X\snes9x.exe
and your roms and images path are like that : Code: smb://tower/Game/Emulator/SNES/ROMS/Chrono Trigger (U).zip
Then you will launch a rom the global command line will be something like that : Code: C:\Games\Emulator\SNES\SNES9X\snes9x.exe -args "smb://tower/Game/Emulator/SNES/ROMS/Chrono Trigger (U).zip"
I'm not sure that you could use 2 different kind of paths into the same command line (C:\### and smb://). The first one is specific to Windows and the second one is specific to Linux and Networks. I'm not sure that Windows emulators can use paths under Linux or Networks format.
If you plan to use XBMC under windows the first thing to do is to map your network drive under windows like this. After this you will be able to access your network drive using a drive letter path like this for example : Code: Z:\\tower\Game/Emulator\SNES\ROMS\Chrono Trigger (U).zip
. Then all your command lines will be homogeneous and I think it will solve your problem.
- Angelscry - 2010-12-09
ali2k1 Wrote:Thank you, did not know I had to add _thumb and _fanart at the end. Would you know the arguments I need for nebula and fba, I'm using windows 7 dharma 4. It just dint load. Nebula did not use argument. The only recognized command line for Nebula is : . So no arguments for the launcher. But, if you want to automatically start Nebula into fullscren you will have to make it through the Nebula GUI or by manually editing the nebula config file. I think it is the solution... but I'm not a Windows user. For FBA I do not know if it support command line. But you could try FBA shuffle which have the command line support
- Angelscry - 2010-12-09
jpreville Wrote:i'll play around with code on that external code i posted... I have also played with yours. I have encounter the same problem as you (only the last name was correctly converted). But this modified code has worked for me :Code: import os
import re
import subprocess
lsprocess=subprocess.Popen('ls -1 /mnt/multimedias/consoles/arcades/roms/',shell=True, stdout=subprocess.PIPE)
filenames=lsprocess.stdout.read()
filename=re.findall('(.+?).zip',filenames)
for index1 in range(len(filename)):
app='/usr/bin/sdlmame'
page = subprocess.Popen(app+' -listfull '+filename[index1], shell=True, stdout=subprocess.PIPE)
print ''.join(re.findall('"(.*?)"', page.communicate()[0].replace('\n', '')))
Code: [gwenael@angelscry_arch Scripts XBMC]$ ./john.py
Alien vs. Predator (Euro 940520)
Dungeons & Dragons: Shadow over Mystara (Euro 960619)
Hyper Street Fighter 2: The Anniversary Edition (USA 040202)
Marvel Super Heroes Vs. Street Fighter (Euro 970625)
Marvel Super Heroes (Euro 951024)
Metal Slug - Super Vehicle-001
Marvel Vs. Capcom: Clash of Super Heroes (Euro 980123)
Street Fighter Alpha 2 (Euro 960229)
Street Fighter Alpha 3 (Euro 980904)
Super Street Fighter II: The New Challengers (World 930911)
X-Men Vs. Street Fighter (Euro 961004)
Could you try it (change paths) and tell me if it is ok for you?
- Angelscry - 2010-12-09
Jurai Wrote:Thats what i'd assume, but it does actually work when tested from command line, I guess they just concat all of the passed arg's into one combined path since the app doesn't take any other commandline input. Weird choice on their part but it is listed as fact on their faq page. Unfortunately the 1.7 beta is still closed access (unless you donate, or 'obtain' it). I guess you could work around it by not passing the quotations if using PJ64, but then you'd also need to detect if you were passing args to 1.6 or 1.7 Yes I think it will be possible to do this. Before starting the game, we make a test on the app name. If it is projec64.exe, then we could make a second test on the project64.exe file size (version 1.6 and 1.7 will not have the same). Then if it is the 1.6 version launch the emulator by not passing the quotation. Else if 1.7, launch the emulator as usual. I will add this to my todo list.
- Eldorado - 2010-12-09
Angelscry Wrote:I think the problem could be related to your samba server. I did not already try to test the launcher under this king of configuration possibility. But there is something strange with your launcher.
Your launchers path are like this : Code: C:\Games\Emulator\SNES\SNES9X\snes9x.exe
and your roms and images path are like that : Code: smb://tower/Game/Emulator/SNES/ROMS/Chrono Trigger (U).zip
Then you will launch a rom the global command line will be something like that : Code: C:\Games\Emulator\SNES\SNES9X\snes9x.exe -args "smb://tower/Game/Emulator/SNES/ROMS/Chrono Trigger (U).zip"
I'm not sure that you could use 2 different kind of paths into the same command line (C:\### and smb://). The first one is specific to Windows and the second one is specific to Linux and Networks. I'm not sure that Windows emulators can use paths under Linux or Networks format.
If you plan to use XBMC under windows the first thing to do is to map your network drive under windows like this. After this you will be able to access your network drive using a drive letter path like this for example : Code: Z:\\tower\Game/Emulator\SNES\ROMS\Chrono Trigger (U).zip
. Then all your command lines will be homogeneous and I think it will solve your problem.
Hmm, crap.. mapping the drives was something I was hoping to stay away from
You are probably right that the SMB path is giving them problems as I normally access those folders in windows as normal network locations eg "\\tower\games\emulator", I'll map the drive and see if that corrects it
But I'm not sure if this also explains the script failing when trying to scan for new files though, as that error in my log is from that action.. as I can add roms manually no problem, just the automatic scan doesn't work.. maybe the "*.*" is not supported? I can map the drive, no issues there, but the fact that it can't query a directory listing from a samba share might be something worth looking into
My movies, tv shows etc are all setup like this without any problems, no drives are mapped just accessed via samba
ps. I am using an UnRaid server to store all my media, it is linux based as you said
- Angelscry - 2010-12-09
Eldorado Wrote:But I'm not sure if this also explains the script failing when trying to scan for new files though, as that error in my log is from that action.. as I can add roms manually no problem, just the automatic scan doesn't work.. maybe the "*.*" is not supported? I will try to look at this part. I have to check if the os.listdir() function is working with samba server. If not, I will have to found an alternative.
- Angelscry - 2010-12-09
last updates :- new version of the repository addon (v.1.2.0). You need to use this new one if you want to stay updated
- new version of the Advanced Launcher (v.0.7.5). Change log on the first post of this topic.
- Robert de Clair - 2010-12-09
removing standalone launchers doesnt make a change
i still cannot enter into launcher (main/root screen) if i change google as screen thumb source
theres log and cfg files. im using portable version dharma rc2 and latest ALA from your repo.
thank you for great plugin.
http://www.mediafire.com/?78c584577w055
|