ubuntuusers.de

ZSNES stürzt bei Auswahl einer ROM ab

Status: Gelöst | Ubuntu-Version: Ubuntu 13.04 (Raring Ringtail)
Antworten |

Meta-Troopa

Avatar von Meta-Troopa

Anmeldungsdatum:
28. April 2013

Beiträge: 78

Wohnort: Northrain Vestfahlen,Tohrtmunt

Hallo, Forenmitglieder,

Der Emulator ZSNES (Falls es wichtig ist,aus den offiziellen Paketquellen geholt) stürzt bei jeder Auswahl eines Spiels ab. Nach der Auswahl einer ROM friert das Programm ein,und endet so circa 6 Sekunden später mit einer Fehlermeldung. (Ich konnte leider nicht das ganze mit aufnehmen)

Ungültiges Makro

Dieses Makro ist nicht verfügbar

ZSNES_Fehler.png (48.9 KiB)
Fehlermeldung,die auftaucht.
Download ZSNES_Fehler.png

march Team-Icon

Avatar von march

Anmeldungsdatum:
12. Juni 2005

Beiträge: 17368

Wohnort: /home/noise

Willkommen im Forum. ☺

Starte das Programm einmal aus dem Terminal heraus mit zsnes und poste die Ausgabe hier im Forum. Bitte verwende hierzu Codeblöcke.

Ich verschiebe den Thread einmal in den richtigen Bereich.

Meta-Troopa

(Themenstarter)
Avatar von Meta-Troopa

Anmeldungsdatum:
28. April 2013

Beiträge: 78

Wohnort: Northrain Vestfahlen,Tohrtmunt

Alles klar. (buffer overflow?Wieso sollte das denn bei so einem Programm vorkommen?)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
*** buffer overflow detected ***: zsnes terminated
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(__fortify_fail+0x63)[0xf736fbc3]
/lib/i386-linux-gnu/libc.so.6(+0x10593a)[0xf736e93a]
zsnes[0x807e5a5]
zsnes[0x8103133]
======= Memory map: ========
08048000-0831c000 r-xp 00000000 08:07 673169                             /usr/bin/zsnes
0831c000-0831d000 r--p 002d3000 08:07 673169                             /usr/bin/zsnes
0831d000-0835c000 rw-p 002d4000 08:07 673169                             /usr/bin/zsnes
0835c000-08911000 rw-p 00000000 00:00 0 
09bfb000-09d77000 rw-p 00000000 00:00 0                                  [heap]
efdb5000-effff000 rw-p 00000000 00:00 0 
effff000-f0000000 ---p 00000000 00:00 0 
f0000000-f0800000 rw-p 00000000 00:00 0                                  [stack:13609]
f0800000-f0821000 rw-p 00000000 00:00 0 
f0821000-f0900000 ---p 00000000 00:00 0 
f0923000-f0924000 ---p 00000000 00:00 0 
f0924000-f1124000 rw-p 00000000 00:00 0                                  [stack:13605]
f1124000-f5125000 rw-s 00000000 00:13 5289638                            /run/shm/pulse-shm-81506800
f5125000-f5205000 rw-s 00000000 00:04 18022418                           /SYSV00000000 (deleted)
f5205000-f525c000 rw-p 00000000 00:00 0 
f52a8000-f52af000 r--s 00000000 08:07 669075                             /usr/lib/i386-linux-gnu/gconv/gconv-modules.cache
f5320000-f5452000 r--p 0018a000 08:07 655532                             /usr/lib/locale/locale-archive
f5452000-f5652000 r--p 00000000 08:07 655532                             /usr/lib/locale/locale-archive
f5652000-f5653000 ---p 00000000 00:00 0 
f5653000-f6982000 rw-p 00000000 00:00 0                                  [stack:13586]
f6982000-f698d000 r-xp 00000000 08:07 1708428                            /lib/i386-linux-gnu/libnss_files-2.17.so
f698d000-f698e000 r--p 0000a000 08:07 1708428                            /lib/i386-linux-gnu/libnss_files-2.17.so
f698e000-f698f000 rw-p 0000b000 08:07 1708428                            /lib/i386-linux-gnu/libnss_files-2.17.so
f698f000-f6999000 r-xp 00000000 08:07 1708434                            /lib/i386-linux-gnu/libnss_nis-2.17.so
f6999000-f699a000 r--p 00009000 08:07 1708434                            /lib/i386-linux-gnu/libnss_nis-2.17.so
f699a000-f699b000 rw-p 0000a000 08:07 1708434                            /lib/i386-linux-gnu/libnss_nis-2.17.so
f699b000-f69a2000 r-xp 00000000 08:07 1708426                            /lib/i386-linux-gnu/libnss_compat-2.17.so
f69a2000-f69a3000 r--p 00006000 08:07 1708426                            /lib/i386-linux-gnu/libnss_compat-2.17.so
f69a3000-f69a4000 rw-p 00007000 08:07 1708426                            /lib/i386-linux-gnu/libnss_compat-2.17.so
f69a4000-f69a8000 rw-p 00000000 00:00 0 
f69a8000-f69bb000 r-xp 00000000 08:07 1708440                            /lib/i386-linux-gnu/libresolv-2.17.so
f69bb000-f69bc000 r--p 00013000 08:07 1708440                            /lib/i386-linux-gnu/libresolv-2.17.so
f69bc000-f69bd000 rw-p 00014000 08:07 1708440                            /lib/i386-linux-gnu/libresolv-2.17.so
f69bd000-f69bf000 rw-p 00000000 00:00 0 
f69bf000-f69c5000 r-xp 00000000 08:07 669290                             /usr/lib/i386-linux-gnu/libogg.so.0.8.0
f69c5000-f69c6000 r--p 00005000 08:07 669290                             /usr/lib/i386-linux-gnu/libogg.so.0.8.0
f69c6000-f69c7000 rw-p 00006000 08:07 669290                             /usr/lib/i386-linux-gnu/libogg.so.0.8.0
f69c7000-f69c8000 rw-p 00000000 00:00 0 
f69c8000-f69f1000 r-xp 00000000 08:07 669294                             /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
f69f1000-f69f2000 ---p 00029000 08:07 669294                             /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
f69f2000-f69f3000 r--p 00029000 08:07 669294                             /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
f69f3000-f69f4000 rw-p 0002a000 08:07 669294                             /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
f69f4000-f6b5a000 r-xp 00000000 08:07 669296                             /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
f6b5a000-f6b6b000 r--p 00165000 08:07 669296                             /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
f6b6b000-f6b6c000 rw-p 00176000 08:07 669296                             /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
f6b6c000-f6bba000 r-xp 00000000 08:07 669292                             /usr/lib/i386-linux-gnu/libFLAC.so.8.2.0
f6bba000-f6bbb000 r--p 0004e000 08:07 669292                             /usr/lib/i386-linux-gnu/libFLAC.so.8.2.0
f6bbb000-f6bbc000 rw-p 0004f000 08:07 669292                             /usr/lib/i386-linux-gnu/libFLAC.so.8.2.0
f6bbc000-f6bd1000 r-xp 00000000 08:07 1708443                            /lib/i386-linux-gnu/libnsl-2.17.so
f6bd1000-f6bd2000 r--p 00014000 08:07 1708443                            /lib/i386-linux-gnu/libnsl-2.17.so
f6bd2000-f6bd3000 rw-p 00015000 08:07 1708443                            /lib/i386-linux-gnu/libnsl-2.17.so
f6bd3000-f6bd5000 rw-p 00000000 00:00 0 
f6bd5000-f6bda000 r-xp 00000000 08:07 669288                             /usr/lib/i386-linux-gnu/libasyncns.so.0.3.1
f6bda000-f6bdb000 r--p 00004000 08:07 669288                             /usr/lib/i386-linux-gnu/libasyncns.so.0.3.1
f6bdb000-f6bdc000 rw-p 00005000 08:07 669288                             /usr/lib/i386-linux-gnu/libasyncns.so.0.3.1
f6bdc000-f6bdd000 rw-p 00000000 00:00 0 
f6bdd000-f6c4a000 r-xp 00000000 08:07 669298                             /usr/lib/i386-linux-gnu/libsndfile.so.1.0.25
f6c4a000-f6c4c000 r--p 0006c000 08:07 669298                             /usr/lib/i386-linux-gnu/libsndfile.so.1.0.25
f6c4c000-f6c4d000 rw-p 0006e000 08:07 669298                             /usr/lib/i386-linux-gnu/libsndfile.so.1.0.25
f6c4d000-f6c51000 rw-p 00000000 00:00 0 
f6c51000-f6c59000 r-xp 00000000 08:07 1708507                            /lib/i386-linux-gnu/libwrap.so.0.7.6
f6c59000-f6c5a000 r--p 00007000 08:07 1708507                            /lib/i386-linux-gnu/libwrap.so.0.7.6
f6c5a000-f6c5b000 rw-p 00008000 08:07 1708507                            /lib/i386-linux-gnu/libwrap.so.0.7.6
f6c5b000-f6c60000 r-xp 00000000 08:07 669265                             /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
f6c60000-f6c61000 r--p 00004000 08:07 669265                             /usr/lib/i386-linux-gnu/libXdmcAbgebrochen (Speicherabzug geschrieben)
umut@metaPC:~$ 

TraumFlug

Avatar von TraumFlug

Anmeldungsdatum:
16. Juli 2009

Beiträge: 999

Wohnort: zwischen den ohren

ein "buffer overflow" kann bei so gut wie jedem Prog vorkommen. Das hat nicht unbedingt nur was mit Sicherheit zu tun, sondern kann auch schlicht ein "Programmierfehler" sein. Es bedeutet nur, dass das Prog irgendwo über einen "geschützten" Bereich schreibt, etwa weil ein Puffer zu klein ist, oder Positionen in ihm falsch berechnet werden - die libc merkt das dann oft (Prüfwert überschrieben) und beendet das Programm, bevor (und hier kommt Sicherheit in's Spiel) evtl injizierter Fremdcode aufgerufen werden könnte. Oder bei einem Progfehler das Prog sowieso abschmieren würde, oder komisch reagieren, weil Daten korrupt sind. Bei sehr sorgfältig programmierten Programmen kommt sowas seltener vor, aber manchmal war eben der Kaffe einfach zu schwach...

Versuch' einfach mal ältere/neuere Versionen von dem Prog, wenn's dir wichtig ist, oder alternativemulatoren. Wenn der Fehler reproduzierbar ist, könnte man dank opensource das auch mit einem debugger untersuchen, aber das ist schon ein bisschen Arbeit. Es könnte ja auch am rom liegen, bzw. deinen roms, dass da irgendwas ungewöhnliches mit ist, das zsnes nicht erwartet.

P.S.: Ach ja, du bist nicht der einzige: 1173090 😈

Meta-Troopa

(Themenstarter)
Avatar von Meta-Troopa

Anmeldungsdatum:
28. April 2013

Beiträge: 78

Wohnort: Northrain Vestfahlen,Tohrtmunt

Ah,interessant. Ich glaube,ich nehme ein PPA vom ZSNES,damit ich wie du erwähnt hast,halt eine neuere Version hab.

Oder falls das auch net funzt,nehm ich bsnes.

Edit: Es kann nicht am ROM liegen,ist eine stinknormale Legend of Zelda A Link to the Past Rom,ungehackt..

Ich habe es auch schon mit anderen ROM's versucht,bei allen dasselbe.

PS: Kann das daran liegen,dass das Programm für die i386 Architektur ist,mein PC aber zur AMD64 Architektur gehört? (Bei der "Installation" von ZSNES stand da nichts besonderes über Auswahl von Prozessorarchitekturen..

TraumFlug

Avatar von TraumFlug

Anmeldungsdatum:
16. Juli 2009

Beiträge: 999

Wohnort: zwischen den ohren

Linux 64bit kann heutzutage normalerweise gut 32bit(i386) ausführen. Probleme gibt es eher, wenn etwa ein für 32bit geschriebenes Prog. für 64 übersetzt wird, oder andersrum, und z.B. Overflow/Wertebereiche von pointern oder ints naiv "genutzt" wurden. Da das prog nur für 32bit angeboten wird scheint das so ein hackiger Kandidat zu sein...

Im oben verlinkten Bugreport jedenfalls melden verschiedene das gleiche Verhalten sowohl bei 32 als auch bei 64 Systemen. Eigentlich ein Ding, dass der Maintainer sowas reinstellt, sollte ja aufgefallen sein? Probier' halt ppa, Pakete von anderen ubu-versionen, selberkompilieren, bis es läuft.

Meta-Troopa

(Themenstarter)
Avatar von Meta-Troopa

Anmeldungsdatum:
28. April 2013

Beiträge: 78

Wohnort: Northrain Vestfahlen,Tohrtmunt

Der Tipp mit dem PPA hat mir viel gebracht,Danke 👍

Da es jetzt funktioniert,markiere ich den Thread mal als Gelöst.^^

Antworten |