Hallo Besucher, der Thread wurde 273k mal aufgerufen und enthält 2404 Antworten

letzter Beitrag von frankyman1969 am

Denise C64 + Amiga Emulator

  • Wenn man nachliest, wird ausdrücklich empfohlen Vsync noch zusätzlich zu aktivieren. Den Sinn dahinter verstehe ich leider nicht. Ein Vsync ist doch nicht flexibel? Aber eventuell betrifft das auch nur G-Sync, denn Freesnyc wird hier nicht explizit erwähnt.

    ja das mit dem Vsync Hinweis fiel mir auch auf. Ich weiß nicht ob Vsync sich ähnlich verhält wie FF = 1.0 auf einen freesync ?


    DRC scheint ja in RA nur noch in der Config steuerbar zu sein. "audio_rate_control" Es ist standardmäßig aktiv. Kannst du es mal abschalten, FF auf 0.0 und "sync to exact content framerate" aus, audio sync an, vsync aus lassen.

    DRC hat ja ziemlich Einfluss auf audio Sync. Werden die Sprünge im OSD größer ?

  • Der Youtube-User "colesdav" hat zu dem Thema "RetroArch - Vsync, Freesync Monitor, AudioSync" auch einiges rumprobiert und Videos anhand des "Virtual Boy" Emulators dazu online gestellt. Wen es interessiert, hier ein paar davon:


    https://www.youtube.com/watch?v=ACEoDca1tHE


    https://www.youtube.com/watch?v=NtUAvoC12zk

  • Nachdem ich jetzt Denise schon eine Weile nutze und sehr sehr brauchbar finde, habe ich mal 3 Fragen dazu, ich habe jetzt nicht alle 60 Seiten in diesem Thread gelesen, wenn diese Fragen also schon mal gestellt und, noch besser, schon beantwortet wurden, bitte ich um Nachsicht. :)


    1. Gibt es eine Tastenkombination/Einstellung, um das Fenster 2x zu skalieren, so wie bei Vice? Hab' bisher nichts in der Richtung gefunden.

    2. Ich wollte eben mal schnell im Speicher etwas nachschauen und habe dann vergeblich nach einem Monitor gesucht, gibt es den (noch) nicht für Denise? So ein Disassembler und Hex View etc. sind auf jeden Fall schon recht nützlich.

    3. Gibt es einen Warp Mode wie bei Vice? Wenn ja, wo hat der sich versteckt? :)

  • Ähnlich wie AW182 habe ich auch noch etwas kurioses wohl in Verbindung mit beiden (!) Warp-Modes zu berichten:


    So scheint es von Zufall geprägt zu sein, ob die selbst eingespielten und gespeicherten Highscores im Falle es Spiels Fortress of Narzod geladen werden oder nur die ursprünglich Highscoreliste ohne eigene Errungenschaften.


    Mal klappt es, mal klappt es nicht. Sehr sonderbar.

    ich behalte das im Hinterkopf und prüfe später.


    1. Gibt es eine Tastenkombination/Einstellung, um das Fenster 2x zu skalieren, so wie bei Vice? Hab' bisher nichts in der Richtung gefunden.

    Jein (indirekt) : Integer Scaling: Optionen -> Video -> Ganzzahl Skalierung. Wenn du das Fenster dann per Drag'n'Drop ausreichend vergrößerst, springt er auf x2, x3 usw.

    Später kommt noch die Option dazu, dass sich der Fenster Rahmen an den Emulations Rahmen (4:3) anpasst. Somit musst du nicht mühsam die schwarzen Render manuell verstecken.


    2. Ich wollte eben mal schnell im Speicher etwas nachschauen und habe dann vergeblich nach einem Monitor gesucht, gibt es den (noch) nicht für Denise? So ein Disassembler und Hex View etc. sind auf jeden Fall schon recht nützlich.

    leider noch nicht.

  • neues nightly: FPS Limiter (siehe FF = 1.0 in RA) direkt unter Vsync Option.

    Retro-Nerd Kannst du mal schauen, wie das in Kombination mit audio Sync wirkt und DRC bei Bedarf. Frequenz Korrektur aus.


    Dies ist nicht für normale Monitore mit der Absicht ruckelfreies Scrolling zu erhalten, gedacht. Die Anzeige Zeiten entsprechen schon 50/60 Hz.

    Aber die Positionen wann das Bild an die Grafikkarte übergeben wird, ist nicht mit dem Bildaufbau des Monitors synchronisiert, so wie bei Vsync.

    Für ein freesync ist das Ok, da der sich nach der Software richtet.


    Im OSD springt er von 50-80Hz wenn nur Audio Sync aktiviert ist und Fast Forward auf 0.0 steht. Also deutlich geringer in der Hz Spanne als in Denise = ca. 40-140Hz. Was aber wichtig ist, es bleibt flüssig in Retroarch.

    Du sagtest, das war ein NTSC Konsolen game. Wie hoch dreht denn der entsprechende Core dazu in RA ungedrosselt (audio Sync aus, FF = 0) ?

    Z.b. der Higan Core läuft ungedrosselt bei mir mit nur 95 fps. Der VICE Core mit um die 1000. 95 FPS stellen ja schon an sich ne Art FPS Limiter dar.

    Liegt der VICE Core (audio Sync an, FF = 0) auch um die 50 - 80 ?

    und "sync to exact content framerate" immer aus

  • Mittlerweile gibt es ja freesync, die g-sync compatible sind? Hat da jemand Erfahrung. Ich würde mich ungern für einen Typ Grafikkarte durch den Monitor Kauf festlegen wollen.

    Dann könnte ich mein altes TN Panel rausschmeißen, in der Hoffnung das der freesync mit einem normalen Monitor (IPS Panel) im Dual Monitor Setup zu gebrauchen ist.

  • Zitat

    neues nightly: FPS Limiter (siehe FF = 1.0 in RA) direkt unter Vsync Option.

    Retro-Nerd Kannst du mal schauen, wie das in Kombination mit audio Sync wirkt und DRC bei Bedarf. Frequenz Korrektur aus.


    Das funktioniert super, endlich ruckelfrei ohne Vsync. Hatte ich mir schon gedacht. DRC sollte aber an sein, ansonsten kratzt oder stottert es etwas. Im OSD schwankt es von 47-51Hz. :thumbsup:


    edit:


    Nur eine Sache ist recht merkwürdig. Das ganze funktioniert bei mir nur, wenn das Menü des AMD Treibers offen ist. Ich meine, die Software ist eh im Auto-Start und läuft nach dem hochfahren im Hintergrund. Aber das reicht nicht, dann ruckelt es gewaltig (OSD zwischen 45-120). Das ist neu, und passiert mir nur mit Denise (Retroarch und Freesync klappt auch ohne öffnnen des AMD Menüs bestens).


    Zitat

    Der VICE Core mit um die 1000.

    Welchen nutzt du denn da genau?. Ich komme da nur auf 360 mit vice_x64sc_libretro.dll, die aktuellste Version.



    https://github.com/libretro/vice-libretro


    Zitat

    Liegt der VICE Core (audio Sync an, FF = 0) auch um die 50 - 80 ?


    Ungefähr bei 45-65Hz

    Zitat

    Z.b. der Higan Core läuft ungedrosselt bei mir mit nur 95 fps


    Liegt bei mir so um ca. 125fps. Denke aber, das ist die Hardware Limitierung. Higan (Accuracy) braucht schon ordentlich CPU Power. Der aktuelle bsnes Core ist etwas schneller, so um die 158fps.

  • Ich hab vorhin mal was ausprobiert. Da man im WinVICE Fenster auch lenken kann, wenn dieses keinen Fokus hat, hab ich den Denise und den WinVICE zugleich im Fenstermodus laufenlassen, auf beiden Emulatoren denselben Controller eingestellt und das gleiche Spiel (Giana Sisters) geladen.


    Dann eines der beiden Fenster so über das andere geschoben, daß die beiden Giana Sprites beider Emulatoren recht nahe beisammen stehen. Lenkt man nun mit dem Controller wird diese Bewegung zugleich in beiden Emu's ausgeführt. Springt man dann, sind die Bewegungen des Sprites genau synchron zueinander und der Sprung dauert genau gleich lang in beiden Emu's, jedenfalls kann man mit den Augen da keinen Unterschied sehen.


    Dann ging ich mit der RunAhead-Funktion im Denise auf 3 Frames (60ms Lag weniger), führte wieder einen Sprung mit dem Giana-Sprite in beiden Emulatoren zugleich aus (da gleicher Controller auf beiden lenkt man einfach nach oben) und machte einen Screenshot kurz vor der Landung beider Sprites (in etwa auf Höhe des grünen Busches den man am Screen sieht). Dann maß ich die Linie aus, die der Sprite im Denise Vorsprung hat in diesem Moment. Genau das Gleiche machte ich dann nochmal mit 2 Frames (40ms Lag weniger) RunAhead. Das Ergebnis sieht man hier, wen es interessiert:



    Vorsprung mit 3 Frames sind 20 Pixel, mit 2 Frames sind es 16 Pixel.

  • Nur eine Sache ist recht merkwürdig. Das ganze funktioniert bei mir nur, wenn das Menü des AMD Treibers offen ist. Ich meine, die Software ist eh im Auto-Start und läuft nach dem hochfahren im Hintergrund. Aber das reicht nicht, dann ruckelt es gewaltig (OSD zwischen 45-120). Das ist neu, und passiert mir nur mit Denise (Retroarch und Freesync klappt auch ohne öffnnen des AMD Menüs bestens).

    Hmm, damit ich das richtig verstehe, ohne FPS Limit ist es egal ob AMD Menu offen oder nicht. Es schwankt immer zwischen 40 - 140. Mit FPS Limit schwankt es nur so stark, wenn AMD Menu nicht geöffnet ist ?

    Die Schwankung bei nur audio Sync kann ich noch nachvollziehen, obwohl ich dir Recht gebe, dass selbst da 140 Hz ziemlich hoch erscheint. Aber mit dem FPS Limiter kann er doch nur etwas über 50 Hz schwanken.

    Wenn du den Video Treiber auf DirectX änderst, ändert sich da im Verhalten was ?

    Welchen nutzt du denn da genau?. Ich komme da nur auf 360 mit vice_x64sc_libretro.dll, die aktuellste Version.

    Ich hab wohl einen alten x64 Kern. Ist für die Art von Tests ausreichend, da Synchronisation und Emulator Genauigkeit ziemlich unabhängig voneinander sind.

    Interessant, ich hab auch 'ne AMD und das ist bei mir nicht so. Monitor meldet relativ stabile 100 FPS bei aktiviertem Limiter im Fullscreen.

    Das kann ich nicht einordnen. Läuft das nun doppelt so schnell ?

  • Zitat

    Hmm, damit ich das richtig verstehe, ohne FPS Limit ist es egal ob AMD Menu offen oder nicht. Es schwankt immer zwischen 40 - 140. Mit FPS Limit schwankt es nur so stark, wenn AMD Menu nicht geöffnet ist ?

    Die Schwankung bei nur audio Sync kann ich noch vollziehen, obwohl ich dir Recht gebe, dass selbst da 140 Hz ziemlich hoch erscheint. Aber mit dem FPS Limiter kann er doch nur etwas über 50 Hz schwanken.

    Wenn du den Video Treiber auf DirectX änderst, ändert sich da im Verhalten was ?



    Ja, das ist korrekt.


    Ohne FPS Limit geht es ja eh nur mit Vsync flüssig, und ich muß zwingend manuell auf 50Hz umschalten.Da spielt Freesync keine Rolle, stört aber auch nicht wenn es aktiviert ist. Mit FPS Limit und Audio Sync aktiviert kann ich den Vsync deaktiveren, so wie es auch geplant war. Nur muß dann die Treiber GUI geöffnet sein. Wenn die GUI nicht offen ist scheint Freesync softwareseitig "verwirrt" zu sein. Keine Ahnung, macht irgendwie überhaupt keinen Sinn für mich. Direct3D nutze ich ja eh schon länger in Denise.



    edit: Problem hat sich erledigt. Das externe ReShade Tool verursacht das. Ohne Reshade brauche ich auch die AMD GUI nicht zwingend offen haben.

  • Ohne FPS Limit geht es ja eh nur mit Vsync, und ich muß zwingend manuell auf 50Hz umschalten.Da spielt Freesync keine Rolle, stört aber auch nicht wenn es aktiviert ist.

    ja schon klar, mein Gedanke ist, vielleicht hattest du damals die Treiber GUI nie offen und das Ergebnis wäre dann ohne FPS Limit ein anderes als die 40 -140 Hz

    Direct3D nutze ich ja eh schon länger in Denise.

    Achso, ich dachte openGL + externe Shader von guest.

  • Siehe meinem Edit. Merkwürdig, das Reshade den Freesync Scan so aus dem Tritt bringt. Sofort wenn ich im laufenden Emulator die AMD GUI öffne zuckelt das Bild 1-2 Sekunden, so das Freesync richtig greift und alles läuft normal.


    Allerdings habe ich da noch einen sehr komischen Fehler in Verbindung mit Reshade. Wenn ich exklusive Fullscreen nutze wird der 16:9 Balken Bereich bunt wabernd, ähnlicher einer Lavalampe, eingefärbt. Woher das wohl kommt?


  • edit: Problem hat sich erledigt. Das externe ReShade Tool verursacht das. Ohne Reshade brauche ich auch die AMD GUI nicht zwingend offen haben.

    Was ist ReShade ? Was auch immer es ist, bei RetroArch verursacht es aber kein Problem ?


    Andere Frage in Bezug auf Input Lag, jetzt wo es auch ohne Vsync läuft. Hast du denn das Gefühl das ein runAhead x2 mit Vsync jetzt durch ein runAhead x1 mit FPS Limit in Bezug auf LAG ähnlich wirkt vom Spiel Gefühl ?

  • Reshade ermöglicht externen Shader Support für Emulatoren, und auch generell Spiele. Da ich in Direct3D Mode keine brauchbaren für Denise habe, nutze ich das. Das wird sich ja irgendwann ändern, wenn du D3D11 und Retroarch Shader support einbaust.


    https://reshade.me/



    Zitat von PiCiJi

    Andere Frage in Bezug auf Input Lag, jetzt wo es auch ohne Vsync läuft. Hast du denn das Gefühl das ein runAhead x2 mit Vsync jetzt durch ein runAhead x1 mit FPS Limit in Bezug auf LAG ähnlich wirkt vom Spiel Gefühl ?


    Auf jeden Fall. Das macht C64 Spiele, die eh nur 1 Frame runahead vertragen (wie Turrican z.B.) nochmal flüssiger. Und Giana Sisters mit 2 Frames+1 Frame Zugewinn durch das abschalten des Vsyncs, ist damit ähnlich gut wie auf echter Hardware. Kann da keinen dritten Frame mehr einstellen, dann "springt" die Animation.

  • Reshade ermöglicht externen Shader Support für Emulatoren, und auch generell Spiele. Da ich in Direct3D Mode keine brauchbaren für Denise habe, nutze ich das. Das wird sich ja irgendwann ändern, wenn du D3D11 und Retroarch Shader support einbaust.

    ja so ist der Plan.

    Auf jeden Fall. Das macht C64 Spiele, die eh nur 1 Frame runahead vertragen (wie Turrican z.B.) nochmal flüssiger. Und Giana Sisters mit 2 Frames+1 Frame Zugewinn durch das abschalten des Vsyncs, ist damit ähnlich gut wie auf echter Hardware. Kann da keinen dritten Frame mehr einstellen, dann "springt" die Animation.

    sehr geil, Ich hoffe das ich normalen Monitor Nutzern diesen Gewinn mittels Beam Racing auch bescheren kann.