Mupen64plus: Zelda OOT endlich gefixt!


Schnatterplatsch

Well-Known Member
Joined
Feb 8, 2009
Messages
1,086
Ein User im englischen Forum namens "bzfrank" hat anscheinend den Bug im gles - plugin von Mupen gefixt, der Zelda zum Absturz brachte. Außerdem hat er ein kleines Speedup für Situationen/Szenen(?) mit vielen Texturen implementiert. Die neue .pnd muss aber noch von Gruso freigegeben werden. Ok, Gruso hat die .pnd hier hochgeladen: http://bunnitude.com/gruso/mupen.pnd

Link: http://www.gp32x.com/board/index.php?/topic/49358-mupen64plus/page__view__findpost__p__942343
 
Hi,

das war ich. ED hat die neue Version auch schon, kommt wohl bald ins Filearchiv.

- Frank
 
BZFrank said:
Hi,

das war ich. ED hat die neue Version auch schon, kommt wohl bald ins Filearchiv.

- Frank
Interessant. Mir ist aufgefallen, dass viele User Probleme mit OOT hatten, bzw wohl Alle, wenn ich das so lese. Schön, das man sowas fixen konnte, darf ich fragen wo genau der Hund begraben lag? Und betrifft der Fix nur OOT oder fixt es auch andere Games mit ähnlichen probleme? Ist an OOT irgend etwas anders als an den anderen N64 games was dieEmulation schwieriger macht? Das OOT Intro hat nämlich auch auf meinem PC immer geruckelt, bzw Soundprobleme gehabt owohl sonst alles andere im Spiel gut lief. :confused:??
 
Wenn ich mal kurz antworten darf: So wie ich das verstanden habe lag der Fehler in genau einer Zeile. Da wurde Heapspeicher mittels free() freigegeben - und das darf nicht sein. Dummerweise sind solche Fehler sehr schwer zu finden, da sie ja nicht in der Zeile bemerkbar werden, wo sie verursacht werden, sondern irgendwo im Programm.

Ich werd jedenfalls gleich mal Zelda OOT ausprobieren. :)
 
Im Prinzip war jedes Game betroffen - bei so einer Heap-Corruption durch falsche free() kann alles passieren. Bei LOZ:OOT ist es halt immer aufgetreten weil eine bestimmte Kombination und Menge von Textureloads den Heap zuverlässig so vermüllt hat das es entweder zu einer Endlosschleife oder Segfault kam. Deshalb funktionierte auch ältere Mupens mit dem v0.0.3 gles2n64 noch, dort wurde der Bereich in der Tat ständig per malloc() alloziert und dann wieder ge'free()d. (Was aber eben auch sehr langsam war).

Kann gut sein das jetzt mehr läuft, insbesondere sowas was sich bisher per Crash oder Endlosschleife oder schwarzerm Bildschirm verabschiedet hat. Aber mein Hauptaugenmerk lag eben auf OOT.
 
Ah, wieder was gelernt. Also der Fehler betraf eigentlich alle games aber bei OOT hat er zu einer Kette von Ereignissen geführt, die das game nicht spielbar machten. Kleine Ursache, grosse Wirkung. :-D
Echt nur 1 Zeile? Das is ja wie die Nadel im Heuhaufen suchen, vorraus gesetzt man weiss überhaupt erst mal, wo und was man suchen muss bei tausenden Programmzeilen. Ein nicht laufendes Game kann in nem Emulator ja viele Ursachen haben.
Und als "Bonus" gibts noch einen kleinen Speed boost? na, saubere Arbeit. ^^
 
Danke! Ich mach das jeden Tag (Wühlen im Programmcode und Issues fixen), da hat das Auge etwas Übung.

BTW ich hab Mupen64plus gerade aufs Filearchiv geladen. Diese Version fix't nun auch das Programm Icon.

Zusatz: Für den kleinen Speedboost das Grafikplugin 'gles2n64 0.0.4f' im Konfigurationsdialog anwählen und dort "Ok" drücken. Das Default-Plugin ist das alte (aber mit dem OOT-Fix). An den Ok-Knopf kommt man durch das Verschieben des Fensters (Shift drücken und mit dem Stift am Rahmen nach oben ziehen).
 
Danke danke danke; genau solche Leute brauchen wir! :hurra:
Werd ich mir heute mal ansehen...
Von der Geschwindigkeit her: wie läufts?
 
Nupfi said:
Danke danke danke; genau solche Leute brauchen wir! :hurra:
Werd ich mir heute mal ansehen...
Von der Geschwindigkeit her: wie läufts?

Hab heute früh vorm schlafen gehen nur ein wenig Dorfvisite gemacht. Ohne Frameskip läufts ein wenig zu langsam und der Ton stottert, mit FS1 ruckelt zwar das Bild ein wenig, scheint aber Fullspeed mit schönem Ton zu sein. Natürlich nicht so gut wie Mario, aber dennoch spielbar, sogar auf 500Mhz einigermaßen :p :)
 
Coole Sache, ich hab grad Zelda ausprobiert, es funktionirt, aber ich will es lieber auf dem 3DS Spielen, wegen den schöneren Texturen und dem 3D.., aber Mario 64 macht echt fun mit der Pandora..

Welche anderen bekannten Spiele gehen jetzt eigendlich, die vorher nicht gegangen sind, außer Papermario?
 
Jedes wo "BZ Fix" als Version steht, sind wohl aber noch nicht alle ausprobiert:

https://spreadsheets.google.com/ccc?key=0AkBB6e4g1lGtdGxzVjhfNnpiMXVfR3FoZWRndG5iQ3c&hl=en_GB#gid=0
 
Version 2 des Fix ist nun auf dl.openhandhelds.org

http://dl.openhandhelds.org/cgi-bin/pandora.cgi?0,0,0,0,71,353

- Neues Plugin 'gles-0.0.4-BZF080311' mit den Speedups ist nun Default.
- MarioKart und Diddy Kong Racing laufen nun wieder
- Durch Umstellen der Cacheverwaltung für die Texturen auf Hashtables konnte ich nochmal etwas Geschwindigkeit rausholen.
- Einige Blendmodes sind noch dazugekommen (vom Rice Plugin übernommen)
 
Mario Kart läuft bei mir jetzt auch wunderbar (800mhz, höher trau ich mich nicht), auch wenn es stellenweise ein paar kleine hänger hat.., Pilotwings hat vorher schon funktionirt, nur hatte ich da ein paar Graphikfehler (800mhz), Ich probier das demnächst mal aus..

Hab mal Pilotwings 64 ausprobiert, bei 800mhz läuft es ganz gut.., die anderen Spiele kommen auch irgendwann mal drann..
 
Läuft "Lylat Wars" Full Speed? :) Ist das einzige N64Game, das ich jemals durch gezockt hab. ^^
Und muss man für Mario 64 auch übetakten oder ist das Spiel etwas genügsamer?
 
Starfox 64 aka "Lylat Wars" in Europa müsste laut Kompatibilitätsliste im Spiel selbst fullspeed laufen. Nur das Intro ruckelt ein wenig. Mario läuft so, braucht nicht mal Übertaktung.
 
Fusion_Power said:
Läuft "Lylat Wars" Full Speed? :) Ist das einzige N64Game, das ich jemals durch gezockt hab. ^^
Und muss man für Mario 64 auch übetakten oder ist das Spiel etwas genügsamer?
Das ist genügsamer ;)
 
Jepp, Mario 64, läuft bei mir wunderbar, ich habs auf knapp 640 mhz, weil mir 500mhz zu langsam sind, aber es läuft super und lässt sich wunderbar steuern...
Hat da das neue Plugin eigendlich auch verbesserungen gebracht?
 
Back
Top