Posts by PiCiJi

    Was noch erwähnenswert ist:


    D3D11 nutzt in Denise das neue Flip Model. Laut MS ist damit FSO in Win 10/11 möglich.

    FSO: ein rahmenloses Vollbild (FSB) aber mit den Vorteilen von fullscreen exklusive (FSE) ohne deren Nachteile.

    Das OS entscheidet, ob eine App exklusiv Zugriff bekommt oder nicht. Z.b. wenn eine Chat Nachricht rein springt, verliert die App kurz den Exklusiv Zugriff.

    Der Vorteil ist, das man das verringerte LAG hat und dennoch mal schnell z.B. das Settings Fenster im Vollbild anzeigen lassen kann.

    Aus diesem Grund sollte die Einstellung FSE in der App nur noch einen Mehrwert in Win 7 haben.


    Ich kann nicht sagen ob das tatsächlich so ist, da ~5 ms weniger LAG sich kaum fühlen lassen.

    In D3D12 ist FSE nicht mehr möglich.

    Hat sich alles schon erledigt. Siehe meinem Edit. Das hätte ich auch früher drauf kommen können.

    ah ok ich dachte an sowas hier: FPS Cap (Riva Tuner)


    Seitdem ich auf Windows 11 bin, nutze ich den Riva Tuner ziemlich oft um einige ältere Spiele auf 60 Hz zu capen.

    Grundsätzlich habe ich so meine Probleme mit Win11. Ich habe hier ein Spiel von 2017 ( Unity Engine) und das hat ein mieses Frame Pacing trotz Cap

    Gleiche Hardware und Nvidia Settings, nur Windows 10 und es läuft deutlich besser.

    Vsync ist natürlich aus, ist ja kontraproduktiv.

    hmm, wenn ohne zugeschalteten TR und im Emu eingestellten 50.125 Hz dennoch der FPS Zähler sich bei 50 Hz einpendelt, kann VRR nicht funktionieren. Selbst wenn das mit aktivem TR nicht passiert. Das ist wie gesagt ein Trugschluss. Da ist noch was anderes ursächlich.

    Was mir noch einfällt: in den nvidia settings ist Vsync immer aktiv und übergeht die Vorgaben der App oder Threaded-Optimierung ist angeschaltet. Letzteres ist nicht günstig für Retro Content, wo eine feste Bild Rate gehalten werden muss. Viele dieser Einstellungen haben keinen Einfluss auf openGL. Deswegen stören diese dort auch nicht.

    Wenn du VRR/Vsync abschaltest und auch den TR und im Emu 50.125 Hz einstellst ... Pendelt die FPS Anzeige sich dann unter D3D11 auch auf 50 Hz ein? Wenn das so ist, ist irgendwie ein Vsync oder FPS Cap (extern .. Riva Tuner) aktiv.

    D3D11 funktoniert soweit ganz gut, auch mit den Shadern. Korrektes VRR ist bei mir unter Windows 10 aber deutlich instabiler. Gibt an und wann Mikroruckler und manchmal auch Soundaussetzer. OpenGL bleibt bei VRR immer stabil und ohne Aussetzer. Hast du noch Vorschläge zum testen?

    im Fenster Modus kann ich das unsauberer VRR bestätigen unter Win10 und 11 gleichermaßen. Es macht schon einen Unterschied ob man im Hintergrund den Desktop sieht oder z.B. den Browser. Bei letzterem wird das VRR spürbar gestört.

    Im Vollbild allerdings passt das VRR in Win10/11 bei mir.

    Meintest du rahmenloses Vollbild (FSB), exklusives Vollbild (FSE) oder Fenster Modus ?

    den "Threaded Renderer" darf man auf keinen Fall deaktivieren, dann geht es recht schnell zu glatt 50Hz.

    das klingt danach, als ob du Vsync aktiv hast, trotz Gsync ?

    Vsync kann nicht zu einer krummen Frequenz synchronisieren. Wenn der Threaded Renderer (TR) an ist, wirkt es nur so als ob das möglich wäre, da Emu und Renderer entkoppelt sind.

    Mittels TR ist es möglich krumme Frequenzen trotz Hardware Vsync zu fahren auf Kosten eines gelegentlichen Mikro Rucklers, welcher den Unterschied zwischen 50 und 50.125 Hz ausgleicht.

    Ohne den TR mit Vsync und einer krummen Frequenz würde man ein permanentes ruckeln wahrnehmen, da Emu und Renderer nicht entkoppelt sind.

    Laufen Emu und Monitor mit Vsync gleich schnell, z.B. 50 oder 60 Hz spielt es keine entscheidende Rolle ob man den TR aktiv hat oder nicht.


    ok zurück zu VRR:

    Auch wenn Denise 50.125fps anzeigt.Gerade das ist mehr als kurios.

    und mit der gleichen Präzision wird in openGL das Bild gewechselt und da passt es. Ich befürchte, ich kann aus der App heraus nicht mehr tun.

    Aber wie gesagt im Vollbild sieht VRR bei mir gut aus mit D3D11.

    Der C64 Maxi / Mini nutzt da ganz einfach: "Spielname_J1.d64" als Parameter / Dateiname.

    ich würde jetzt meine Spiele Bezeichner dafür nicht umbenennen wollen.

    Wie schon erwähnt, kannst du einen Hotkey verwenden. Dann brauchst du auch nicht erst in den Fenster Modus zurück zuschalten.


    im aktuellsten nightly ist die 2. Ausbaustufe für D3D11 nun geschafft. Es ist ein vollständiger Ersatz für openGL.

    die internen Shader und die externen Shader (Trinitron, Lottes) sind in HLSL konvertiert. Die externen HLSL Shader werden nun mit verteilt.

    Ist der Shader Pfad unter (Optionen -> Video) nicht gesetzt, greift der emu auf die verteilten Shader zu. (im APP Ordner unter shader/glsl bzw. shader/hlsl)

    Ist der Shader Pfad gesetzt (noch kein RetroArch Shader support), wird dort nach Shadern gesucht. (z.B. um veränderte Parameter zu verwenden) Der Pfad wird abhängig vom ausgewählten Treiber unterschieden.


    Nur unter D3D11 kann mittels eines neuen Hotkeys (Optionen -> Eingabe) das Bild gedreht werden, z.B. für Spiele wie Phoenix Recovered. (90 Grad gedreht)

    FRAGE: Hat sich in der Zwischenzeit etwas getan, einem Spiel den Joystickport 1 zuzuweisen? Also den Controller per Parameter, oder ideal kompatibel zu Maxi/Mini mit "_J1" den Port gleich mizuteilen?

    was meinst du ?

    Ich habe gerade mal deine akuellste Nightly ausprobiert. In OpenGL gehen die beiden Trinitron Shader nicht mehr korrekt (der Lotte aber schon). Gibt nur ein schwarzes Bild, der Emulator läuft aber scheinbar sonst normal weiter. Müssen die Shader angepasst werden? Windows 10, 64bit.

    sollte wieder funktionieren. ist kaputt gegangen als die Minimal Version auf openGL 3.2->3.1 reduziert und die Shader Version auf 150->140 reduziert wurde. Ich hoffe damit, dass ältere onboard intel Grakas die shader nutzen können.

    Es wurden eh keine features verwendet, die zwingend eine höhere Version benötigen. Das hat also keine Nachteile.

    Dennoch mussten ein paar Kleinigkeiten angepasst werden.

    Nichts, die Tastatur schreibt nicht, weder auf dem C-64 Screen noch in den Einstellungen.

    du meinst, nur im Administrator Modus kannst du die Tastatur in Denise benutzen bzw. eine Konfig Datei schreiben ? Das sollte auch ohne gehen ...

    Oh, Direct3D 11 ist implementiert? Hast du das Retrorach Shadersystem auch noch auf der To-Do Liste (später irgendwann)?

    noch nicht. Im Moment ist D3D11 (letztes nightly) ein Ersatz für D3D9 mit dem Vorteil das VRR nun kein exklusives Vollbild mehr benötigt. Zudem läuft Vsync unter Windows 11 besser als mit D3D9.

    Windows 11 ist irgendwie ein Problem für die alten Treiber, besonders openGL.


    Aktuelle Stufe ist es, die internen PAL Shader von GLSL (openGL) in HLSL (D3D) zu konvertieren und die Verarbeitung von Shadern generell zu ermöglichen. Dann ist es auch ein Ersatz für openGL.


    Dritte Ausbaustufe ist es dann die retrochArch Shader zu parsen, automatisiert ein Dialog zu bauen um die Optionen des Shaders zu bearbeiten, dann die Spir-V Shader mittels Cross Compiler in HLSL zu übersetzen, die Shader Pipeline mit den gesetzten Optionen zu steuern und zu rendern.

    Die 3. Ausbaustufe wird richtig aufwendig.

    versuch mal den Eingabe Treiber zu wechseln, unter Optionen -> Eingabe -> Treiber

    Oh, mittlerweile ist sogar IPF Support mit drin. Mal eine handvoll Spiele ausprobiert. Liefen alle einwandfrei.

    ja IPF ist nun dabei, und die Möglichkeit im Alles Lader mehrere Dateien auf einmal auszuwählen. Auf diese Weise kann man DF0-DF3 in einem Rutsch belegen oder Einlegen + Reset.


    Wir haben hier ein Spiel: Fate Gates of Dawn IPF und ADF (CLS Crack, nicht FSN), welches später nicht weiter lädt, wenn man beim Laden (Logo sichtbar) irgendwelche Tasten drückt.

    Ich konnte das Verhalten am Echt Gerät bestätigen. In WinUAE scheint ein Tastendruck kein Problem zu bereiten, was es aber sollte.


    Hat man also in Denise z.B. den Warp auf ALT+W gelegt und schaltet dies während des Ladens um, läuft man in das Problem, was aber kein Bug ist.

    Ich kann nun leider nicht einfach sagen, wenn 2 Tasten parallel gedrückt werden, gelangt dies nicht in die Amiga Emulation, denn z.B. ALT und W könnten ganz normal als Kombination im Amiga Programm eine Funktion haben.

    Ich habe noch keine Idee, wie man hier am Besten informiert oder verhindert.


    Noch ein paar Kleinigkeiten, dann kommt das nächste Release, was eher als Bugfix Release besonders für die Amiga Emulation gedacht ist. Zudem werden auch einige Bugs in der C64 Emulation behoben, welche beim Zusammenführen beider System entstanden sind.


    Danach geht es dann langsam aber sicher mit D3D11 weiter.

    Du hast in Post 20 erwähnt, dass man da immer die höchste Bildwiederholfrequenz einstellen sollte, was ist der Grund dafür?

    In meinem Fall ist es notwendig, damit es funktioniert. Möglicherweise geht es auch mit weniger. Ich habe immer direkt auf mein Maximum gestellt. (240 Hz).

    Ich teste bei Gelegenheit nochmal andere Einstellungen, wenn ich unter Win 10 bin.

    In Win 11 gibt es Probleme mit openGL. (vsync + gsync (Fenster) ). Hier geht es erst vernünftig mit D3D 11 weiter, da hier sicherlich kein Fix mehr von Microsoft zu erwarten ist.

    Wegen der Eingabe solltest Du Dir überlegen, ob Du das nicht doch so umbauen kannst, wie es auch andere Emus machen. Die jetzige Methode ist einfach zu umständlich. Vielleicht wäre dadurch auch die Eingabeverzögerung geringer?

    kann ich mir nicht vorstellen, weil ja der Treiber direkt verwendet wird. Ich bin leider noch nicht dazu gekommen, mir das anzuschauen. Vielleicht ist einfach nur was nicht optimal programmiert. Den macOS Keyboard Treiber habe ich nie auf LAG's getestet.

    -------


    Ich habe es leider versäumt mir unter Windows 11 Vsync und G/Free Sync Verhalten anzuschauen. Das habe ich heute getan.


    direct3D9: verhält sich wie in Win10


    openGL:

    Vsync funktioniert nicht richtig, weder im Fenster noch im Vollbild

    VRR Sync läuft nur im Vollbild vernünftig, in Win 10 klappt es auch im Fenster


    Das openGL Problem unter Windows 11 wurde im Microsoft Forum adressiert mit Erwähnung, das dies in Win 7, 8, 10 nicht vorhanden ist. ... jedoch ohne Lösung. Die wird auch nicht mehr kommen.


    Um sicher zu gehen, habe ich für meine neue Hardware ein Windows 10 installiert. Hier verhält sich alles so, wie mit der alten Hardware.

    Ich denke mal nicht, dass mein System zu langsam wäre

    Das habe ich damit nicht gemeint.

    Ich habs sowieso von Anfang an komisch gefunden, dass man Denise von MacOS her eine Eingabe erlauben muß, um überhaupt die Tastatur verwenden zu können - das hab ich noch bei keinem einzigen Emulator gesehen.

    Die meisten Emus fragen die Eingabe Prüfung sicher direkt mittels UI Kit ab, also Cocoa, GTK, WinAPI usw.

    Ich verwende den zugrunde liegenden Treiber, IO KIT im Fall von macOS. Keine Ahnung warum Apple entschieden hat, dafür eine Nutzer Berechtigung einzufordern und über Cocoa nicht.

    Erschwerend kommt hinzu, das beim Ersetzen der aktuellen Denise Version dieser Prozess wiederholt werden muss und dies nur funktioniert, wenn man den alten Denise Eintrag dort erst entfernt und dann wieder hinzufügt.

    Ein Erlauben mittels Hacken neu Setzen im bestehenden Denise Eintrag reicht nicht aus. Da fragt man sich wirklich, was das soll. Darauf kommt ein Nutzer nur schwer.

    Ich muss mal probieren, ob die ganz leichte Verzögerung auch bei einem Joystick vorhanden ist

    ja das wäre eine hilfreiche info in Bezug darauf, wo ich ansetze.

    Ich teste dies demnächst mal genauer, ob mir das auch auffällt.

    Witzigerweise auch, wenn ich die ganzen V-Sync-Optionen anhake. Allerdings ist dieser Menüpunkt eigenartig, da man ihn gar nicht irgendwie deaktivieren kann (es gibt nur „aktivieren“), es muß dort immer etwas drinnen stehen, was genutzt werden soll. Eigentlich sollte der doch zum aktivieren/deaktivieren sein, um die Standardwerte des VIC-II zu verwenden, oder?

    Die Funktionsweise ist etwas zu kompliziert. Adaptive Sync ist nur sichtbar, wenn der Threaded Renderer inaktiv ist. Aus diesem Grund ist das völlig anders gelöst. Benutze bitte das aktuelle nightly.

    Dort gibt es kein Adaptive Sync mehr, dafür zwei Modi für den Threaded Renderer.

    mir ist nochwas aufgefallen: meiner Meinung nach ist die Steuerung etwas verzögert, fühlt sich jedenfalls seltsam an. Ich hab einfach die Kursortasten für die Joystickrichtungen eingestellt.

    das kann viele Gründe haben.

    - liegt es an deiner Hardware ? empfindest du das bei anderen Emulatoren als schneller.

    - liegt es am Spiel? empfindest du die Verzögerung nur bei bestimmten Spielen ?


    Du könntest in der C64 Konfig unter Sonstiges die Eingabe-Abtastung auf dynamisch stellen und die Wartezeit reduzieren. Vielleicht reicht das ja schon.


    Wie schaltet man eigentlich zwischen PAL und NTSC um? Ich möchte, dass Denise in PAL-Geschwindigkeit läuft, bekomme aber immer 60 fps.

    PAL / NTSC ergibt sich durch die Auswahl des VIC-II Models unter dem Tab "System"

    Ich vermute du hast bereits einen PAL VIC aber diesen auf 60 Hz laufen.

    Klicke mal in der Status Zeile auf die FPS Anzeige und stelle dann auf 50 Hz um.

    nightly, baut gerade.

    Ich hab hier seit Denise 2.0 ein Problem mit den Dialogfenstern unter MacOS Ventura am M1. Egal ob Software laden oder Einstellungen - es passiert immer wieder, dass die Dialogfenster einfach nicht aufgehen. Meist passiert es, wenn man probeweise irgendein Programm aus dem Downloadordner einbindet und dieses danach löscht - dann kommt eine Fehlermeldung, dass das Programm nicht geöffnet werden konnte. Seit dem gehen die Dialogfenster auch nicht mehr auf. Ich muß dann die Einstellungsdatei C64 löschen, dann geht es wieder. Bis zum nächsten Programm, dass nicht geöffnet werden kann. Das ist echt öd.

    sehr guter Fund, passiert auch auf High Sierra und sicher allen anderen Versionen. Das zu zeitige Nachrichten Fenster verursacht das Problem mit den Settings Fenstern.


    Es ist jetzt so, dass beim Emu Start unter macOS keine Nachrichten Fenster mehr angezeigt werden.

    Beim App Start ist das auch ziemlich lästig. Erst bei einem erneuten Reset kommen diese Fenster, wenn gemerkte Images nicht mehr gefunden werden können.

    Das ziehe ich demnächst für Windows und Linux nach.

    nightly:

    ich habe nun einen neuen PC mit Windows 11. Dadurch sind mir 2 Dinge aufgefallen.


    1. Wasapi Audio Treiber funktioniert nicht mehr. Es klingt total verzehrt. Auf einer 2. Platte ist Windows 10 für die neue Hardware installiert und das Problem blieb bestehen. Tatsächlich begründet sich der Unterschied in einer veränderten Sound Hardware meines neuen Mainboards.

    Die Initialisierung von Wasapi ist nun überarbeitet und sollte mit sämtlicher Sound Hardware zu recht kommen.


    2. Leistungseinbrüche (nur C64) beim Warp oder runAhead wenn "Disk Emulation bei Bedarf" inaktiv ist.

    Grundsätzlich gibt es keinen Grund auf die Performance Vorteile von "Disk Emulation bei Bedarf" zu verzichten. Hierbei wird die Disk Emulation solange deaktiviert, bis der C64 wieder eine Kommunikation zu den Laufwerken versucht.

    Ich kann mich an kein Programm erinnern, was dadurch nicht funktioniert.


    Sollte man diese Option dennoch deaktivieren und die Laufwerke permanent mit emulieren, kann es auf schnelleren CPU's zu Leistungseinbrüchen bei Warp oder runAhead kommen.

    Das liegt an der Option "Disk Thread"


    Die Option Disk Thread wurde überarbeitet und hat nun 3 Zustände: Aus / An / An (veraltet)

    Es geht darum, wieviel Last der Emulator verursacht, wenn die Laufwerke im Leerlauf sind.


    An: ist nur sinnvoll, wenn man 3 oder mehr Laufwerke emulieren will oder "Disk Emulation bei Bedarf" nicht aktivieren möchte.

    Aus: empfohlen in Verbindung mit "Disk Emulation bei Bedarf"

    An (veraltet): holt auf langsameren CPU's mehr FPS beim Warp raus, kann modernere CPU's böse blockieren bei Warp oder runahead. und nur sinnvoll, wenn ein Laufwerk emuliert wird.


    Beim Amiga gibt es dieses Problem nicht, da die Laufwerke keine eigenständigen Computer mit eigener CPU sind und somit im Leerlauf keine nennenswerte Last verursachen.

    ja ich habe mir einen neuen Win11 PC zusammengebaut und ein paar Probleme festgestellt. Ich melde mich bald mit den Erkenntnissen.

    nur so viel schon, das Problem ist nicht Windows 11, sondern die deutlich höhere Takt Frequenz oder veränderte Architektur als mein alter 4 Kerner von 2011.

    und die veränderte Sound Hardware auf dem Board. Endlich kann ich nachstellen, warum beim manchen kaputtes Audio mit Wasapi entsteht.

    Win11 hat die gleiche Major und Minor Version wie Win10. Die beiden unterscheiden sich nur in der Build Nummer.

    Man hat wohl etwas das Design geändert um mal wieder Geld verdienen zu können. :-)