Bug 139347 - Snes9X 1.5.1 bump
|
Bug#:
139347
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: enhancement
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: games@gentoo.org
|
Reported By: zakk@timedoctor.org
|
|
Component: Games
|
|
|
URL:
http://www.snes9x.com/news.asp
|
|
Summary: Snes9X 1.5.1 bump
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2006-07-05 11:13 0000
|
New version of snes9x out, 1.5 also includes "Add support for saner directory
structures under Unix " which may be useful.
this is also supposed to work natively under amd64, finally bringing a good
snes emulator to amd64.
attaching a nice, working ebuild would speed this along...
wonder if anyone tested this shit before "releasing" ... fails to build in a
few places due to structure changes
Sorry in advance for the long message (and doubly sorry if 4 attachments and
the comment resulted in 5 emails to everyone).
I have an ebuild, and I think it should definitely be attached to this bug for
gentooers who want snes9x-1.5, but putting 1.5 in portage might be premature.
Basically only the X11 target works in this version.
svga, opengl, and ggi are confirmed broken
(http://snes9x.com/phpbb2/viewtopic.php?t=2890) and I can tell that glide is
too. Most will build but not work quite right when 1.51 comes out.
Of these, we supported the opengl target (but no others).
I'm still contributing an ebuild --- for my purposes 1.50 is still a huge
improvement! --- which survived some playtesting on my laptop. (~x86,
USE="joystick opengl zlib -debug -dga"; I also tested a build without the asm
cores in lieu of trying on non-x86 architectures.)
Patches which are still relevant have been updated.
The build errors are fixed by new sed commands in the ebuild: one fixes an
obvious screwup in offsets.cpp; the other *partially* fixes the opengl version:
it builds and runs (quickly), but has obvious graphics glitches.
In case anyone else spotted a "snes9x-1.5-linkage.patch" on the openSUSE
mailing list
(http://lists.opensuse.org/archive/opensuse-commit/2006-Jul/0322.html), it's
irrelevant. (The only occurrence of dspemu2.c is a #include into a .cpp file...
WTF)
So for now the ebuild has a warning about osnes9x and is tagged as ~x86. It's
supposed to run on at least ppc and amd64, but I can't test those.
sorry, should have posted my patches earlier
Working on PPC for me but I get the same error with osnes9x as I got with
version 1.43.
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 1 (X_CreateWindow)
Serial number of failed request: 23
Current serial number in output stream: 24
Debian tackled that problem at
http://lists.debian.org/debian-user/2002/07/msg03370.html but when I tried to
apply their patch to 1.43, it still didn't work. But then I am trying to run it
on pretty old hardware, an ATI Rage IIc using the mach64 driver.
The opengl version doesn't work at all for me so that's why I haven't added
this yet.
Thanks for the update. "It doesn't work" is a fair reason. =)
Only time I'd expect the GL stuff to fail outright is if you can't supply a
visual with 16 bpp, doublebuffering, and either truecolor or directcolor.
(Reporter from the other thread could, and anyone who can run 1.43 with GL can
too.)
Can't reproduce any error myself, only minor (temporary) graphics glitches.
Maybe 1.51 will add upstream GL support some time soon. It sounded likely 2
months ago... *shrug*
*** Bug 158248 has been marked as a duplicate of this bug. ***
Created an attachment (id=104167) [details]
snes9x-1.50-opengl.patch
This allows OpenGL to build. It's a patch I made essentially based on, what my
friend told me, Arch Linux uses (Didn't look at it).
I get the Badwindow thing with OpenGL though, so someone else might want to
try.
Thanks.
Created an attachment (id=104168) [details]
snes9x-1.50-opengl.patch
This allows OpenGL to build. It's a patch I made essentially based on, what my
friend told me, Arch Linux uses (Didn't look at it).
I get the Badwindow thing with OpenGL though, so someone else might want to
try.
Thanks.
If you unwind the way everything's defined, you'll see that the ebuild I posted
has a sed line with the same effect. (Well, unless the extra pair of
parentheses from the patch stops a compiler warning during build.)
Regardless of which solution you like, the patch and the ebuild as posted won't
work together.
Your ability to reproduce the badwindow bug, if anything, sounds like a reason
you're in a unique position to help fix it! =)
kyle@beast ~ $ osnes9x Super\ Ghouls\ \'N\ Ghosts\ \(E\).zip
Controller Port 1: Pad 1
Controller Port 2: <none>
Rate: 22050, Buffer size: 1024, 16-bit: yes, Stereo: no, Encoded: no
Using ROM Super Ghouls and Ghosts (E).smc in Super Ghouls 'N Ghosts (E).zip
Found ROM file header (and ignored it).
"SUPER GHOULS'N GHOSTS" [checksum ok] LoROM, 8Mbits, Type: ROM only, Mode: 20,
TV: PAL, S-RAM: 0KB, ROMId: Company: 01 CRC32: A00BC05E
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 1 (X_CreateWindow)
Serial number of failed request: 22
Current serial number in output stream: 24
I really don't have the time to work on it myself; if you want information from
me, then feel free to ask.
Created an attachment (id=117159) [details]
snes9x-1.50-r1.ebuild
slight alteration for building under ppc64
I've tested this on the PS3 (64bit) seems to work okay (not sure about 32bit
ppc)
Looking at the Makefile, offset isn't always built for every arch
I have an ebuild "ready" modulo testing. If others don't mind (i.e. aren't
already at that point themselves) I'd like to claim this. Ebuild should be
ready by this afternoon, except maybe with a temporary SRC_URI.
Thanks. =)
This is undoubtedly a higher-quality release than 1.5 was.
The current ebuild worked with "+dga +debug +joystick +netplay +zlib", "-dga
-debug +joystick -netplay +zlib" (my default settings), and with all flags
turned off plus a "without-assembler" stuck into the configure flags.
The netplay USE flag is new. I'm unable to test it now and would appreciate
some help seeing whether it works. (Shouldn't be too much of a chore =)
The opengl build is now giving me the same problem mentioned in comment #12.
Now that I can reproduce I'll try to figure out what the hell is going on.
Thanks to anyone who tests or helps out. If opengl can be fixed and the SRC_URI
can be finalized this bump might happen.
Just a couple of things I've spotted for the ppc64 arch on the PS3
1. for 1.50 distcc needs to be disabled, for 1.51 not a problem
2. when I tried 1.51 on the PS3 the sound was fairly crappy
1.50 is okay no problems
1.51 has problems with the sound output
it mentions in the changes file
"- Unix: Sound now defaults to 32KHz, Stereo, Interpolation
so Snes9x finally sounds like a real SNES by default. (Nach)"
I suspect this could be the problem but I've not found a way to override it in
the configuration that actually makes a difference
it could be something just unique to the PS3 I'm not sure (it could have an
issue with sound being output at odd frequencies)
Opengl build w/1.51 doesn't work for me either, giving the same error message
as the others who commented here. #29: -r 6 or -r 7 on the command-line should
work for you.
Oh, sorry for not mentioning this earlier. I sent patches upstream to fix
opengl.
http://www.snes9x.com/phpbb2/viewtopic.php?t=3450
The first patch posted by me ("brickroad") is for opengl. The second one should
help if you experience crashes in the x11 (not opengl) build while resizing the
game window.
The end result has been working very well for me, as a matter of fact.
Thanks, but your patches aren't applying for me. Perhaps because the forum code
is putting a space after each line? In any case, would you mind attaching them
here? I also rewrote the ebuild; once I'm able to test with your patches I'll
post it here.
Created an attachment (id=125055) [details]
snes9x-1.51.ebuild
[1/3]
New 1.51 ebuild incorporating patches from that forum thread. Kai, please feel
free to obsolete this if your rewrite is better. (I'm dropping -porting.patch
; I didn't realize it was just meant for x86-64.)
I got it successfully working on amd64-no-multilib.
So "amd64? ( app-emulation/emul-linux-x86-xlibs )" can be removed from DEPEND
and package itself can also be removed from amd64 multilib mask.
What did you have to do to get it to work on amd64 no-multilib?
(In reply to comment #37)
> What did you have to do to get it to work on amd64 no-multilib?
I added "games-emulation/snes9x" to package unmask, removed the
"app-emulation/emul-linux-x86-xlibs" dep and just emerged snes9x (1.51)
I also played Final Fantasy III a bit ;)
----
plaes@sol ~ $ emerge --info
Portage 2.1.3.9 (default-linux/amd64/2007.0/no-multilib, gcc-4.2.0,
glibc-2.6.1-r0, 2.6.22-gentoo-r6 x86_64)
=================================================================
System uname: 2.6.22-gentoo-r6 x86_64 Intel(R) Core(TM)2 CPU 6320 @ 1.86GHz
Timestamp of tree: Sat, 22 Sep 2007 09:00:01 +0000
ccache version 2.4 [enabled]
app-shells/bash: 3.2_p17-r1
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python: 2.4.4-r5, 2.5.1-r2
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache: 2.4-r7
sys-apps/baselayout: 1.12.10-r4
sys-apps/sandbox: 1.2.18.1
sys-devel/autoconf: 2.13, 2.61-r1
sys-devel/automake: 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.18
sys-devel/gcc-config: 1.4.0-r2
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.22-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -ggdb -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf
/etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/
/etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo
/etc/udev/rules.d"
CXXFLAGS="-march=nocona -ggdb -O2 -pipe"
DISTDIR="/home/tmp/distfiles"
FEATURES="ccache distlocks metadata-transfer parallel-fetch sandbox sfperms
splitdebug strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="et_EE.UTF-8"
LDFLAGS="-Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/home/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/gnome-experimental
/usr/portage/local/layman/sunrise /usr/portage/local/layman/java-overlay
/home/plaes/code/gentoo/local /home/plaes/code/gentoo/mozilla
/home/plaes/code/gentoo/gnome /home/plaes/code/gentoo/jabber"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 amr apache2 avahi berkdb bitmap-fonts blas
bluetooth bogofilter boo branding bzip2 cairo cdr cli cracklib crypt cups curl
daap dbus dga djvu dri dvd dvdnav dvdr dvdread eds enblend encode exif ffmpeg
flac fortran galago gcj gd gdbm gif gimp ginac glitz gnome gstreamer gtk hal
hdri iconv ipv6 isdnlog java jpeg kdrive keyring lapack lcms libnotify mad midi
mmx mmxext mp2 mp3 mpeg msn mudflap music ncurses network-cron nls nptl
nptlonly nsplugin ogg openexr opengl openmp pam pcre pdf perl plotutils png
postscript pppd python quicktime readline reflection ruby sasl sdl session sift
smp speex spl sse sse2 ssl startup-notification svg tcpd theora tiff tracker
truetype truetype-fonts type1-fonts unicode vorbis xcb xinerama xml xorg xv
xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci
emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m
maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev"
KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001
mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="i810"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Just wanted to say that I have tested the latest 1.51 ebuild in this bug and it
works very well on x86.
Portage 2.1.3.19 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.6.1-r0,
2.6.22-rbl-r9 i686)
=================================================================
System uname: 2.6.22-rbl-r9 i686 Intel(R) Pentium(R) M processor 1.60GHz
Timestamp of tree: Fri, 30 Nov 2007 02:00:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[enabled]
ccache version 2.4 [enabled]
app-shells/bash: 3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python: 2.4.4-r6
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache: 2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox: 1.2.18.1-r2
sys-devel/autoconf: 2.13, 2.61-r1
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.18-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.22-r2
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -mtune=pentium-m -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild
/etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-Os -mtune=pentium-m -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache collision-protect distcc distlocks fixpackages
metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans
userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://morpheus.sathome/gentoo/
http://mirror.switch.ch/mirror/gentoo/
http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/
http://distfiles.gentoo.org/
http://distro.ibiblio.org/pub/linux/distributions/gentoo/"
LANG="en_US.utf8"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/local/portage"
SYNC="rsync://morpheus.sathome/gentoo-portage"
USE="X a52 aac acl acpi akode alsa arts audiofile avahi bash-completion berkdb
bitmap-fonts bluetooth bzip2 cairo caps cdb cddb cdparanoia cli cracklib crypt
cups curl dbus dga divx4linux dri dv dvd dvdread dvi encode expat fam ffmpeg
firefox flac ftp gd gdbm gif gimp gmp gpg gpm gstreamer gtk gtk2 guile hal
iconv id3 idn ieee1394 imagemagick imap imlib isdnlog java jbig jikes joystick
jpeg jpeg2k junit jython kde kdehiddenvisibility lame latex lcms logrotate lzo
mad maildir mbox midi mikmod mmap mmx mmx2 mng motif mp3 mp4 mpeg mplayer
mudflap ncurses nfs nls nntp nptl nptlonly nsplugin ogg openexr opengl openmp
openssl oss pam pcmcia pcre pda pdf perl plotutils png pppd pthreads python qt
qt3 qt4 quicktime readline real reflection rle rtc samba sasl scanner sdl
session slang snmp speex spell spl sqlite sqlite3 sse sse2 ssl subversion svg
tcl tcltk tcpd tetex theora threads tiff tk truetype truetype-fonts type1-fonts
unicode usb utempter v4l v4l2 vim-syntax vorbis wifi win32codecs wmf wxwindows
x264 x86 xattr xcomposite xine xml xorg xosd xprint xscreensaver xv xvid
zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106
cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0
intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias
authn_anon authn_dbm authn_default authn_file authz_dbm authz_default
authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs
dav_lock deflate dir disk_cache env expires ext_filter file_cache filter
headers include info log_config logio mem_cache mime mime_magic negotiation
rewrite setenvif speling status unique_id userdir usertrack vhost_alias"
ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad
cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU"
VIDEO_CARDS="fbdev fglrx radeon vesa"
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS,
LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
ok, it's in there. Thanks for the patches.