Hello, Guest the thread was viewed65k times and contains 325 replies

last post from captain_buck_rogers at the

Virtual C64 nun im Web und mit CSDB-Browser

  • SkulleateR

    ok habs glaube ich gefunden und gefixed. Das ist ein Bug in Safari.:S Wenn es von tabbed in fullscreen geht dann löst safari das visibility-change hidden event aus ... das ist doch falsch oder ? weil es wird ja fullscreen und das ist auch sichtbar also visible. Die anderen Browser machen es richtig.


    Um den Bug zu umschiffen habe ich in diesem Fall gesagt, dass es dann nicht muten soll.


    Müsste dann jetzt auch in Safari prima gehen mit dem Wechsel auf Fullscreen und das der Ton auch anbleibt und man nicht nochmal extra drücken muss.


    das hast du aber gut gefunden :thumbup:... danke

  • vc64web update


    vc64web kann jetzt den kompletten Bildschirm moderner iPhones also auch alles um die Notch und das dynamic island herum.




    Der virtuelle touch joystick wurde visuell komplett überarbeitet. Es gibt jetzt verschiedene Arten und auch eine konfigurierbare deadzone. Die deadzone ist praktisch ein bisschen wie das Spiel was unsere alten Joysticks hatten bevor sie eine Richtung ausgelöst hatten. Mehr deadzone = unempfindlicher, weniger deadzone = sensitiver...







    Man kann jetzt eigene Tastaturmappings definieren für alles mögliche z.B. Meta+R => Runstop, Alt+J => swap joystick ports, Alt+S => save snapshot. Das schließt auch Joystick Aktionen mit ein... Auch beliebige Tastatur Kombinationen sind möglich also z.B. CTRL+ALT+SHIFT+Enter => Runstop+Restore oder sowas.





    komplette Versionshistorie unter https://vc64web.github.io/doc/index.html

  • Ich habe eine Idee/Frage zu dem Dialog "System ROMS", wo man die vier ROM-Dateien hochladen kann.

    Angenommen, man möchte nicht die OpenROMs benutzen oder die OpenROMs mit einem Floppy-ROM bündeln, dann würde ich folgendes gut finden: Vermeiden, dass man bis zu vier mal ein ROM hochladen muss, sondern neben den vier Einzel-Uploads anbieten, dass man alles in einem Datei-Paket hochladen kann. Entweder ein Zip-Archiv, in dem vier Dateien drin sind, oder eine Datei, die vier ROM-Dateien hintereinander konkateniert. Einziges Problem dabei ist, dass man den Typen des ROMs erkennen muss, falls der Dateiname nicht eindeutig ist.


    Meine Vorstellung wäre: Ich nehme meine vier Lieblings-ROMs, packe sie an einen Ort und sage dann dem vc64web eine URL, wo er sich die runterladen soll.

  • vc64web hat ein komplett neues virtuelles Keyboard bekommen


    + benutzerdefinierte Tastengröße


    + automatische Berechnung der Tastengröße, so dass alle Tasten die komplette Bildschirmbreite ausfüllen


    + Soundrückmeldung für Tastenanschläge (kurze Tok- und Fump-Geräusche, für verschiede Tastenarten)


    + kurze 15ms Vibrationsstöße bei Tastenanschlag (für Geräte, die dies unterstützen)


    + einstellbare Transparenz bei Landscape des Hostgerätes (dann kann man unter der Tastatur sehen was man schreibt)


    + exakte/konsistente Positionierung der Tasten dank moderner CSS3 Grid Technik.


    + einstellbarer Abstand zum unterem Bildschirmrand (so dass die Tastatur über der Homebutton Anzeigenleiste / home indicator bar schwebt)



    Anbei Impressionen auf meinem iPad


    (mit eingestellten 20px Abstand zur weißen HomeButton Bar am unteren Rand)



    Und hier iPad / Landscape mit aktivierter Transparenz 80%



    emulaThor das mit dem Hinweis alle 4 c64er System-ROMs in ein zip zu packen und auf einmal in vc64web reinladbar zu machen, ist eine gute Idee… werde ich umsetzen

  • Impressionen von vc64web auf Apples Vision Pro Brille



    wozu braucht man so eine Apple Vision Pro?

    damit kann man in der Küche beim Kochen Rezepte immer im Blick behalten und trotzdem mit den Händen frei arbeiten...



    Spiele müssten auch gehen muss ich später mal ausprobieren...

  • Ich wollte mal ein dickes Danke da lassen für deine Arbeit. :love:

    Nachdem ich herausgefunden habe, wie man die Action Buttons richtig konfiguriert, so dass Run/Stop und die anderen Special Keys ordentlich funktionieren, nutze ich VC64web fast schon lieber als alles andere.

    Vor allem unterwegs am iPad mit dem 8Bitdo Micro Controller.


    Meine Lösung für die SpecialKeys ist wirklich einfach :D

    pressrunStop=>await_action_button_released=>releaserunStop


    Vor allem der Guide, um vc64web selbst zu hosten ist wirklich super. Da ich sowieso Hardware hier habe, die 24/7 läuft, war es kein Problem noch einen LXC aufzusetzen und den Spaß aufzusetzen.

    Keine Fehlermeldung, der make Prozess lief beim ersten mal wunderbar durch.


    Ach, eine Anregung hätte ich noch:

    Kannst du in den Settings die "keycap size" Größen noch etwas ausdehnen? Evtl. mit einem Slider von 0.2 bis 1.3?

    Hintergrund ist, dass die Tastatur am "normalen" Rechner dann exorbitant groß erscheint :D

  • Davidorado

    Wow, dass freut mich, endlich findet auch mal einer die Action Buttons gut ! 😍 Eigentlich hatte ich sie zuerst nur dafür gebaut, um einzelne Tasten auch auf Touchscreengeräten wie etwa iPhones/iPads ohne angeschlossene physikalische Tastatur auf dem Bildschirm als Schaltflächen sichtbar zu machen... für viele Spiele braucht man ja meist nicht mehr als eine handvoll Tasten... dann aber hab ich mich da voll exzessiv reingesteigert 😬 und man kann mittlerweile mit den ActionButtons alles möglich machen... z.B. auch bestimmte Tastaturkombinationen auf echten Tastaturen ummappen oder auch mit Spezialaktionen hinterlegen... oder ein Programm hinterlegen, welches die Joysticksteuerung übernimmt... oder rechts links antäuschen und dann Dauerfeuer oder so was kann man damit auch bauen.


    das mit den weiteren Werten bei "keycap size" bau ich dir ein...


    du kannst das natürlich auch selbst mit einem Javascript-Befehl in einem Actionbutton schon vorher ausprobieren... hier anbei der Befehl für 0.4


    Code
    1. document.querySelector(':root').style.setProperty('--keycap_zoom', 0.4);

    Die Größe der Tasten wird ja generell anhand der Bildschirmbreite bzw. bei Desktop anhand der Fensterbreite angepasst. D.h. je breiter desto größer... Die keycap_size in den Settings wird dann als Faktor dadrauf gerechnet. D.h. ich nehme mal an du hast einen ganz breiten Bildschirm...


    Kannst du mal mit dem Befehl nachschauen, ob du wirklich 0.2 brauchst, oder ob 0.4 oder 0.3 schon ausreicht ?

  • auch bestimmte Tastaturkombinationen auf echten Tastaturen ummappen oder auch mit Spezialaktionen hinterlegen

    Ja, das hatte ich vor einer Weile schon bei einem der Ultima Teile gemacht. Da konnte man die Richtungstasten nicht gedrückt halten, sondern musste sie immer wieder drücken. Dort kamen die Action Buttons wie gerufen. :thumbsup:

    Du hast für viele Szenarien ja schon Beispiele hinterlegt, das ist ungemein hilfreich :love:


    du kannst das natürlich auch selbst mit einem Javascript-Befehl in einem Actionbutton schon vorher ausprobieren... hier anbei der Befehl für 0.4

    Ja natürlich! Da hätte ich auch selber drauf kommen können. Ich kann ja sogar einen 'alert("Hallo User");' schicken. Wer braucht IDEs, wenn ich VC64Web habe? ROTFL

    Aber mit 0.4 liegst du schon goldrichtig, das passt für meinen FullHD 24 Zöller perfekt.

    Ich habe das für die Tastatur-Transparenz auch gleich noch probiert und fahre mit 0.85 (=also 15 %) da am besten.


    document.querySelector(':root').style.setProperty('--keyboard_opacity', 0.85);

  • Davidorado ich habe deine Favoritenwerte in die Settings mit eingebaut :thumbup: ... also zoom 0.4 bei den Tastenkappen und 0.15% bei der Transparenz des Keyboards


    ja Actionbuttons sind cool... ich such dir mal in den nächsten Tagen den Ziel-Bot für das Spiel Falcon Patrol 2 heraus ... der hatte nach feindlichen Sprites gescanned und dann die Gegner gezielt abgeschossen...


    hier waren ein paar Bilder von dem ActionButton mit ZielBot Code in Action...


    Falcon Patrol II Ozisoft 1984


    ich muss schauen, wo ich das kleine Steuer-Programm noch habe...

  • Davidorado

    Nach etwas Recherche habe ich das Bot-Programm für Falcon Patrol2 wiedergefunden 😊


    Das Bot-Programm im ActionButton übernimmt komplett die Kontrolle, lässt aber auch gleichzeitig manuelles Eingreifen/Lenken zu…


    Im folgenden Video sieht man, wie das Flugzeug durch den Bot-Code gelenkt wird. Wenn manuell gelenkt oder gefeuert wird sieht man das, weil ich den Touch Joystick in Port1 ausgewählt habe anhand des Screenoverlays der virtuellen Steuerkreuzes bzw. Feuerkreises. Also anders gesagt, nur wenn man den virtuellen TouchJoystick Overlay sieht, dann habe ich manuell eingegriffen, alles andere hat die Bot-Logik erledigt.

    [External Media: https://youtu.be/Epon1JsyNsE]



    Und hier das Action-Programm, welches ich in den ActionButton eingefügt habe.



    vc64web hat drei neue System Actions bekommen, die man einem ActionButton hinzufügen kann. Und zwar sind das


    datasette_play


    datasette_stop


    datasette_rewind


    Damit kann man sich, wie anbei gezeigt, die Datasetten-Tasten mit ins Menuleiste aufnehmen.


  • letztes Update für vc64web vor Migration auf Version 5 ...


    +parallele Installationen verschiedener Versionen des VirtualC64-Emulationskerns


    Um eine optimale Vorbereitung für den in Kürze kommenden 5.x-Emulationskern zu gewährleisten, unterstützt vc64web die parallele Installationen verschiedener Versionen des VirtualC64-Emulationskerns.


    Warum ?


    Mit einem 4er-Emulationskern erstellte Snapshots sind mit der kommenden Version 5 nicht kompatibel.


    Also falls ihr noch geliebte Spielstände habt, die ihr erst noch fertigspielen wollte, dann updated die momentane aktualisierte 4er Version. Sodass es ihr beruhigt auf die kommende 5er upgraden könnt.


    Um alte Snapshots dann auszuführen, könnt Ihr im Einstellungsdialog einfach eine ältere installierte Version des Kerns auswählen.


    Wenn eine neue Version von vc64web veröffentlicht wird, erhaltet Ihr mit dem Update ab jetzt auch eine Benachrichtigung in der App.


    Ausblick:


    v5 von vc64web wird unterstützen


    +GeoRAM

    +REU

    +run ahead

    +...

  • Cool! Für die REU wäre es für manche Anwendungsfälle wichtig, dass man das RAM der REU mit einer Image-Datei vorbefüllen kann.


    Ein Spiel wie Sonic für den C64 packt zwar den REU-Inhalt beim Spiel-Laden von der Diskette aus, aber alle Anwendungen, die insofern schummeln, als dass sie dem modernen User mit 16 MB REU-Emulation ein leichtes Leben machen wollen, bringen quasi zwei Dateien mit: Ein PRG und ein REU-Image (meist 16MB groß, aber manchmal auch nur 512KB).


    Nuvie-Videos sind eigentlich immer 16MB-REU-Images + das Nuvie-Player-PRG. Von daddlertl gibt es dann auch mindestens zwei Medienformate (Koalavideo + Breadamp), wo man die REU-Images mitbekommt.


    Hier wären zwei Sachen denkbar:

    • Der User hat eine Zip-Datei, wo zwei Dateien drinliegen, ein PRG und ein IMG. Wenn man das droppt auf den Emulator, dann wird automatisch die REU aktiv geschaltet, das IMG wird in die REU geladen und das PRG wird gelauncht.
    • Der User droppt ein 16 MB IMG auf den Emulator und dieser schaut rein in das Image und erkennt an ein paar Bytes innen drin, dass es ein Nuvie ist. Dann wird automatisch der generische Nuvie-Player als PRG vom Emulator geladen, den er irgendwo archiviert hat.
  • captain_buck_rogers


    Kann es sein, dass die Track Anzeige oben links nicht mehr funktioniert ?(



    ... und die Demo 13:37 crasht direkt zu beginn und zwar so dass ich nichtmal einen Reset des virtuellen C64 machen kann, ich muss dann immer den kompletten Tab schliessen und neu öffnen (und ich bin mir eigentlich sicher, dass ich mir die Demo schon ohne Probleme im vc64web abgeschaut habe) -> https://csdb.dk/release/?id=242855


    PS : Irgendwas scheint mit den Diskzugriffen auch nicht ganz ok zu sein, bei Wonderland XiV gibt es zahlreiche "Sprünge" in der Musik und den Animationen, merkt man gut im "Kiss" Teil (Disk 3) und bei den Lyrics (Disk 4), der letzte Part ist nahezu nicht schaubar (ging mMn in den vorherigen Versionen von vc64web ohne Probleme) -> https://csdb.dk/release/?id=232980

  • Ich habe die Demo in der Desktop-Version getestet. Mit den Standardeinstellungen hängt die CPU nach ein paar Sekunden. Die Demo mag das Floppy-Idle-Feature nicht:



    Wenn man die Option deaktiviert, läufe es durch. Ich habe allerdings nicht die ganze Demo getestet, sondern nur die Stelle, an der die CPU mit den Standardoptionen hängen bleibt.