{"id":17338,"date":"2024-03-14T17:38:42","date_gmt":"2024-03-14T16:38:42","guid":{"rendered":"https:\/\/www.bernd-leitenberger.de\/blog\/?p=17338"},"modified":"2024-03-14T17:38:42","modified_gmt":"2024-03-14T16:38:42","slug":"der-schnellste-z80-rechner","status":"publish","type":"post","link":"https:\/\/www.bernd-leitenberger.de\/blog\/2024\/03\/14\/der-schnellste-z80-rechner\/","title":{"rendered":"Der schnellste Z80 Rechner"},"content":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_17338\" class=\"pvc_stats all  \" data-element-id=\"17338\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/www.bernd-leitenberger.de\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Bevor ich als N&auml;chstes einen weiteren Artikel &uuml;ber die <a href=\"https:\/\/www.bernd-leitenberger.de\/blog\/2024\/03\/08\/zwei-beispiele-fuer-eine-clusterung\/\">Clusterung<\/a> \u2013 diesmal dem sinnvollsten Einsatz bei einer Schwerlastrakete bringe, sei mir ein nostalgischer Artikel verg&ouml;nnt. Es geht um Computer, und was noch wichtiger ist, nicht heutige Computer, sondern die aus den Achtzigern. Dies als Vorwarnung. Alle die das nicht interessieren sollten nun woanders hin gehen.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vg08.met.vgwort.de\/na\/ea29b6b4d1d3428090b2abb17a2b90f7\" width=\"1\" height=\"1\" alt=\"\"\/><br \/>\nIch kam auf das Thema, weil ich seit einer Woche, den schnellsten Z80 Rechner besitze, der heute technisch m&ouml;glich ist, und wahrscheinlich der auch in Zukunft schnellste Z80 Rechner der Welt.<!--more--><\/p>\n<p>Es ist ein <a href=\"https:\/\/www.tindie.com\/products\/circlem\/min-ez-a-small-50-mhz-ez80-cased-system\/?pt=ac_prod_search\">Min-eZ <\/a>von Bill McMullen, der es auf Tindie anbietet. Ich habe von ihm schon vor zwei Jahren ein &auml;hnliches System auf Basis eines Z180 <a href=\"https:\/\/www.tindie.com\/products\/circlem\/minz-c-small-cased-33-or-36-mhz-z180-with-cpm\/\">gekauft<\/a>. Bei Tindie gibt es zahlreiche Retro-Computer Kits und auch Add-Ons daf&uuml;r wie Grafikkarten oder I\/O Karten. Als Grobmotoriker mit einer Sehschw&auml;che kenne ich meine Grenzen. So wkam ein Bausatz nicht infrage. F&uuml;r dieses Kit spricht f&uuml;r mich die kleine Bauform und die \u201eReady to use\u201c Philosophie.<\/p>\n<p>Der Rechner ist wirklich winzig und geht auch als &uuml;ber gro&szlig;er USB-Stick durch. Hier mal die reinen technischen Daten:<\/p>\n<ul>\n<li>eZ80 Prozessor mit 50 MHz<\/li>\n<li>256 KB internes Flash-ROM<\/li>\n<li>32 KB internes RAM<\/li>\n<li>2 MB externes RAM<\/li>\n<li>16 MB Flashspeicher<\/li>\n<li>Ethernet-Port<\/li>\n<\/ul>\n<p>SD-Karte als Massenspeicher<\/p>\n<p>Das ganze kostet, wenn man Versand und Zoll, MWST dazurechnet, in der Summe 200 Euro. Viel Geld f&uuml;r eine Plattform, die jahrzehntealt ist. Daf&uuml;r bekommt man zwei <a href=\"https:\/\/amzn.to\/3IA3WDx\">Raspberry-Pis<\/a> mit <a href=\"https:\/\/amzn.to\/3v1UR3b\">SD-Karte<\/a> und <a href=\"https:\/\/amzn.to\/3Vf7QZN\">Netzteil<\/a>. Aber ich wollte nach dem Mini-C System einfach diesen Rechner haben.<\/p>\n<p>Das erste waren daher Benchmarks, die ich laufen lies, wobei ich meine eingerosteten Assemblerkenntnisse aufw&auml;rmen musste. Alles in Assembler programmieren wollte ich nicht, aber bei CP\/M \u2013 das ist das Betriebsystem unter dem er l&auml;uft, hat Turbo Pascal als meine Lieblingssprache so wenige systemnahe Funktionen, das noch viel in Assembler einbinden muss. Minimal waren einige Zeilen Code f&uuml;r das Holen der Uhrzeit aus der Echtzeituhr n&ouml;tig. Den integrierten Watchdog Timer habe ich au&szlig;en vor gelassen, da h&auml;tte ich eine eigene Interrupt-Serviceroutine schreiben m&uuml;ssen.<\/p>\n<p>Das sieht dann so aus:<\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><b>procedure<\/b><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"> Rawtime; <\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><b>begin<\/b><\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><b>inline<\/b><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\">(<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>{<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>days extern<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>clock equ 46h<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>ld c,0<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>call clock<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>ld de,(days)<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>ld bc,5<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>ldir<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>ret<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><i>}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #000000;\"> <span style=\"font-size: small;\"><span style=\"font-family: DejaVu Sans Mono, serif;\">);<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: small;\"><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><b>end<\/b><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\">;<\/span><\/span><\/span><\/p>\n<p>Meein Asembler sucht nach inline Statements und partst dann alles was darin steht, die anderen Zeilen gibt er einfgach an die Ausgabe wieder. Die Kommentarzeichen sind ein kleiner Kniff damit man dne Quelltext ohne den Assemblercoe kompilieren kann er macht dann dies draus:<\/p>\n<p><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><b>procedure<\/b><\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"> Rawtime; <\/span><\/span><\/span><\/p>\n<p><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><b>begin<\/b><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><b>inline<\/b><\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">(<\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{days extern}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{clock equ 46h}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$0E<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$00<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/ <\/span><\/span><\/span><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{ld c,0}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$CD<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$46<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$00<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/ <\/span><\/span><\/span><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{call clock}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$ED<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$5B<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/DAYS\/ <\/span><\/span><\/span><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{ld de,(days)}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$01<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$05<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$00<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/ <\/span><\/span><\/span><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{ld bc,5}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$B0<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/<\/span><\/span><\/span><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$ED<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/ <\/span><\/span><\/span><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{ldir}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$C9<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">\/ <\/span><\/span><\/span><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{ret}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #800000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">$C9<\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">);<\/span><\/span><\/span><\/p>\n<p><span style=\"color: #000080;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><b>end<\/b><\/span><\/span><\/span><span style=\"color: #000000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\">;<\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{Symbols}<\/i><\/span><\/span><\/span><\/p>\n<p><span style=\"color: #008000;\"><span style=\"font-family: DejaVu Sans Mono, serif;\"><span style=\"font-size: large;\"><i>{CLOCK: $0046, DAYS: $FFFF}<\/i><\/span><\/span><\/span><\/p>\n<p>Kenner werden das &uuml;berfl&uuml;ssige RET erkennen. Das ist ein Workaround, weil Turbo Pascal sonst am letzten Slash in der Zeile vorher moniert, der automatisch erzeugt wird. Es ist doppelt unn&ouml;tig, denn Turbo Pascal f&uuml;gt selbst noch ein Ret ein.<\/p>\n<p>Daf&uuml;r hatte ich schon vor zwei Jahren einen Z80 Assembler in Pascal, den ich im <a href=\"http:\/\/z80.eu\/pas-compiler.html\">Internet fand<\/a> so umgeschrieben, dass er Inlinecode f&uuml;r Pascal erzeugt. Da Turbo Pascal 3.02 auch unter DOS verf&uuml;gbar ist und inzwischen gemeinfrei ist, kann ich so Programme erst unter Lazarus entwickeln, dann unter DOS oder einem CP\/M Emulator auf Kompatibilit&auml;t testen. Was nicht geht, ist nat&uuml;rlich den Assemblercode so zu testen.<\/p>\n<h4 class=\"western\">Das Mini-eZ System<\/h4>\n<p>Das System wird &uuml;ber ein Mini-USB Kabel an den PC angeschlossen. Dar&uuml;ber l&auml;uft die Kommunikation. Installieren muss man einen COM-Treiber, der es erlaubt, die USB-Schnittstelle als reine COM-Schnittstelle &uuml;ber welche die Daten mit 115.200 Baud &uuml;bertragen werden zu nutzen, andere Datenraten funktionieren nicht.<\/p>\n<p>Es bootet dann ein CP\/M 2.2 mit der Startmeldung:<\/p>\n<p><span style=\"font-family: Courier New, monospace;\">eZ80F91 @ 50MHz, PCB V1.2XM, S\/N=43<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">2MB RAM, 256B EEPROM, 16MB Serial_Flash+32KB MRAM<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Ethernet: IP address=192.168.40.53, MAC=FC-C2-3D-30-83-C6<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">A: RAMdisk 1944 KB<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">B: ROMdisk 224 KB<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">C: SD_card 8192 KB<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">O: Ser_FL_1 8192 KB<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">P: Ser_FL_0 8192 KB<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">CP\/M 2.2 63K (56K [+2K CCP] TPA) &#8211; BIOS V0.3 THU MAR 14\/2024 7:57:50<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">A&gt;<\/span><\/p>\n<p>Damit ist man schon im Retrozeitalter. Es laufen alle CP\/M Programme. Der Autor hat CP\/M 2.2 adaptiert, nicht CP\/M 3.0 das Banking unterst&uuml;tzt und noch ein paar Kilobyte in der TPA mehr freischaufelt, aber 56 K f&uuml;r die TPA sind okay, Das Min-C System hatte noch 1 KB mehr, aber das ist mehr als die meisten CP\/M Rechner hatten, die hatten typisch nur eine 52 oder 54 K TPA. Die 256 KB Flash ROM des EZ80 werden als RAM Disk benutzt, der Benutzer hat dann noch die Wahl, ob er weiteres SRAM oder MRAM haben will. Bei mir waren 16 MB Flash mit aufgel&ouml;tet, obwohl das eigentlich eine Upgradem&ouml;glichkeit ist, die 16 MB Flash und die SD-Karte werden als 8 MB gro&szlig;e Festplatten angesprochen. Mehr geht unter CP\/M 2.2 nicht. F&uuml;r junge Blogleser: CP\/M 2.2 erschien 1979, da waren die bezahlbaren Festplatten nicht gr&ouml;&szlig;er. Bei CP\/M 2.2 ohne Banking ist zudem ein Hindernis, dass die FCB eines Massenspeichers im RAM gehalten werden. Kein Problem bei einer Diskette, die 128 oder 256 FCB hat, doch hier sind es 768 pro Partition und in meinem Falle drei Partitionen. Das alles geht vom wertvollen Hauptspeicher ab.<\/p>\n<p>Nun zum <a href=\"https:\/\/en.wikipedia.org\/wiki\/Zilog_eZ80\">eZ80<\/a>. Der ist der letzte und wahrscheinlich auch endg&uuml;ltige Z80, denn er erschien schon 2001. Wie sein Pendant 6502 wurde der Z80 st&auml;ndig weiter entwickelt. Es erschien von Hitachi der HD64180 als Nachfolger in den Achtzigern, der zahlreiche Peripheriebausteine integriere und eine integrierte MMU hatte. Er wurde sogar von Zilog &uuml;bernommen als Z180. Mein <a href=\"https:\/\/www.bernd-leitenberger.de\/blog\/2022\/01\/01\/das-miniz-c-system\/\">zweites System von McMullen<\/a> setzt einen 33 MHz Z180 ein. Der eZ80 kann linear 16 MB adressieren, hat einen integrierten Ethernetport (der bei einem CP\/M aber nutzlos ist, weil man nat&uuml;rlich nicht den Speicher hat um die ganzen oberen Schichten mit den Protokollen zu implementieren). F&uuml;r die Geschwindigkeit wichtig ist, dass es nicht nur mit 50 MHz l&auml;uft, sondern durch eine Pipeline auch dreimal schneller als ein gleichzeitig getakteter Z80 sein sollte.<\/p>\n<p>Der Vergleich f&uuml;r mich ist mein <a href=\"https:\/\/www.bernd-leitenberger.de\/Amstrad-CPC-Serie.shtml\">CPC<\/a>, der einen mit 4 MHz getakteten Z80 hatte. Real lief er aber mit 3,2 MHz, da damit es keine Konflikte mit dem ASIC gab welches unter anderem auch die Videosignale erzeugte und gleichzeitig auf den Speicher zum Auslesen der Daten f&uuml;r den Videoausgang zugriff, alle Befehle auf ein Vielfaches von 4 Takten gestreckt wurden. So konnte das ASIC immer in der zweiten H&auml;lfte des Taktzyklus einer Z80 wenn diese nicht auf den Speicher zugreift, die Daten auslesen.<\/p>\n<p>Ich habe zwei Benchmarks laufen lassen. Ein <a href=\"https:\/\/www.bernd-leitenberger.de\/blog\/2019\/12\/24\/benchmark-my-computer\/\">Hochsprachenbenchmark der Zeitschrift ct\u2019 von 1987<\/a> von dem ich auch Tests bis in die Neunziger Jahre habe und der Sieve Benchmark von Byte aus dem Jahre 1981. (<a href=\"\/download\/sieve.pdf\">Originaldokument<\/a>, Warnung 25 MB gro&szlig;). Bei diesem war das schnellste System \u2013 der Benchmark erschien in mehreren Programmiersprachen und diente auch dazu Compiler zu &uuml;berpr&uuml;fen (schon damals lief das schnellste Programm in 14 Sekunden und das langsamste brauchte 5115 Sekunden f&uuml;r den Benchmark \u2013 der schnellste Compiler war ein PL\/I Compiler von Digital Research, der langsamste Microsoft Cobol). Hier wurde das Programm in 0,46 Sekunden abgearbeitet, 30-mal schneller als das schnellste System, das war ebenfalls ein 4 MHz Z80. Gespannter war ich auf das Benchmark der ct\u2019<\/p>\n<p>Hier das Ergebnis eingeordnet in eine Liste anderer Systeme:<\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Typ Integer Realzahl Trilog Text Grafik Speichern Index<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">CPC 464 7.9300 67.590 117.000 39.65 2.380 40.41<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">IBM XT 1.2300 39.110 56.390 64.20 4.780 24.09<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">PC 8088 8 Mhz 0.8300 27.300 39.440 45.97 4.780 18.33<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">PC 8086 8 Mhz 0.7100 15.820 22.190 29.71 4.780 13.24<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\"><b>MiniZ-C 0,690 5.800 10.100 2.10 0.20<\/b><\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">IBM AT 6 Mhz 0.2200 10.220 10.890 32.84 1.060 7.12<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\"><b>Min-eZ 0.1200 1.300 2.200 2.10 0.20<\/b><\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">AT 80286 10 Mhz 0.1100 6.070 9.070 13.62 1.260 4.50<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80386 SX 16 Mhz 0.1000 5.050 7.240 14.00 0.900 3.84<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80386 SXL 16 Mhz 0.0750 2.580 2.604 9.28 2.160 3.80<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80386 DX 33 Mhz 0.0270 1.414 <b>2.300<\/b> 9.50 0.800 2.18<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80386 DX 40 Mhz 0.0346 <b>1.260<\/b> 1.329 4.01 0.302 1.06<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80486 SX 33 Mhz 0.0170 0.550 0.604 3.13 0.313 0.78<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80486 DX 33 Mhz 0.0176 0.390 0.609 3.08 0.126 0.56<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80486 DX 50 Mhz 0.0116 0.368 0.409 <b>1.93<\/b> 0.165 0.46<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">80486 DX 50 Mhz VLB 0.0126 0.368 0.401 1.21 0.241 0.47<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">AMD486 DX\/4 100 0.0060 0.182 0.208 2.14 0.055 0.32<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">AMD486 p-75 150 VLB 0.0039 0.126 0.143 <b>2.13<\/b> 0.176 0.42<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">AMD486 p-75 133 PCI 0.0044 0.138 0.153 1.43 0.067 0.25<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Dell Pentium 75 0.0083 0.121 0.130 1.71 0.131 0.34<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Dell Pentium 90 0.0061 0.099 0.126 1.48 0.028 <b>0.21<\/b><\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Vobis Pentium 90 0.0093 0.148 0.187 1.76 0.038 0.26<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Thinkpad 365(P100) 0.0057 0.090 0.108 5.14 0.035 0.56<\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Artist P-133 0.0041 0.066 0.083 1.26 0.017 <b>0.16<\/b><\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Media Markt P150 0.0038 0.060 0.071 1.49 0.017 <b>0.18<\/b><\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Lion K6-2-350 0.0009 0.033 0.036 1.43 0.093 <b>0.24<\/b><\/span><\/p>\n<p><span style=\"font-family: Courier New, monospace;\">Athlon 750 Mhz 0.0004 0.013 0.001 1.49 0.093 <b>0.24<\/b><\/span><\/p>\n<p>Ich habe auch das MinZ-C System (33 MHz Z180) eingeordnet, wobei ich mich an den Integer-Benchmarks orientiert habe. Ich habe dann noch einige Ergebnisse markiert, bei Computern, die nahe am Min-eZ liegen und die teilweise viel schneller sind.<\/p>\n<p>Also ich erkl&auml;re mal. Der erste Benchmark umfasst 10.000 Ganzzahlberechnungen (16 Bit) mit Addition, Subtraktion, Division und Multiplikation. Hier ist die 8 Bit CPU gegen&uuml;ber allen anderen Systemen die mindestens 16 Bit verarbeiten aus zwei Gr&uuml;nden benachteiligt: Sie hat zwar Befehle f&uuml;r 16 Bit Addition und Subtraktion, aber die brauchen erheblich l&auml;nger als 8 Bit Rechnungen weil sowohl das Laden wie Berechnen immer in 8 Bit Portionen erfolgt. Noch gravierender ist, dass alle anderen CPUs Multiplikationen und Divisionen in der Hardware ausf&uuml;hren k&ouml;nnen. Hier sortiert sich das Min-eZ System in der Region eines 8 MHz 80826 ein.<\/p>\n<p>Der Vorsprung wird gr&ouml;&szlig;er bei den Flie&szlig;kommazahlen Benchmarks, einmal wieder einfache Rechnungen und einem Transzendente Funktionen (Sinus, Loarithmus) denn diese berechnen auch 16 Bit CPUs (damals noch ohne Coprozessor) nicht in der Hardware und da wird weniger multipliziert und dividiert als vielmehr Bits geschoben, addiert und subtrahiert. Da sah auch schon der CPC 464 besser aus. Hier erreicht das System schon die Performance eine 80386 DX mit 33 bis 40 MHz, was fast der CPU Taktfrequenz der eZ80 entspricht. CP\/M kennt keine Grafik und ich kommuniziere mit dem Rechner &uuml;ber ein Terminal, deswegen f&auml;llt der Grafikbenchmark weg.<\/p>\n<p>Bei den beiden letzten Benchmarks f&uuml;r Textausgabe und Speichern eines Textes auf Disk sind sowohl das Min-EZ wie MinZ-C System gleich schnell, das verwundert nicht, denn hier ist nicht der Prozessor das Limit. Zuerst: warum ist die Textausgabe so schnell, auf dem Niveau eines 486-ers mit 50 bis 150 MHz?<\/p>\n<p>Die fr&uuml;hen Pc hatten keine Grafikkarten mit einem Prozesssor, die die Ausgabe und das Rendern &uuml;bernehmen, was wie man an der Tabelle sieht, dann auch je nach F&auml;higkeiten der Karte zu starken Unterscheiden f&uuml;hrt, als diese einzogen. Alles geht ohne eine Grafik-GPU gut, solange bis der Text die unterste Zeile erreicht, dann muss gescrollt werden. Das hei&szlig;t, der ganze Inhalt des Text\/Grafikspeichers muss umgew&auml;lzt werden. Hier sind sogar Systeme, die nur reinen Text ausgeben im Vorteil, denn ihr Speicher ist typisch nur 4 KB gro&szlig;. Beim CPC und IBM PC war er dagegen 16 KB gro&szlig;. Und um 16 KB zu kopieren (f&uuml;r eine Zeile) braucht eine Z80 CPU mit 4 MHz mindestens 0,112 Sekunden. Man konnte den damaligen Systemen beim Scrollen zusehen, damals glaubte ich noch, als ich unter BASIC programmierte das w&auml;re ein Feature, weil man so den Text mitlesen und abbrechen konnte, wenn die Stelle angezeigt wurde, die man editieren wollte.<\/p>\n<p>Dagegen kommunizieren die Min-Rechner mit einem Terminal, das ist f&uuml;r die Textausgabe verantwortlich und da ist dann die Geschwindigkeit der Schnittstelle (115,2 kbaud), die bei beiden Systemen gleich hoch ist, das Limit. Der eZ80 k&ouml;nnte auch 230 kbit senden, aber dann steigt nach McMullen das Fehlerrisiko, weshalb er es beschr&auml;nkt hat.<\/p>\n<p>Die gleiche Tatsache ,das nicht der Prozessor f&uuml;r die Geschwindigkeit verantwortlich ist hat man beim Speichern Benchmark. Hier musste eine Textdatei auf Diskette, sp&auml;ter Festplatte geschrieben werden, da werden Schreib-Lesek&ouml;pfe bewegt, die Geschwindigkeit einer Diskette oder Festplatte ist auch konstant und zumindest bei den neueren Rechnern viel langsamer als der Prozessor die Daten liefern k&ouml;nnte. Beim Min-eZ wird dagegen auf Flash-ROM gespeichert. Kleines Detail am Rande: der CPC den ich damals hatte, hatte auch eine RAM-Disk, weil er auf 576 KByte aufger&uuml;stet war, dorthin schrieb er in 1,34 Sekunden was dann den beiden System schon sehr nahe kam.<\/p>\n<p>Okay, ich habe nun den schnellsten Z80-Rechner der Welt, wie gehts weiter? Ich habe ein neues Softwareprojekt, den \u201eBernd Commander\u201c, der Name lehnt sich an den Norton Commander an, den wohl jeder kennt, der mal unter DOS gearbeitet hat, ohne ihn wird es m&uuml;hsam, wenn man kopieren, umbenennen oder l&ouml;schen muss. Unter CP\/M gab es so was nie, was daran liegt, dass man daf&uuml;r eine Cursorsteuerung braucht und die war bei jedem CP\/M Rechner anders. Doch das ist ein neues Thema, dass ich n&auml;chstes Mal anspreche. Der Knackpunkt wird sein, dass ich 14 Bytes f&uuml;r jeden Verzeichniseintrag brauche, den ich verarbeite und bei zwei Laufwerken mit maximal je 768 Eintr&auml;gen bin ich schon bei 21.504 Bytes oder 21 Kbytes, rund 40 % des Hauptspeichers denn ich noch habe, die RTL von Pascal abgezogen, bleiben nur noch 27 KByte f&uuml;r das ganze Programm.<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_17338\" class=\"pvc_stats all  \" data-element-id=\"17338\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/www.bernd-leitenberger.de\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Bevor ich als N&auml;chstes einen weiteren Artikel &uuml;ber die Clusterung \u2013 diesmal dem sinnvollsten Einsatz bei einer Schwerlastrakete bringe, sei mir ein nostalgischer Artikel verg&ouml;nnt. Es geht um Computer, und was noch wichtiger ist, nicht heutige Computer, sondern die aus den Achtzigern. Dies als Vorwarnung. Alle die das nicht interessieren sollten nun woanders hin gehen. [&hellip;]<\/p>\n","protected":false},"author":169,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4],"tags":[1657,5177,5179,5178,5180,4782,1713],"class_list":["post-17338","post","type-post","status-publish","format-standard","hentry","category-computer","tag-benchmark","tag-ez80","tag-min-ez","tag-minz-c","tag-tindie","tag-z180","tag-z80","entry"],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":18610,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/27\/galileos-cds-teil-1\/","url_meta":{"origin":17338,"position":0},"title":"Galileos CDS &#8211; Teil 1","author":"Bernd Leitenberger","date":"27. M\u00e4rz 2026","format":false,"excerpt":"Hall\u00f6chen, es wird Zeit das ich mich mal wieder melde. Es gab zwei Gr\u00fcnde, warum ich mich so rar gemacht habe. Das eine ist das es gerade nicht so viel aktuelles gibt, au\u00dfer einem Update zu Artemis, zu dem ich vielleicht noch etwas schreibe. W\u00e4hrend Trump das ganze Programm nach\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/4fb81c7bafbd4d9d88b5695abdb33d29","width":350,"height":200},"classes":[]},{"id":18614,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/29\/galileos-cds-teil-3\/","url_meta":{"origin":17338,"position":1},"title":"Galileos CDS &#8211; Teil 3","author":"Bernd Leitenberger","date":"29. M\u00e4rz 2026","format":false,"excerpt":"So nun zum dritten Teil \u00fcber das prim\u00e4re Computersystem von Galileo, das CDS. Nachdem sich die ersten beiden Teile nur mit dem RCA 1802, warum er gew\u00e4hlt wurde und seiner Architektur befassten geht es heute um das Computersystem selbst. Der Artikel schlie\u00dft so an seine beiden Vorg\u00e4nger gestern und vorgestern\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/6e7f572a246b4ac395de9c260733b707","width":350,"height":200},"classes":[]},{"id":18380,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/09\/03\/die-glorreichen-10-das-war-mal-weg-pc-hardware\/","url_meta":{"origin":17338,"position":2},"title":"Die glorreichen 10 &#8211; Das war mal weg: PC Hardware","author":"Bernd Leitenberger","date":"3. September 2025","format":false,"excerpt":"Ich will heute mal zwei ZDF Info \/ Neo Sendungen verbinden. Die glorreichen 10, die bei mir als Vorlage f\u00fcr einige Blogs dienten und die von mir noch mehr gesch\u00e4tzte Sendung \"Das war mal weg\", wo es um Dinge geht, die fr\u00fcher fast jeder hatte und die heute aus unserem\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"https:\/\/vg02.met.vgwort.de\/na\/876c61d389304d98aa0332fadd769381","width":350,"height":200},"classes":[]},{"id":18612,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/28\/galileos-cds-teil-2\/","url_meta":{"origin":17338,"position":3},"title":"Galileos CDS \u2013 Teil 2","author":"Bernd Leitenberger","date":"28. M\u00e4rz 2026","format":false,"excerpt":"So, heute geht es weiter mit Teil 2 \u00fcber Galileos CDS, dieser Beitrag schlie\u00dft nahtlos an den ersten Beitrag von gestern an, wie man schon an der ersten Textzeile sieht. Nach der Einleitung im ersten Teil geht es heute weiter damit warum der RCA 1802 genutzt wurde und was seine\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/191e4b0728de42829cf656027b84dc82","width":350,"height":200},"classes":[]},{"id":18511,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/01\/27\/musks-ki-rechenzentren-im-orbit\/","url_meta":{"origin":17338,"position":4},"title":"Musks KI-Rechenzentren im Orbit","author":"Bernd Leitenberger","date":"27. Januar 2026","format":false,"excerpt":"Bei meinem regelm\u00e4\u00dfigen Besuch des Space Reviews stie\u00df ich auf diesen Artikel: SpaceX, orbital data centers, and the journey to Mars. Ich hatte in meiner Nachlese schon erw\u00e4hnt das Elon Musk, nachdem er dies lange verschoben hat nun plant SpaceX an die B\u00f6rse zu bringen. Ich meinte aber, das l\u00e4ge\u2026","rel":"","context":"In &quot;SpaceX&quot;","block_context":{"text":"SpaceX","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/spacex\/"},"img":{"alt_text":"","src":"https:\/\/vg06.met.vgwort.de\/na\/0ee72da693054bc3b5c3f00214a7e2b3","width":350,"height":200},"classes":[]},{"id":14393,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2019\/11\/06\/warum-tut-man-sich-so-schwer-auf-etwas-voellig-ueberfluessiges-zu-verzichten\/","url_meta":{"origin":17338,"position":5},"title":"Warum tut man sich so schwer, auf etwas v&ouml;llig &Uuml;berfl&uuml;ssiges zu verzichten?","author":"Bernd Leitenberger","date":"6. November 2019","format":false,"excerpt":"Gestern war erneut das \u201eKlimakabinett\u201c aktiv. Sie haben den Ausbau der Ladeinfrastruktur und des Netzes an Wasserstoffnetzen beschlossen. Mal abgesehen davon das dies nicht in den Verantwortungsbereich der Bundesregierung, sondern der Betreiber der entsprechenden Stationen f\u00e4llt, ist das wieder ein Beispiel f\u00fcr Aktionismus. Genauso wie die nun erh\u00f6hte Elektroautopr\u00e4mie. Wer\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/vg02.met.vgwort.de\/na\/a4a87b4f3c004c9ba9d11e2f979f8aac","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/17338","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/users\/169"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/comments?post=17338"}],"version-history":[{"count":0,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/17338\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/media?parent=17338"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/categories?post=17338"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/tags?post=17338"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}