GTK/X11 Port (aka Linux/UNIX GUI)

This is for people involved in the developement of Snes9x, or SNES emulators in general.
BUG REPORTS BELONG IN TECH SUPPORT/BUG TRACKING!
Post Reply
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

Ok, I now have working packages for Ubuntu Gutsy 32 bit and 64 bit. Shortly I will be making PPC packages available as well. Would you like to upload this? I will be happy to host them if you would just put links to them on this post.

Thanks
RemmyLee
Snes9x White Belt
Posts: 2
Joined: Wed Feb 20, 2008 12:44 am

Post by RemmyLee »

I seem to be having a problem with OpenGL as well. Everything is compiling beautifully, but all the options on the OpenGL tab are grayed out. I've configured it with OpenGL support.
User avatar
BearOso
Official GTK/Linux Porter/Dev
Posts: 460
Joined: Tue Oct 02, 2007 12:50 am

Post by BearOso »

stevejesus wrote:Ok, I now have working packages for Ubuntu Gutsy 32 bit and 64 bit. Shortly I will be making PPC packages available as well. Would you like to upload this? I will be happy to host them if you would just put links to them on this post.

Thanks
I don't personally have enough space to provide any more than I do. I would be glad to put up links to any packages you decided to host, however.
RemmyLee wrote:I seem to be having a problem with OpenGL as well. Everything is compiling beautifully, but all the options on the OpenGL tab are grayed out. I've configured it with OpenGL support.
You should check the "version info" tab to see if OpenGL support actually was compiled in. The only code to disable all the OpenGL options is in a non-opengl configuration.
deniseweird
Snes9x White Belt
Posts: 41
Joined: Wed Feb 20, 2008 9:38 am

Post by deniseweird »

Thank you so much for making this!! :D Finally we have a true port with an integrated GUI for Snes9x. There are some things I would like to get fixed though. The switching to fullscreen when using a different resolution wasn't so smooth for me, and when switching back, the whole system froze completely and I had to hard reset. Maybe it's already fixed, it happened in version 14. Another thing was when I temporarily didn't have OpenGL. As far as I know, OpenGL rendering is optional, but the emulator wouldn't start when I didn't have it available (I don't remember the exact error message but I know lack of OpenGL was the cause for not starting.). If the emulator could just disable OpenGL rendering while OpenGL is not available, would be great.

My OS (If it matters) is Ubuntu Hardy 8.04.
RemmyLee
Snes9x White Belt
Posts: 2
Joined: Wed Feb 20, 2008 12:44 am

Post by RemmyLee »

Well, I grabbed the source again, recompiled and it's working beautifully now. Thanks for taking the time to do this. It's really nice to see some activity of any kind for us Unix derivative...ers. :D
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

Your problem may just be that you are running this on Hardy. Hardy has another 1-1/2 to 2 months before it is released, and I believe it is still in alpha???
Try running this on a stable OS, like Gutsy, or Dapper.
deniseweird
Snes9x White Belt
Posts: 41
Joined: Wed Feb 20, 2008 9:38 am

Post by deniseweird »

It may be. But I haven't gotten much problem with Hardy otherwise, it's pretty stable, even though it's Alpha. But you, who are using a stable system, can't confirm this problem?
User avatar
BearOso
Official GTK/Linux Porter/Dev
Posts: 460
Joined: Tue Oct 02, 2007 12:50 am

Post by BearOso »

deniseweird wrote:Thank you so much for making this!! :D Finally we have a true port with an integrated GUI for Snes9x. There are some things I would like to get fixed though. The switching to fullscreen when using a different resolution wasn't so smooth for me, and when switching back, the whole system froze completely and I had to hard reset. Maybe it's already fixed, it happened in version 14. Another thing was when I temporarily didn't have OpenGL. As far as I know, OpenGL rendering is optional, but the emulator wouldn't start when I didn't have it available (I don't remember the exact error message but I know lack of OpenGL was the cause for not starting.). If the emulator could just disable OpenGL rendering while OpenGL is not available, would be great.

My OS (If it matters) is Ubuntu Hardy 8.04.
The prebuilt binary uses gtkglext. If it's compiled with gtkglext, it'll need the required libraries. This is how linking works, unfortunately. I noticed a couple other spots that could be the issue, and they'll be fixed in the next release.

I'm aware of the "system freeze" issue. It doesn't actually freeze for me, but it that seems some element of the GNOME desktop has an issue when it's resized back to normal size that causes it to take a large amount of time. If it completely freezes, however, that bumps up the priority on my bug list.
User avatar
BearOso
Official GTK/Linux Porter/Dev
Posts: 460
Joined: Tue Oct 02, 2007 12:50 am

Post by BearOso »

A new version is up. This should fix the OpenGL requirements. I changed how changing the fullscreen mode works slightly. It appears the stall bug deniseweird describes is primarily in the OpenGL driver. I've tried to make it unlikely, or at least not freeze the X display completely if it happens. Feedback on the issue is welcome.

I'll be working to get an Xv driver into this sooner or later as an alternative hardware scaler to OpenGL.
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

I am sure that I am the only person who might be interested in this, but, can you add a "TV" mode or some sort of NTSC simulator like what can be found in ZSNES? I have only seen the NTSC filter in the Windows version... not sure why I don't see it in the Linux version, but, would this at all be possible?
User avatar
BearOso
Official GTK/Linux Porter/Dev
Posts: 460
Joined: Tue Oct 02, 2007 12:50 am

Post by BearOso »

stevejesus wrote:I am sure that I am the only person who might be interested in this, but, can you add a "TV" mode or some sort of NTSC simulator like what can be found in ZSNES? I have only seen the NTSC filter in the Windows version... not sure why I don't see it in the Linux version, but, would this at all be possible?
Sure, I'll look at how the Windows version does it, then get something in the next release.
Screwtape
Snes9x White Belt
Posts: 49
Joined: Thu May 26, 2005 12:59 pm

Post by Screwtape »

BearOso wrote:
stevejesus wrote:I am sure that I am the only person who might be interested in this, but, can you add a "TV" mode or some sort of NTSC simulator like what can be found in ZSNES? I have only seen the NTSC filter in the Windows version... not sure why I don't see it in the Linux version, but, would this at all be possible?
Sure, I'll look at how the Windows version does it, then get something in the next release.
Blargg's snes_ntsc, I'll bet.
deniseweird
Snes9x White Belt
Posts: 41
Joined: Wed Feb 20, 2008 9:38 am

Post by deniseweird »

BearOso wrote:A new version is up. This should fix the OpenGL requirements. I changed how changing the fullscreen mode works slightly. It appears the stall bug deniseweird describes is primarily in the OpenGL driver. I've tried to make it unlikely, or at least not freeze the X display completely if it happens. Feedback on the issue is welcome.

I'll be working to get an Xv driver into this sooner or later as an alternative hardware scaler to OpenGL.
The fullscreen issue seems to have improved. The game doesn't freeze up the computer. But it's not very smooth still. I don't know much about the advantages or disadvantages of Xv, but it's good indeed that we get alternativs :) And the OpenGL requirement when starting the emulator was fixed, thanks :D

EDIT: Sorry, my computer was slow for some reason at the time of testing. I tried again, and the switching is not so bad.
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

Screwtape wrote: Blargg's snes_ntsc, I'll bet.
Yes... this is the exact library I was talking about. I love it.
Bear0so, this would be excellent if this were an option.

Also, are you at all interested in taking this a little further? Your front-end is amazing. I believe it to be the most well-designed and easy to use interfaces I've used. I think it would be increbible if I could use something this easy with other emulators, like FCEU or GENS or ANYTHING. I still haven't gotten the performance I want out of SNES9X so I still use ZSNES, but I am still hopeful.
deniseweird
Snes9x White Belt
Posts: 41
Joined: Wed Feb 20, 2008 9:38 am

Post by deniseweird »

I was about to say this exact thing. Atleast Gens would REALLY need this. There are already people picking up the sources of both PCSX, VBA and mupen64 and improving it now. But not Gens. There was a developer that picked up Gens once but he gave it up soon after. I fully understand if this is not feasible for you, I could never do this myself, but I would be very happy if it was possible. :D
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

Or if you made a generic frontend for the most popular emulators, all in one interface. I think if you did, EVERY gnome user would use it... It would be the de facto app for classic gaming in the GNOME environment.

I'll give you money... That doesn't mean that I have much to give, but I would donate to make something like that a reality.
deniseweird
Snes9x White Belt
Posts: 41
Joined: Wed Feb 20, 2008 9:38 am

Post by deniseweird »

Or if you would make it in Qt instead, you would make us KDE users even more happy :D
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

KDE users already have a multiple emulator frontend.

http://kemulator.sourceforge.net/
User avatar
stevejesus
Snes9x White Belt
Posts: 24
Joined: Fri Feb 08, 2008 2:56 pm
Location: Indianapolis IN

Post by stevejesus »

Also, it acts as a frontend for SNES9x. Maybe thats what you should try, that way you won't have to load any Gtk libraries to play! :)
spsuaiken
Snes9x White Belt
Posts: 3
Joined: Fri Feb 22, 2008 1:21 pm

Does not compile in Debian 4.0r3 (etch)

Post by spsuaiken »

Using snes9x-1.51-src.tar.bz2
Patched with snes9x-1.51-src-gtk-delta-18.tar.bz2

Configures with the following.

./configure --with-gtk --with-opengl --with-netplay --with-joystick --with-sound --without-dreamcast

features:
new colour blender.. yes
sound support....... yes
display system...... GTK with OpenGL
joystick support.... yes
netplay support..... yes
SDD1 decompression.. yes
JMA decompression... yes
debugger............ no
DGA, vidmode........ no (No DGA extension)
Gz.................. yes
using asm cores..... yes
using ZSNES C4 core. yes
using ZSNES SuperFX yes

"make" stops with the following errors:

gtk/gtk_s9xwindow.cpp:507: error: variable or field
Post Reply