Yet Another Z80 Emulator by AG (YAZE-AG) final release 2.51.0

  • Hallo Z80- und CP/M-Freunde,


    ich hab die final release der Version 2.51.0 auf meine Web-Seite (http://www.yaze-ag.de) eingespielt.


    Ich habe die gesamte Dokumentation auf den neuesten Stand gebracht, auch yaze(1) die man page.


    Für diejenigen die Windows benutzen habe ich jeweils ein Installationspaket für 64 Bit und für 32 Bit erzeugt.
    Die gesamte Dokumentation kann über das Startmenü aufgerufen werden.


    Für die Raspberry Pi Besitzer sind für alle Versionen Makefiles dabei zum compilieren für die ARM-Prozessoren (64 Bit und 32 Bit).

    Mit ein paar Modifikationen laufen die Makefiles auch auf anderen ARM-Rechner.


    Die neuen Features:


    1.

    Ihr könnt mit dem Kommando "sys clock <Clockrate in kHz>" eine Clockrate definieren bei der dann der Emulator läuft. Beispiele: "sys clock 4000" definiert 4 MHz und "sys clock 0" definiert wieder die maximal mögliche Geschwindigkeit von deinem Rechner. Um permanent eine Clockrate zu definieren könnt Ihr ein Clock kommando in der .yazerc definieren. Beispiel "clock 8000" für 8 MHz. Es ist auch möglich eine X-beliebige Rate anzugeben, so z. B. "sys clock 3957" für 3,957 MHz.


    2.

    Ein "Window size Handler" bestimmt die Koordinaten (Spalten, Zeilen) von dem verwendeten Terminal Emulator (xterm, gnome-term, mintty(Cygwin/Windows), ...) und setzt die beiden Variablen "Lines" und "Columns" im SCB (System Control Block) von CP/M 3.1. Der von mir gepatchte Wordstar 4.00 (siehe Drive A:) und die Systemkommandos von CP/M 3.1 (type, dir, ...) verwenden diese über die standardisierte BDOS-Schnittstelle (call to 0005H) von CP/M 3.1.


    Wenn Ihr das Tar-Archive auspackt ist in der Directory "doc_html" die gesamte Dokumentation. Einfach auf "index.html" klicken um sie in einem Internet-Browser zu öffnen. Dort ist auch INSTALL-2.51.0 zu finden.


    Der Emulator ist sehr gut für Softwareentwicklung (Z80-Assembler, C, Modula2, SPL, ...), da er sehr schnell ist. Auf meiner schnellsten Maschine (mit "tigerlake"-Prozessor) läuft der Z80-Interpreter mit knapp über 5 GigaHerz. Also ein Z80 mit 5 GHz! :)


    Viel Spaß beim Compilieren und Benutzen des Emulators.


    Wenn Ihr fragen habt schickt mir einfach eine E-Mail an "development (at) yaze-ag (dot) de".


    Herzliche Grüße

    Andreas Gerlich (agl)

  • Auf meiner schnellsten Maschine (mit "tigerlake"-Prozessor) läuft der Z80-Interpreter mit knapp über 5 GigaHerz. Also ein Z80 mit 5 GHz! :)
    Viel Spaß beim Compilieren und Benutzen des Emulators.

    agl Gibt es ein Programm-Option/Anzeige, die anzeigt, wie schnell die aktuelle maximale Emulationsgeschwindigkeit auf dem jeweiligen System ist (inMHz/GHz)?


    Ich habe heute erflogreich YAZE-AG mit einem NanoPI K1 Plus (AllWinner H5-aarch64-CPU) compiliert.

    Dazu habe ich die ARMv8/64Bit-Version des Makefile kopiert und die OPTIMIZE-Zeile angepasst auf

    Code
    OPTIMIZE = -O3 -march=armv8-a+crypto+crc -mtune=cortex-a53


    Ausgelesen hatte ich die Vorgaben/Empfehlungen dafuer mit folgenden Befehlen:


    Code
    gcc -march=native -Q --help=target | grep -- '-march='
      -march=                               armv8-a+crypto+crc
    
    gcc -mtune=native -Q --help=target | grep -- '-mtune='
      -mtune=                               cortex-a53


    DANKE fuer die Option zur Beschraenkung der CPU-Geschwindigkeit - einige werden dies fuer Spiele brauchen.
    DANK auch fuer die gepatchte WS-Version, wobei ich noch keine Darstellungsprobleme in puTTY hatte bei mehr Spaltem als 99 ;)


  • fuer WinXP scheint die "YAZE v2.5.1 Win10 32Bit)" nicht mehr zu klappen :(

    Schade, waere noch ein sinnvoller Einsatz fuer einen XP-Rechner...


    Yaze bringt (im Gegensatz zu meiner 32Bit RunCPM-Version) folgenden Fehler:


    Liegt wohl daran, dass eine zu neue API angesprochen wird, die XP noch nicht hat.

    Leider wollte mein TDM-GCC 32Bit den Yaze nicht kompilieren :(

  • agl Gibt es ein Programm-Option/Anzeige, die anzeigt, wie schnell die aktuelle maximale Emulationsgeschwindigkeit auf dem jeweiligen System ist (inMHz/GHz)?

    Ich bin zur Zeit dabei die Version 2.51.1 zu erstellen in der mit einer kleinen Submitdatei und drei kleinen zusätzliche Utilities die Geschwindigkeit in MHz und GHz ausgedruckt werden. Bisher habe ich das zu Fuß mit dem Taschenrechner gemacht. Jetzt wird die Funktion dafür in YAZE-AG-2.51.1 integriert sein.


    Gruß Andreas (agl)

    Einmal editiert, zuletzt von agl ()

  • Für die Fans von der Wiederverwendung alter Raspberry PIs: http://www.projekte.daleske.de…PI/prog_EMUZ80_RPI_en.htm

    Damit kann auch ohne Linux quasi "bare metal" CP/M genutzt werden....


    Edit: Die Seite gibt es auch in Deutsch : http://www.projekte.daleske.de…0_RPI/prog_EMUZ80_RPI.htm

  • Für die Fans von der Wiederverwendung alter Raspberry PIs: http://www.projekte.daleske.de…PI/prog_EMUZ80_RPI_en.htm

    Damit kann auch ohne Linux quasi "bare metal" CP/M genutzt werden....

    Den hatte ich mir vor "Jahren" schon mal angesehen.

    Der wurde mit "Ultibo" erstellt

    https://ultibo.org/


    Ultibo gibt es wohl seit Mai 2021 auch fuer RPi4/400


    Als ich mir damals den CP/M Emulator angesehen hatte, versuchte ich ihn neu zu compilieren um die Schrift auf hell auf dunkel umzustellen... habe es damals aber nicht hinbekommen.


    Auch unterstuetzt er auch nur kleine Floppy-Images.


    Ultibo hat seit damals leider viel an Entwicklungsgeschwindigkeit verloren...

    Die Youtube-Erklaervideos waren damals(tm) sehr vielversprechend.