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

letzter Beitrag von frankyman1969 am

Denise C64 + Amiga Emulator

  • Feine Sache, ich mach das bei mir noch über nvidia Systemsteuerung, dauerhaft, da ich bei 1440p meist auch eh Fenstermodus nutze zum ausprobieren derzeit.

    Und ja, nutze ich natürlich auch für viele andere PAL Emulatoren, die können aber meist auch schon Vollbild automatisch auf 50 schalten.

    Ich musste für jedwede 50 Hz jedoch eigene Bildschirmmodi anlegen. Nutze einen WQHD Monitor (2560x1440).


    -


    Kann man denn die Nightlies parallel laufen lassen oder überschreiben die gegenseitig die ini Dateien oder ähnliches im %APPDATA% o.a.?

  • Kann man denn die Nightlies parallel laufen lassen oder überschreiben die gegenseitig die ini Dateien oder ähnliches im %APPDATA% o.a.?


    Ja, die Einstellungen sind dann immer gleich bei beiden, werden momentan dann noch überschrieben. Aber auch das wurde hier im Thread schonmal angesprochen, dass es schön wäre, wenn man sein ini-File auch einfach direkt in den Emu-Ordner umkopieren könnte und diese Version dann immer genau dieses, im Ordner befindliche, ini-File nehmen würde. Vielleicht kommt das auch noch irgendwann?


    Dann könnte man nämlich mehrere Versionen des Emulators zugleich auf dem Rechner haben, die man verschieden einstellt und ausserdem wäre es auch einfacher, wenn man den Emulator samt eigenen Einstellungen, vielleicht einmal auf einen anderen PC kopieren will, denn dann ist alles kompakt zusammen und kann dort direkt wieder so gestartet werden.


    Es sollte am besten so ablaufen, dass Denise beim Start einmal kontrolliert, ob sich denn ein "settings.ini" File direkt im selben Ordner wie die Emulator-exe befindet und falls dies der Fall ist, dann soll der Emulator immer dieses File nehmen, wenn Einstellungen geändert und gespeichert werden. Wird dort im Ordner kein "settings.ini" gefunden, dann soll Denise auch weiterhin das File unter "AppData/Roaming/Denise" verwenden, um die Einstellungen abzuspeichern. Genau so läuft es beispielsweise beim "Altirra" Atari 8-Bit Emulator ab (und ich glaube auch im WinVICE ist es so) und ich finde das eine gute Idee, denn dann kann sich jeder User aussuchen, wie er es am liebsten bei sich am PC haben will. Es kann ja auch Vorteile haben, wenn beispielsweise eine neue Version des Emulators die man das erste Mal startet, dann immer gleich schon von Anfang an richtig vorkonfiguriert ist, weil sie ein allgemein zugängiges ini-File unter AppData/Roaming/Denise findet, welches man schon für die alte Version nach seinen Wünschen eingestellt hat. Das werden auch wieder ein paar Leute bevorzugen, während andere lieber die alternative Variante mit getrennten, mehreren ini-Files wollen. Und mit der beschriebenen Methode, könnten beide Gruppen voll zufrieden sein.



    Übrigens, "Ferkels Willem" falls du es irgendwie herausbekommen solltest, wie man in diesem NirCMD das laden eines Programms direkt in einer Kommandozeile verknüpfen kann mit dem gleichzeitigen Umschalten auf 50Hz, dann könntest du mir das mitteilen, denn das hab ich bislang damit noch nicht hinbekommen. Ginge dies nämlich, dann würde ich meiner Denise-Verknüpfung am Desktop, den NirCMD-Umschaltbefehl auf die 50Hz direkt hinzufügen und es würde dann automatisch umgeschaltet, wenn ich nur die Denise Verknüpfung doppelklicke. Ich hab da schon recht viel rumprobiert, es aber noch nicht geschafft, dass dies in einem Zug klappt, weshalb ich halt vor der Nutzung von Denise immer erst einmal das 50Hz Symbol anklicken muss. Okay, ist jetzt auch nicht viel Arbeit *lol*, aber könnte man es direkt verknüpfen, dann müsste man als User halt zukünftig gar nichts weiter mehr machen, als nur das Programm ganz normal per Verknüpfung zu starten und es wird automatisch auf die 50Hz geswitcht. Wäre natürlich noch besser. :)

  • Ja, vor allem jetzt in der Entwicklung macht das vielleicht Sinn.

    Aber will jetzt nicht auch noch die Features im kleinsten weiterdiskutieren. Das wurde hier denke ich mal schon zur Genüge getan.


    Danke für die Info jdf.!


    -


    Wenn ich was finde bzgl. nicht lauffähig Denise ./. lauffähig Vice, G64 oder dem "Warp" Mode, werde ich mich melden. Ich nutze btw. nur den normalen, nicht den aggresiven Warp.

    Stelle mir grade Kram für meine U2 zusammen, da teste ich vieles.


    Eine letzte Frage hätte ich noch: Wie komme ich geschickt an ein "positional Layout" für die Tastatur?

  • Wenn ich was finde bzgl. nicht lauffähig Denise ./. lauffähig Vice, G64 oder dem "Warp" Mode, werde ich mich melden. Ich nutze btw. nur den normalen, nicht den aggresiven Warp.

    Stelle mir grade Kram für meine U2 zusammen, da teste ich vieles.

    ok das würde sehr helfen, gerade bei G64.

    Wenn du nur den normalen Warp Modus benutzt, sollte die interne Emulation niemals beeinträchtigt sein. Vielleicht meinst du auch was anderes als ich verstanden habe. Der Warp Modus lässt hier nur ein paar Frames aus also überträgt diese nicht an die Grafikkarte. Außerdem wird der SID Filter nicht emuliert. Ein nicht emulierter SID Filter kann die interne Emulation in keinster Weise gefährden, da die Ergebnisse daraus nicht zurück gelesen werden können.

    Eine letzte Frage hätte ich noch: Wie komme ich geschickt an ein "positional Layout" für die Tastatur?

    Es gibt dafür kein vorgefertigtes Layout. Jedoch kann in Denise alles frei gemappt werden.

    Ich empfehle aber damit zu warten bis das Feature 'mehrere Settings Files speichern/laden' fertig ist. Ansonsten müsstest du aufwendig neu mappen, wenn du zwischendurch doch wieder das symbolische Layout möchtest.


    Ja, die Einstellungen sind dann immer gleich bei beiden, werden momentan dann noch überschrieben. Aber auch das wurde hier im Thread schonmal angesprochen, dass es schön wäre, wenn man sein ini-File auch einfach direkt in den Emu-Ordner umkopieren könnte und diese Version dann immer genau dieses, im Ordner befindliche, ini-File nehmen würde. Vielleicht kommt das auch noch irgendwann?

    Das passiert mit dem Ticket: 'mehrere Settings Files speichern/laden'. Da kann der User dann derartiges Verhalten beeinflussen.

  • Passt das alte von vice nicht?

    Das hat bei mir noch nie gepasst, weil da Keys verwendet werden, die auf meiner Notebook-Tastatur gar nicht vorhanden sind, nämlich die Tasten oberhalb des abgesetzten Cursorblocks. Das sollte man doch irgendwie besser hinbekommen.

  • ok neues nightly:

    - im Vollbild wird sich vor dem Öffnen des File Dialogs per Hotkey gemerkt ob der Maus Cursor sichtbar ist und dann nachdem Schließen dieser Zustand wieder hergestellt.

    - da gab es in einigen OS'es noch einen Bug, wenn der File Dialog per Hotkey geöffnet wurde. Hier wurde bei jeder Aktion außerhalb des Dialoges der File Dialog erneut geöffnet. gefixt

    - neues feature laut Ticket


    In dem Ticket geht es darum, dass wenn der Rahmen voll sichtbar ist einige VIC Modelle eine linke vertikale Linie einblenden. Diese Linie ist auf einem TV bzw. Monitor nicht sichtbar, da jeder CRT eine gewisse Menge Overscan aufweist, also ein Teil des Bildes weggeschnitten wird. Einige Monitore jedoch ermöglichen es, das komplette sichtbare Bild anzuzeigen. In Denise muss dazu 'Rahmen abschneiden' deaktiviert werden.

    Es sind 2 Arten dieser vertikalen Linie bekannt:


    1. komplett weiß. Eine Weile ist die Linie ein Pixel stark und dann sind es 2 Pixel. Wenn die Linie nur ein Pixel stark ist, sieht man sie kaum, wenn PAL Emulation aktiviert ist. So verhält sich das auch auf einem richtigen TV, siehe Video am Ende des Postings.


    2. Die Linien Farbe wird aus Color Register 0x23 oder 0x24 heraus gelesen. Außerdem ist sie eine Zeit lang nicht stabil. Einige Pixel blinken. Diese sind relativ nah beieinander. Ich habe das weitestgehend nachgebildet. Dieses Verhalten ist analog und Temperatur abhängig. In dem Video sieht man, das im Spiel die Linien Farbe auf Cyan wechselt. Dieses befindet sich zu dem Zeitpunkt in Register 0x23 und 0x24. In DIESEM Basic Screen ist die Linien Farbe hellrot, im normalen rot oder cyan.

    Und jetzt kommt die Unbekannte. In dem Beispiel im Video ist das kein Standard Basic Screen ? Woher kommen die Zahlen: 1 2 3 4 5 6 7 8 ?

    Wenn ich das wüsste, könnte ich wahrscheinlich sagen ob das Farb-Register 0x23 oder 0x24 in Verwendung ist.


    Video


    Das Feature kann unter Systemverwaltung aktiviert werden.

  • Mir ist noch eine Sache aufgefallen:


    Wenn ich ein G64 auf Denise ziehe, dann öffnet sich das Dialogfenster, wo ich das eingelegte Image sehen kann.
    Dort kann ich im Image auf ein PRG klicken, aber ich kann kein Disk Autostart mit LOAD":*",8,1 auslösen (wie z.B. aus dem File Dialog).

    Das ist ein Problem, weil einige Originalspiele ein modifiziertes Directory haben, wo es nichts zum anklicken gibt.
    Ich hätte in dem Dialog auch gerne einen Auto-Start button (z.B. neben dem Eject button)

  • Das ist ein Problem, weil einige Originalspiele ein modifiziertes Directory haben, wo es nichts zum anklicken gibt.

    nicht mal die Kopfzeile mit dem hellblauen Hintergrund? Diese löst bei Doppelklick ein Load "*" aus.

    Ok ich packe einen Autostart Button mit dazu.

  • Auch gelöst ist nun das mit dem Mauszeiger, der gemeinsam mit dem Multi-Loader immer wieder verschwindet. Eben ausprobiert. Passt. Cool.



    "PiCiJi", ich habe mir sehr gute Dauerfeuer-Funktionen für den Denise überlegt, im Verlauf der letzten Woche. Mehrfach dann noch daran gefeilt und das ist nun ausgereift und bietet wirklich alles, was das Spielerherz begehrt in der Hinsicht.

    Soll ich diese Vorschläge noch zurückhalten bis andere Sachen fertig sind im Denise, oder soll ich sie schon mal ausführlich beschreiben, samt Screenshots dazu, die zeigen, was man alles damit machen kann?

  • Soll ich diese Vorschläge noch zurückhalten bis andere Sachen fertig sind im Denise, oder soll ich sie schon mal ausführlich beschreiben, samt Screenshots dazu, die zeigen, was man alles damit machen kann?

    Danke dafür. Bitte halte diese noch zurück. Es kommt bald das nächste Release. Danach ist Run Ahead an der Reihe. Einige warten schon sehr lange darauf.


    1.0.8

    - Run Ahead

    1.0.9 (weitere User Tickets)

    - eigene Settings speichern/laden

    - 50 Hz für Vollbild vorbereiten

    - ....

  • Ich habe ja die letzten Nightlies unter OSX 10.11.6 ausprobiert. Dabei ist mir aufgefallen, dass die Prozessorauslastung schwankend um die 100% liegt und das Framerate und Audio stark schwanken. Zum Vergleich mit Vice 2.4 liegt die Prozessorauslastung bei rund 14%.

    Hardware ist ein iMac mit DualCore 2,93GHz.

  • Ich habe ja die letzten Nightlies unter OSX 10.11.6 ausprobiert. Dabei ist mir aufgefallen, dass die Prozessorauslastung schwankend um die 100% liegt und das Framerate und Audio stark schwanken. Zum Vergleich mit Vice 2.4 liegt die Prozessorauslastung bei rund 14%.

    Hardware ist ein iMac mit DualCore 2,93GHz.

    das ist jetzt schwer zu vergleichen. Hast du den Vice x64 oder x64sc verwendet ? Letzterer ist die Zyklen akkurate Version, natürlich zu Zeiten von Vice 2.4

    Generell benötigt Denise mehr Cpu Ressourcen als Vice.

    Hast du alle Performance Killer in der C64/Systemverwaltung von Denise deaktiviert ? (rot dargestellt)

    Hast du mehr als ein Disketten Laufwerk unter C64/Systemverwaltung ausgewählt ? Jedes weitere benötigt mehr Power, egal ob eine Disk drin liegt oder nicht. Das liegt daran, dass ein Disketten Laufwerk wenn angeschlossen verfügbar ist und die CPU der Laufwerke theoretisch für andere Sachen als Disketten Laden verwendet werden könnte.

  • - Performance Killer: Es war nur ein Laufwerk ausgewählt, alle andern Killer waren abgewählt. Ohne Laufwerk, dafür mit Tape -> 50% Prozessorauslastung
    - Unter Vice 2.4 war es x64


    x64sc Vice 2.4: 35% Prozessorauslastung

    x64sc Vice 3.4 sdl2: 50% Prozessorauslastung

  • tom64

    Du schriebst was von schwankenden frames. Ist Audio Sync und/oder VSync aktiviert? Beide Sync Optionen abzuschalten, führt dazu das er so schnell läuft wie er kann. Das kann bei einigen Rechnern, je nach Energie Einstellung, dazu führen, dass wenn diese heiß laufen, gedrosselt wird. Bei meinem MacBook Air ist das schön zu beobachten, wie die Frame Zahlen springen. Er läuft heiß, drosselt, kühlt wieder ab, fährt wieder hoch, läuft wieder heiß, ...

    Beide Sync Optionen zu deaktivieren ist nur um zu schauen, wie hoch der Ofen dreht. Ich nutze dass um zu schauen wie hoch Performance Verbesserungen ausfallen.

    Das ist aber nicht mit dem Warp Modus zu verwechseln. Der Warp Modus stellt auch alle Sync Optionen ab und noch Teile der Emulation bzw. Präsentation (Audio/Video).

  • tom64

    Du schriebst was von schwankenden frames. Ist Audio Sync und/oder VSync aktiviert? Beide Sync Optionen abzuschalten, führt dazu das er so schnell läuft wie er kann. Das kann bei einigen Rechnern, je nach Energie Einstellung, dazu führen, dass wenn diese heiß laufen, gedrosselt wird. Bei meinem MacBook Air ist das schön zu beobachten, wie die Frame Zahlen springen. Er läuft heiß, drosselt, kühlt wieder ab, fährt wieder hoch, läuft wieder heiß, ...

    Beide Sync Optionen zu deaktivieren ist nur um zu schauen, wie hoch der Ofen dreht. Ich nutze dass um zu schauen wie hoch Performance Verbesserungen ausfallen.

    Das ist aber nicht mit dem Warp Modus zu verwechseln. Der Warp Modus stellt auch alle Sync Optionen ab und noch Teile der Emulation bzw. Präsentation (Audio/Video).

    AudioSync war an, VideoSync war aus. Ich habe AudioSync auch abgeschaltet. Ergebnis:

    - mit disk, ohne tape: fps 22-64, Prozessorauslastung 100%

    - ohne disk, mit tape: fps 61-95, Prozessorauslastung 73%

  • AudioSync war an, VideoSync war aus. Ich habe AudioSync auch abgeschaltet. Ergebnis:

    wie gesagt, beides auf 'Aus' macht keinen Sinn für den Normal Betrieb. Ich schätze der Rechner ist nicht leistungsstark genug für Denise. Für eine Performance Version fehlt mir aktuell die Zeit.

  • neues nightly:

    • die Anomalie der linken vertikalen Linie im Overscan Bereich ist nicht im 1. und 2. Pixel, sondern 2. und 3. gefixt
    • endlich können Dateien, die im Betriebssystem als 'read-only' markiert sind, geöffnet werden
      • in dem Fall ist immer der Schreib-Schutz gesetzt und ausgegraut, genau wie bei Dateien aus Archiven
      • hat eine andere Anwendung die Datei im Besitz, kann diese nun lesend von Denise geöffnet werden
    • ab jetzt werden eingelegte Dateien Nicht schreib-geschützt eingelegt
    • unter Einstellungen gibt es eine neue Option: 'Schreibvorgänge bestätigen'
      • wenn gesetzt, wird beim Auswerfen der Datei, Reset, Emulation beenden und Emulator beenden, gefragt ob permanent geschrieben werden soll.

    zur Erklärung:


    Diskette und Flasher

    Geschrieben wird nur, wenn der Schreibschutz raus ist. Durch die Option 'Schreibvorgänge bestätigen' in den Einstellungen hat man die Möglichkeit, das tatsächliche Speichern zu verhindern.

    Aus Sicht der Emulation findet der Schreibvorgang tatsächlich statt, wenn der Schreibschutz nicht gesetzt ist.

    Auf diese Weise läuft die Emulation mit und ohne Schreibschutz korrekt und man hat dennoch die Möglichkeit das Speichern zu verhindern. Ich habe es mit 'Jake the Snake' probiert.


    Tape

    Hier findet der Schreibvorgang nicht beim Auswerfen statt, sondern immer wenn 10k im Puffer angelaufen sind. Die Frage nach permanenten Speichern kommt also nach den ersten 10k. Die Frage erscheint jedoch nur einmal um nicht lästig zu werden. Datei Größen von Tapes können sehr schnell ansteigen. Vielleicht stelle ich das irgendwann um, das alles am Ende gespeichert wird.


    für alle

    Ist eine Datei schreibgeschützt (Checkbox im Software Menu), kommt keine Frage zum permanenten Speichern beim Auswerfen der Datei, da es keine Änderungen gibt. Andernfalls ist es nicht möglich den Schreibschutz bei einer Diskette korrekt zu emulieren.

    Ist der Schreibschutz nicht gesetzt und die Frage abgeschalten, wird am Ende automatisch gespeichert.

  • Super. Ich werde bei mir dauerhaft "Schreibvorgänge bestätigen" eingestellt lassen, das finde ich am besten.


    Man könnte zwar auch vorsichtshalber einmal eine Sicherheitskopie aller Diskimages erstellen und dann immer direkt schreiben lassen auf alle Images, also wie es bei einem echten 1541 Floppy der Fall ist, aber trotzdem finde ich es besser, wenn der Emulator vorher immer erst nochmal nachfragt, ob man denn auch wirklich speichern will. Und dass DENISE jetzt, im Gegensatz zum CCS64, zusätzlich auch beim Beenden des Emulators, dann vorher nochmal nachfragt, ist wirklich gut und macht Sinn. So kann man nicht vergessen, dass noch nicht gespeichert wurde.


    Hab es noch nicht ausprobiert, aber das werde ich jetzt dann im Verlauf des Abends machen. Auch wie es bei Tapes gelöst wurde, finde ich erstmal sinnig und gut, wobei ich da, Mangels Erfahrung mit echter Tape-Hardware am C64, nicht wirklich viel mitreden kann.



    Eine kleine Bitte hätte ich noch. Ich schalte ja immer diese Vollbild-Frame-Anzeige an, damit ich immer sehen kann, dass dauerhaft die 50FPS gehalten werden und ausserdem mag ich ich die Disk-Wechsel-Anzeige mit dem Fileneman dazu. Das finde ich echt gut gelöst. Da sich der FPS-Wert bei mir hier so gut wie nie ändert, stört mich das auch nicht wirklich, wenn dieser immer am Screen zu sehen ist. Ich habe festgestellt, dass es bislang scheinbar aber nicht geht, diese FPS-Anzeige aktiviert zu lassen, aber die Floppy-Lese-Anzeige abzuschalten. Und diese Lese-Anzeige stört mich, ehrlich gesagt, da sie so auffällig agiert, sprich, sie immer komplett eingeblendet wird, wenn gelesen oder geschrieben wird, dann aber wieder komplett verschwindet, wenn nicht gelesen wird. Da tauchen dann immer mehrere Wörter und Buchstaben zugleich auf und verschwinden dann wieder und wenn das passiert, dann wandern meine Augen, etwa wenn ein Nachlade-Demo läuft, immer wieder zu dieser Floppy-Lese-Anzeige, obwohl ich das eigentlich gar nicht will. Das lenkt mich immer irgendwie ab.


    In den "allgemeinen Optionen" habe ich gesehen, dass man zwar so Sachen wie den "Audio-Puffer" einzeln in der Vollbild-Anzeige an und aus schalten kann, aber leider diese Lese-Anzeige bislang nicht einzeln deaktivieren kann, während die FPS Anzeige stehenbleibt. Entweder schaltet man beides ein, oder man schaltet beides aus. Könnte man das vielleicht dort noch mit einfügen, dass die Floppy-Lese-Anzeige einzeln deaktivierbar ist?


    Das könnte man ja vielleicht als Punkt namens "Floppy-Status anzeigen" mit in die "allgemeinen Optionen" reinpacken, etwa neben dem Punkt "Audio-Puffer anzeigen".


    Prima wäre, wenn auch bei ausgeschalteter Floppy-Lese-Anzeige, dann aber trotzdem immer noch angezeigt werden würde, wenn man ein Diskimage wechselt per Diskwechsler, also das mit dem Namen des neu eingelegten Files. Das finde ich nämlich echt super, mich stört nur diese Floppy-Lese-Anzeige, weil da immer gleich soviele Wörter zugleich ein oder aus geblendet werden, wenn vom Floppy gelesen wird. Ganz abschalten will ich die Vollbild-Anzeige aber auch nicht, weil ich gerne den FPS-Wert immer eingeblendet hätte, auch wenn sich dieser eigentlich nie ändert. :)