Kodi Community Forum
[RELEASE] Rom Collection Browser - Browse and launch emulator game ROMs - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Support (https://forum.kodi.tv/forumdisplay.php?fid=33)
+--- Forum: Add-on Support (https://forum.kodi.tv/forumdisplay.php?fid=27)
+---- Forum: Game Add-ons (https://forum.kodi.tv/forumdisplay.php?fid=291)
+---- Thread: [RELEASE] Rom Collection Browser - Browse and launch emulator game ROMs (/showthread.php?tid=70115)



- rausch101 - 2010-08-03

Great to see this script really coming along. I finally got my new HTPC set up so I'll give this a try tonight.

I see that you currently have no plans to integrate a Games scraper into the script, so do you have any recommendations for gathering all of the ROM data? Is there a scraper or prepared package I've missed somewhere in this thread?

Also, I see that you are preparing for the Dharma release which is great news. I'm not sure if you're planning to submit to the official Repo, but I'm sure you'd get a lot more attention and feedback if you did.

This might be a little too ambitious, but if you ever feel like going the fully-integrated XBMC route, there's still the occasional development going on in the Games Library Branch


- pseudoheld - 2010-08-03

has someone got this to work with dharma release? would be great!!


- bmfrosty - 2010-08-03

Code:
08:25:51 T:3079145344 M:1343586304   DEBUG: LIRC: Update - NEW at 749225:000000037ff07bdd 00 OK mceusb (OK)
08:25:51 T:3079145344 M:1343586304   DEBUG: OnKey: 11 pressed, action is Select
08:25:51 T:2932865904 M:1343586304  NOTICE: RCB_INFO: Begin launchEmu
08:25:51 T:2932865904 M:1343586304  NOTICE: RCB_INFO: launching game with id: 9
08:25:51 T:2932865904 M:1343586304  NOTICE: RCB_INFO: Begin helper.launchEmu
08:25:51 T:2932865904 M:1343586304  NOTICE: RCB_INFO: cmd: /usr/bin/zsnes -ad sdl -m /home/bmfrosty/Testdata V0.5/Collection V3/Roms/Super Mario Kart.smc
08:25:51 T:3079145344 M:1343586304   DEBUG: HttpApi Start command: Action  paras: Action; 199
08:25:51 T:3079145344 M:1343598592   ERROR: GLX: Same window as before, refreshing context
08:25:51 T:3079145344 M:1343598592    INFO: GL: Maximum texture width: 8192
08:25:52 T:3079145344 M:1343963136   DEBUG: HttpApi Start command: Action  paras: Action; 199
08:25:52 T:3079145344 M:1343963136   ERROR: GLX: Same window as before, refreshing context
08:25:52 T:3079145344 M:1343963136    INFO: GL: Maximum texture width: 8192
08:25:52 T:2932865904 M:1343963136  NOTICE: RCB_INFO: End helper.launchEmu
08:25:52 T:2932865904 M:1343963136  NOTICE: RCB_INFO: End launchEmu

Here's what helper.py looks like in the specified section now:

Code:
gdb.commit()^M
                ^M
                util.log("cmd: " +cmd, util.LOG_LEVEL_INFO)^M
                #this minimizes xbmc some apps seems to need it
                xbmc.executehttpapi("Action(199)")
                os.system(cmd)
                #this brings xbmc back
                xbmc.executehttpapi("Action(199)")
                ^M
                util.log("End helper.launchEmu", util.LOG_LEVEL_INFO)^M
                ^M
                ^M

Running late for work working on this. Will try for a bit more later.

In 0.5.3 still need to populate the 720p directory for it to work here.

EDIT: At this point it changes resolution twice, but doesn't start zsnes. I can't wait to get this working.


- malte - 2010-08-03

rausch101 Wrote:I see that you currently have no plans to integrate a Games scraper into the script, so do you have any recommendations for gathering all of the ROM data? Is there a scraper or prepared package I've missed somewhere in this thread?

I want to have a look on scraping in one of the next releases. But there are a lot of things on my list right now so I can't imagine when this will be done. I think about adding support for this project: http://forum.xbmc.org/showthread.php?tid=75344. It is in an early stage so the benefit may be small at the beginning.


Quote:Also, I see that you are preparing for the Dharma release which is great news. I'm not sure if you're planning to submit to the official Repo, but I'm sure you'd get a lot more attention and feedback if you did.

Already done. Version 0.5.3 is available via XBMCs addon browser now.

pseudoheld Wrote:has someone got this to work with dharma release? would be great!!

I have it running on Windows 7. bmfrosty is trying to get this done with XBMC Live. But until now he had no luck with the complete workflow. If anyone else has tried this on Linux (especially XBMC Live) please report here.


bmfrosty Wrote:Running late for work working on this. Will try for a bit more later.

In 0.5.3 still need to populate the 720p directory for it to work here.

EDIT: At this point it changes resolution twice, but doesn't start zsnes. I can't wait to get this working.

Oh my. I hope you don't risk your job with this.

The command that is invoked does not look right:
Code:
/usr/bin/zsnes -ad sdl -m /home/bmfrosty/Testdata V0.5/Collection V3/Roms/Super Mario Kart.smc

There should be "" around the rom file name because it contains whitespaces.

How does your emuCmd in config.xml look like? It should be like this (with "" around %ROM%):

Code:
/usr/bin/zsnes -ad sdl -m "%ROM%"



EDIT:

@rausch101: I have seen this Game Library thread and started working on my script as there was nobody on this topic anymore and I felt that it would be much easier (for me) to do this as a script than learning C++. I hope somebody will continue this approach and maybe takes some thoughts out of my work. I am willing to help if this happens but I don't think that I will contribute as a developer.


- bmfrosty - 2010-08-03

malte Wrote:How does your emuCmd in config.xml look like? It should be like this (with "" around %ROM%):

Code:
/usr/bin/zsnes -ad sdl -m "%ROM%"

I'm pretty sure it looks like that. I'll recheck it tonight when I get home.


- bmfrosty - 2010-08-04

Ok. I was missing the "'s around %ROM%. I can now launch a rom while backgrounding XBMC, but XBMC still seems to be accepting input, and I don't get any sound out, but I'm getting somewhere. Interesting.


- malte - 2010-08-04

We are moving forward. Do you still have the code changes applied that you tried earlier (minimizing and maximizing XBMC)?


- Flomaster - 2010-08-04

can some one PM me about finding Nintendo ROMS and Emulator for XBMC-LIVE

-=Jason=-


- malte - 2010-08-04

Please don't ask questions about getting roms in this thread.

A good emulator on linux may be zsnes or mednafen. A good thread about getting emulators to work on XBMC live seems to be this one: http://forum.xbmc.org/showthread.php?tid=73428. It is more related to the launcher script but the basics (setting up emulators) can be used with my script, too.


- bmfrosty - 2010-08-04

malte Wrote:We are moving forward. Do you still have the code changes applied that you tried earlier (minimizing and maximizing XBMC)?

Lemme check.

Code:
gdb.commit()

                util.log("cmd: " +cmd, util.LOG_LEVEL_INFO)
                #this minimizes xbmc some apps seems to need it
                xbmc.executehttpapi("Action(199)")
                os.system(cmd)
                #this brings xbmc back
                xbmc.executehttpapi("Action(199)")

                util.log("End helper.launchEmu", util.LOG_LEVEL_INFO)

Yes. Still looks like that.

So at this point, I'm successfully launching the game, but I'm not using applauncher (appears that killing xbmc kills the script and X does it's thing and restarts the window manager - which just happens to be xbmc). I don't get any sound (I've tried sdl, alsa, and pulse). My button presses still seem to be affect XBMC even though it's in the background. I'm going to try and inject xfce in the middle, I think. That will be this weekend. I think it may be enough to make this all work.


- Flomaster - 2010-08-05

malte Wrote:Please don't ask questions about getting roms in this thread.

A good emulator on linux may be zsnes or mednafen. A good thread about getting emulators to work on XBMC live seems to be this one: http://forum.xbmc.org/showthread.php?tid=73428. It is more related to the launcher script but the basics (setting up emulators) can be used with my script, too.

thanks I'd love to get this working its a catch 22.... mums the word on emulators I suppose.

-=jason=-


- bmfrosty - 2010-08-05

Flomaster Wrote:thanks I'd love to get this working its a catch 22.... mums the word on emulators I suppose.

-=jason=-

There are no issues in regards to talking about emulators. There are just issues about discussing piracy.


- malte - 2010-08-05

bmfrosty Wrote:Yes. Still looks like that.
...
I don't get any sound (I've tried sdl, alsa, and pulse). My button presses still seem to be affect XBMC even though it's in the background. I'm going to try and inject xfce in the middle, I think.

But does XBMC minimize and later maximize with this code? People in the thread that I linked above had the same problem with the input but they could solve it with this "xbmc.executehttpapi("Action(199)")". I am not sure if this code still works with Dharma.

About your sound problems: In the first post of the above thread they say something about sound problems with zsnes and have a work around. Maybe it will work for you, too.


Yes, injecting xfce should work.

At least with Camelot there have been users that got this running on Live without the need to do this, but maybe things have changed with Dharma. I started to setup a Camelot and Dharma Live environment with VirtualBox but it is running very slow so I am not sure I will be able to reproduce these issuesSmile


- waverz - 2010-08-05

Hoping this hasn't been already asked but I have my ROMs stored on a separate Windows box. I tried changing the "PathToTestData" instances to what I thought was the absolute path like "SMB://PCNAME/directoryname" and just "//pcname/directoryname" but i get errors when i try to import the settings.

It seems to work if I put my roms on my XBMC box, either I am not typing the wrong path name or this won't work from a remote machine.

I think I have the path name setup correctly but I could be wrong.


- wimpy - 2010-08-05

waverz Wrote:Hoping this hasn't been already asked but I have my ROMs stored on a separate Windows box. I tried changing the "PathToTestData" instances to what I thought was the absolute path like "SMB://PCNAME/directoryname" and just "//pcname/directoryname" but i get errors when i try to import the settings.

It seems to work if I put my roms on my XBMC box, either I am not typing the wrong path name or this won't work from a remote machine.

I think I have the path name setup correctly but I could be wrong.

One way to get around this is to map the network drive (if windows) or mount the path (linux).

Windows.. for example map R:\ to //PCNAME/SHARENAME which will let you use R:\ROMS\ in the config

Linux.. can't remember exactly, but mount //PCNAME/SHARENAME to for example /mount/romsnetworkshare which will let you use /mount/romsnetworkshare/ instead of the path.

If this however is run on the XBOX, i don't have that much tips as there are no mapping/mounting options so you will be stuck with having to supply the //pcname/share/blabla path in the config.

hope this helps!