{"id":2944,"date":"2022-09-17T11:44:21","date_gmt":"2022-09-17T11:44:21","guid":{"rendered":"https:\/\/picockpit.com\/raspberry-pi\/?p=2944"},"modified":"2023-08-23T10:43:28","modified_gmt":"2023-08-23T10:43:28","slug":"gaming-on-the-raspberry-pi-pico","status":"publish","type":"post","link":"https:\/\/picockpit.com\/raspberry-pi\/de\/gaming-auf-dem-raspberry-pi-pico\/","title":{"rendered":"Spiele auf dem Raspberry Pi Pico"},"content":{"rendered":"<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image-1024x576.jpg\" alt=\"spiele auf raspberry pi pico\" class=\"wp-image-2946\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image-1024x576.jpg 1024w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image-300x169.jpg 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image-768x432.jpg 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image-1536x864.jpg 1536w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image-18x10.jpg 18w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg 1778w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>In diesem Beitrag m\u00f6chte ich \u00fcber Spiele auf dem Raspberry Pi Pico sprechen.<\/p>\n\n\n\n<p>Ich erinnere mich an mein erstes Dumbphone, das damals \"Telefon\" genannt wurde. Es konnte einfache Spiele wie Snake spielen. Das war der letzte Schrei.<\/p>\n\n\n\n<p>Davor musste man einen separaten Handheld mit sich f\u00fchren, auf dem man Tetris spielen konnte, oder ein dynamischeres Spielsystem wie einen Gameboy.<\/p>\n\n\n\n<p>Der Raspberry Pi Pico ist ein ziemlich leistungsf\u00e4higer Mikrocontroller im Vergleich zu den Handhelds aus den 90er Jahren. Nat\u00fcrlich bietet er uns die M\u00f6glichkeit, Spiele aus dieser Zeit zu spielen.<\/p>\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Wie leistungsf\u00e4hig ist der Raspberry Pi Pico<\/h2>\n\n\n\n<p>Im Vergleich zu einer Konsole aus den 80er Jahren ist der Raspberry Pi Pico extrem leistungsstark.&nbsp;<\/p>\n\n\n\n<p>Wenn Sie ein Spiel programmieren, das den Ressourcenanforderungen eines Spiels aus den 1980er Jahren \u00e4hnelt, wird der Raspberry Pi Pico es wahrscheinlich mit Bravour meistern.<\/p>\n\n\n\n<p>In den 90er Jahren wird es etwas schwieriger, eine so eindeutige Schlussfolgerung zu ziehen.<\/p>\n\n\n\n<p>Wenn Sie es einerseits als ein Ger\u00e4t betrachten, mit dem Sie Spiele spielen k\u00f6nnen, die denen auf einem Gameboy oder einem Mobiltelefon \u00e4hneln, werden Sie wahrscheinlich zufrieden sein.<\/p>\n\n\n\n<p>Allerdings wurden die Spiele in den sp\u00e4ten 90er Jahren sehr viel anspruchsvoller. Sie werden zum Beispiel nicht Quake 3 (ein Spiel von 1999) auf dem Pico spielen.<\/p>\n\n\n\n<p>Der Raspberry Pi Pico kann zwar Doom (1993) abspielen, aber es war ein sechsmonatiges Unterfangen f\u00fcr die Person, die es programmiert hat, weil es eine ziemlich schwierige Aufgabe war, das Spiel auf die 2 MB Speicherplatz zu komprimieren, die der Raspberry Pi Pico hat.<\/p>\n\n\n\n<p>So verf\u00fcgt der Pico zwar \u00fcber zwei 133-MHz-Prozessoren, aber nur \u00fcber einen begrenzten Arbeitsspeicher und eine begrenzte Speicherkapazit\u00e4t, was die Arbeit erschwert.<\/p>\n\n\n\n<p>Mal sehen, wie es im Vergleich zu einem Gameboy aussieht:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Spezifikation<\/td><td>Raspberry Pi Pico<\/td><td>Gameboy (1989)<\/td><td>Gameboy Color (1998)<\/td><\/tr><tr><td>Anzeige<\/td><td>Farb-LCD oder E-Ink, das bleibt Ihrer Fantasie \u00fcberlassen<\/td><td>4 Schattierungen Graustufen<\/td><td>10, 32, 56 Farben<\/td><\/tr><tr><td>Aufl\u00f6sung<\/td><td>H\u00e4ngt von Ihrem Bildschirm ab, ist aber durch die Ressourcen von Pico begrenzt.<\/td><td>160x144px<\/td><td>160\u00d7144 px<\/td><\/tr><tr><td>CPU<\/td><td>133MHz Doppelkern<\/td><td>4MHz<\/td><td>4MHz\/8MHz<\/td><\/tr><tr><td>RAM<\/td><td>264KB<\/td><td>8KB<\/td><td>32KB RAM, 16KB VRAM<\/td><\/tr><tr><td>Lagerung<\/td><td>2MB&nbsp;<\/td><td>Game Pak Kassette: 8MB ROM, 128KB RAM<\/td><td>Game Pak Kassette: 8MB ROM, 128KB RAM<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Warum spielen Sie Spiele auf dem Pico und nicht auf dem Zero\/Pi 4?<\/h2>\n\n\n\n<p>Gute Frage.<\/p>\n\n\n\n<p>Wie Sie wissen, ist der Raspberry Pi Pico ein Mikrocontroller, w\u00e4hrend der Raspberry Pi Zero oder Pi 4 Mikrocomputer sind.<\/p>\n\n\n\n<p>Beide k\u00f6nnen Spiele spielen, aber der Raspberry Pi Pico ist viel eingeschr\u00e4nkter.<\/p>\n\n\n\n<p>Das hei\u00dft, wenn Sie heute (im Jahr 2022) einen Emulator oder ein Spielsystem mit dem Raspberry Pi Zero oder Pi 4s bauen wollen, sollten Sie besser schon einen haben, sonst ist Ihr gr\u00f6\u00dfter Engpass das Lager.<\/p>\n\n\n\n<p>Es ist sehr schwierig, einen Pi Zero zu bekommen, und ziemlich schwierig, einen Pi 4 zu bekommen.<\/p>\n\n\n\n<p>Auf der anderen Seite ist der Pico reichlich vorhanden. Au\u00dferdem f\u00e4hrt er fast sofort hoch, w\u00e4hrend der Mikrocomputer Pis einen langwierigen Hochfahrprozess durchlaufen muss.<\/p>\n\n\n\n<p>Der Pico h\u00e4lt auch viel l\u00e4nger durch. Wenn Sie eine mobile Anlage suchen, die stundenlang l\u00e4uft und tragbar ist, sind Sie mit dem Pico besser bedient.<\/p>\n\n\n\n<p>Schlie\u00dflich ist der Pico nicht nur auf Lager, sondern auch reichlich auf Lager.<\/p>\n\n\n\n<p>Fairerweise muss man sagen, dass man mit dem Pi Zero und dem Pi 4 definitiv bessere Spiele spielen und bessere Emulationsergebnisse erzielen kann als mit diesen Mikrocomputern. Wie Sie im n\u00e4chsten Abschnitt sehen werden, hat der Pico Schwierigkeiten, Spiele zu spielen, die der Zero oder Pi 4 mit Leichtigkeit bew\u00e4ltigt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Welche Spiele kann der Raspberry Pi Pico spielen?<\/h2>\n\n\n\n<p>Zun\u00e4chst sehen wir uns an, was die T\u00fcftlergemeinde auf dem Raspberry Pi Pico spielen konnte.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">RP2040 Doom ist die Antwort auf die Frage \"Wird es Doom?\".<\/h3>\n\n\n\n<iframe loading=\"lazy\" width=\"813\" height=\"457\" src=\"https:\/\/www.youtube.com\/embed\/eDVazQVycP4\" title=\"RP2040 Doom: DOOM1 Demo\/Gameplay auf einem Raspberry Pi Pico\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\"><\/iframe>\n\n\n\n<p>Ja! Der Raspberry Pi Pico kann Doom spielen.<\/p>\n\n\n\n<p>Einem Mann namens Graham Sanderson aus Austin, Texas, ist es gelungen, Doom auf den Raspberry Pi Pico zu portieren.<\/p>\n\n\n\n<p>Seine Zauberformel?<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewbox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"while (!convice_myself_its_probably_impossible()) {    do_some_more();}\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Kopieren\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code data-no-translation=\"\"><span class=\"line\"><span style=\"color: #81A1C1\">while<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><span style=\"color: #81A1C1\">!<\/span><span style=\"color: #88C0D0\">convice_myself_its_probably_impossible<\/span><span style=\"color: #D8DEE9FF\">()) <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #88C0D0\">do_some_more<\/span><span style=\"color: #D8DEE9FF\">()<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p>Er <a href=\"https:\/\/kilograham.github.io\/rp2040-doom\/\">erkl\u00e4rt in seiner Dokumentation des Prozesses<\/a> dass er aufgrund der Hardware-Spezifikationen des Raspberry Pi Pico mit zahlreichen Einschr\u00e4nkungen konfrontiert war. Schlie\u00dflich handelt es sich nicht um ein Ger\u00e4t, das f\u00fcr Spiele gedacht ist.<\/p>\n\n\n\n<p>Nichtsdestotrotz beschloss Graham auch, die Portierung von Doom noch schwieriger zu gestalten. Er wollte ein authentisches Doom-Erlebnis, d.h. eine Aufl\u00f6sung von 320\u00d7200 (Farbe), Stereo-Sound, OPL2-Musik, Speichern und Laden, Netzwerk-Multiplayer und andere Funktionen, die im Original vorhanden sind.<\/p>\n\n\n\n<p>So viele Spiele auf den Raspberry Pi Pico zu packen, bedeutete eine Herausforderung f\u00fcr den Speicher. Sowohl der Arbeitsspeicher als auch der Speicherplatz waren wichtige Themen.<\/p>\n\n\n\n<p>Erstens hat der Raspberry Pi Pico nur 2 MB Speicherplatz, aber die Shareware-Version von Doom ist doppelt so gro\u00df. W\u00e4hrend andere Entwickler vielleicht beschlie\u00dfen, bestimmte Funktionen wie Splash-Screens und Downsampling von Texturen zu reduzieren, wollte Graham das nicht tun.<\/p>\n\n\n\n<p>Ein weiteres Problem war der Arbeitsspeicher: Der Chocolate Doom-Quellcode ben\u00f6tigt etwa 1 MB RAM, w\u00e4hrend der Pico nur etwa 264 KB hat. Der Speicher ist knapp, weil das Rendern der Grafiken einen gro\u00dfen Teil des RAMs beansprucht, aber der RAM ist auch sehr wichtig f\u00fcr den reibungslosen Ablauf des Spiels. Um beide Aspekte unter einen Hut zu bringen, musste Graham etwas tun, was er \"Fettabsaugung\" nannte.<\/p>\n\n\n\n<p>Weitere Informationen finden Sie unter <a href=\"https:\/\/kilograham.github.io\/rp2040-doom\/\">die Dokumentation<\/a>, beobachten <a href=\"https:\/\/www.youtube.com\/playlist?list=PL-_wCtHUfdDPi7i-4OIy5iQjQ3QSqq1Mh\">seine YouTube-Wiedergabeliste<\/a> oder <a href=\"https:\/\/github.com\/kilograham\/rp2040-doom\">\u00dcberpr\u00fcfung des Codes<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">NES-Emulator<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/1R9SiKq9iB0-wC9MtOn8X29eX4HiKXr8Meu9MS9SXpku1lL8GrI7TTmXvvLTU3Q_3SLcZS59K9L5saoAHXXyJyRsU5T8S0qSeiuTI5NQEg-shkcQvvVQ2tY9nEtFboRanYNyswCo5BMfDTN-JQQAwFzM6TAggyHkfOjosqKc92ICJtdw-R2jVIwjqw\" alt=\"\" style=\"width:711px;height:400px\" width=\"711\" height=\"400\"\/><\/figure>\n<\/div>\n\n\n<p>Der Raspberry Pi Pico wurde erfolgreich in einen NES-Emulator verwandelt.<\/p>\n\n\n\n<p><a href=\"https:\/\/forums.emulator-zone.com\/index.php?threads\/using-a-rasp-pico-board-to-emulate-nes.26986\/\">In einem Emulator Zone Forum Thread<\/a>Der Benutzer ropgar sagte, dass der Raspberry Pi Pico die Leistung hat, ein NES zu emulieren, und er kann 60 Bilder pro Sekunde machen und APU und PPP perfekt emulieren.<\/p>\n\n\n\n<p>Ropgar verwendet eine PS\/2-Tastatur als Controller, aber man kann auch den originalen NES-Controller verwenden.<\/p>\n\n\n\n<p>Der Ton ist gut und es gibt keine St\u00f6rungen bei Video und Hintergrundmusik.<\/p>\n\n\n\n<p>Der Pico verf\u00fcgt \u00fcber etwa 1,5 MB Flash-Speicherplatz f\u00fcr verschiedene Spiele, die durch Dr\u00fccken der Feststelltaste ausgew\u00e4hlt werden k\u00f6nnen.&nbsp;<\/p>\n\n\n\n<p>Die Spiele, die ropgar auf seine Demo laden konnte, sind Pacman, Arkanoids, DK, DK Jr, BubbleBobble, Galaga und viele andere.<\/p>\n\n\n\n<p>Der einzige Nachteil ist, dass es keinen \u00f6ffentlichen Quellcode oder eine Anleitung gibt, wie man das macht.<\/p>\n\n\n\n<iframe loading=\"lazy\" width=\"895\" height=\"503\" src=\"https:\/\/www.youtube.com\/embed\/Kv9U1GouvYM\" title=\"Mikrogesteuerter NES-Emulator | 10 Spiele in Flash | Raspberry Pi Pico RP2040 | VGA PS\/2 PWM Sound\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\"><\/iframe>\n\n\n\n<h2 class=\"wp-block-heading\">Gameboy-Emulator f\u00fcr den Raspberry Pi Pico<\/h2>\n\n\n\n<p>Sie k\u00f6nnen Ihr eigenes Gameboy-Geh\u00e4use bauen und dann den Raspberry Pi Pico verwenden, um den Gameboy zu emulieren.<\/p>\n\n\n\n<p>Das Schwierige daran ist, dass es sich dabei nicht um etwas handelt, das sehr erfolgreich war. Mit anderen Worten: Was Sie bauen, kann funktionieren, aber nicht immer.<\/p>\n\n\n\n<p>Werfen wir einen Blick auf die verschiedenen M\u00f6glichkeiten, die es gibt.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Rust Gameboy-Emulator (OxidGB Pico Port)<\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/YqgqoXlZzzwpFSfIREDXY6DSQk1izJhDctOpEW_Gp9PHFaOGpt-dp-R69kNfXM5KnNrYiVbPJ7lmFhWYmfzlaRpflY6n2nanDID8gDFPVybw_HioK14eqzPlXJCSo-Y_jd3lylN_Rinln6dDkHeJe7smlhNhrnlKiNP2Az1d5pIMWAJPRqHEqEBNQQ\" alt=\"\" style=\"width:563px;height:622px\" width=\"563\" height=\"622\"\/><figcaption class=\"wp-element-caption\">Bild von u\/j_selby (Reddit)<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Als ich das Pokemon-Bild auf dem Bildschirm sah, war ich sofort begeistert.<\/p>\n\n\n\n<p>James Selby schrieb jedoch \u00fcber die Herausforderungen und Unzul\u00e4nglichkeiten seines in Rust geschriebenen Gameboy-Emulators namens OxidGB Pico Port.<\/p>\n\n\n\n<p>\"Dies war eine Fahrt - eine frustrierende Fahrt, aber eine Fahrt, die ich aus p\u00e4dagogischer Sicht dennoch sehr genossen habe\", sagte Selby.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Probleme und Erfolge<\/h4>\n\n\n\n<p>Das ist die gr\u00f6\u00dfte Herausforderung: <strong>Der Rust Gameboy-Emulator \"ist in seinem aktuellen Zustand leider nicht wirklich spielbar\".<\/strong><\/p>\n\n\n\n<p>Selby sagte, dass Spiele nur etwa 10 FPS erreichen, weil der Code des Emulators einen Engpass darstellt, ebenso wie die langsame SPI-Schnittstelle zum Display.<\/p>\n\n\n\n<p>Es ist m\u00f6glich, die Dinge zu beschleunigen, aber das w\u00fcrde Zeit f\u00fcr die Planung und Umsetzung erfordern.<\/p>\n\n\n\n<p>Die Eingabe wurde nicht konfiguriert, da die Spiele nicht spielbar waren.&nbsp;<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Testen des OxidGB Pico Ports<\/h4>\n\n\n\n<p>Wenn Sie es ausprobieren m\u00f6chten, k\u00f6nnen Sie den Anweisungen von Selby auf seiner <a href=\"https:\/\/github.com\/j-selby\/oxidgb-pico\">Github Repo f\u00fcr den OxidGB Pico Port.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">RP2040_GB-Emulator<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/0bdDowSlnfTQhTg-3nLzDxFTEEVtOYep7mVxwdu8oNXkYXop897px8u7TI-bh2UXy-rwj0sq3kL0_D-lLA3BLazxbALrBdj_OxwAaEMg24RzadMnR9sOC_L1lo4nYDlbjzcyr6FX49J_ngR0ebA0D2m-1E3mU1ft1NYCLCUV62W64eS-JW8L3XfnXQ\" alt=\"\" style=\"width:687px;height:298px\" width=\"687\" height=\"298\"\/><figcaption class=\"wp-element-caption\">Hardware und Aufbau des RP2040_GB-Emulators, Foto von Mahyar Koshkouei.<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Ein weiterer Emulator, den Sie ausprobieren k\u00f6nnen, ist der <a href=\"https:\/\/github.com\/deltabeard\/RP2040-GB\">RP2040_GB<\/a>die sich auf die <a href=\"https:\/\/github.com\/deltabeard\/Peanut-GB\">Erdnuss-GB<\/a> Emulator.<\/p>\n\n\n\n<p>Die Leistung des RP2040_GB ist anst\u00e4ndig. Koshkouei sagt, dass sein Setup \"mit mehr als 70 fps ohne Audioemulation l\u00e4uft. Mit Frame-Skip und Interlacing k\u00f6nnen bis zu 120 fps erreicht werden\".<\/p>\n\n\n\n<p>Wie Sie sehen k\u00f6nnen, spielt das RP2040_GB Pokemon. Die Schritte, um ein ROM auf das RP2040 zu bekommen, sind wie folgt:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sie m\u00fcssen das Pico SDK haben<\/li>\n\n\n\n<li>Konvertieren <strong>.gb<\/strong> oder <strong>.gbc<\/strong> ROM in eine C-Header-Datei unter Verwendung der <strong>xxd <\/strong>Programm<\/li>\n\n\n\n<li>\u00c4ndern Sie die konvertierte Datei, indem Sie zwei Codezeilen hinzuf\u00fcgen (in der Readme-Datei von Github)<\/li>\n\n\n\n<li>Kopieren Sie das ROM in den <strong>src <\/strong>und kompilieren.<\/li>\n<\/ul>\n\n\n\n<p>Es gibt einige Einschr\u00e4nkungen dieses Emulators:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\"Dieser Emulator ist ungenau und befindet sich noch in der Entwicklung ... einige Spiele laufen m\u00f6glicherweise nicht richtig oder gar nicht.\"&nbsp;<\/li>\n\n\n\n<li>Gameboy Color-Spiele geben einen Fehler aus<\/li>\n\n\n\n<li>Nicht f\u00fcr Mikrocontroller optimiert: Koshkouei schlug vor, dass \"die Verwendung einer APU, die f\u00fcr Platz und Geschwindigkeit optimiert ist\", helfen kann.<\/li>\n<\/ul>\n\n\n\n<p><a href=\"https:\/\/github.com\/deltabeard\/RP2040-GB\">Das Github-Repositorium des RP2040_GB finden Sie hier.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mega-Spiele-Zusammenstellung mit Raspberry Pi Pico<\/h2>\n\n\n\n<iframe loading=\"lazy\" width=\"893\" height=\"502\" src=\"https:\/\/www.youtube.com\/embed\/hXO0toLjDh0\" title=\"MEGA-Spiele-Zusammenstellung Adafruit RPI Pico\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\"><\/iframe>\n\n\n\n<p>Das Beste an diesem Projekt ist, dass es einfach ist und die Anleitung ausreicht, um schnell mit einer Raspberry Pi Pico Spielekonsole zu beginnen.<\/p>\n\n\n\n<p>Roger B\u00fchler hat Teile, Anleitungen und Demos auf seinem Github bereitgestellt.<\/p>\n\n\n\n<p>Die Mega Games Compilation enth\u00e4lt die folgenden Spiele:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Tiny Gilbert<\/li>\n\n\n\n<li>Kleiner Trick<\/li>\n\n\n\n<li>Tiny Invaders v3.1<\/li>\n\n\n\n<li>Tiny Pinball v2<\/li>\n\n\n\n<li>Tiny Pacman v1.2<\/li>\n\n\n\n<li>Tiny Bomber v1.3<\/li>\n\n\n\n<li>Winziges Fahrrad v1.2<\/li>\n\n\n\n<li>Tiny Bert 1.1<\/li>\n\n\n\n<li>Winziges Arkanoid v2<\/li>\n\n\n\n<li>Tiny Tris v2.1e<\/li>\n\n\n\n<li>Winzige Plakette<\/li>\n\n\n\n<li>Tiny DDug<\/li>\n\n\n\n<li>Tiny Missile v1.1<\/li>\n\n\n\n<li>Tiny Lander v1.0 ( von Roger Buehler )<\/li>\n\n\n\n<li>Winziger Morpion<\/li>\n\n\n\n<li>Tiny Pipe<\/li>\n<\/ol>\n\n\n\n<p>Sie ben\u00f6tigen die folgenden Teile:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Raspberry Pi Pico<\/li>\n\n\n\n<li>SSD1309 128x64px SPI OLED-Display (2,42\" Display im Verh\u00e4ltnis 2:1)<\/li>\n\n\n\n<li>Piezo-Summer<\/li>\n\n\n\n<li>F\u00fcnf Tasten<\/li>\n\n\n\n<li>Brettchen<\/li>\n\n\n\n<li>Starthilfekabel<\/li>\n\n\n\n<li>Optional: 10-Ohm-Widerst\u00e4nde, Elektrolytkondensator mit einer Spannung von mindestens 10 V und 220 uF<\/li>\n<\/ol>\n\n\n\n<p>Sie ben\u00f6tigen au\u00dferdem <a href=\"https:\/\/github.com\/adafruit\/Adafruit_SSD1306\">Adafruits SSD1306-Bibliothek<\/a>.<\/p>\n\n\n\n<p><strong>So schlie\u00dfen Sie das Display an:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>GND -&gt; Display GND&nbsp;<\/li>\n\n\n\n<li>3V3(OUT) -&gt; Anzeige VCC&nbsp;<\/li>\n\n\n\n<li>GP16 -&gt; Anzeige DC (Datenbefehl)&nbsp;<\/li>\n\n\n\n<li>GP17 -&gt; Anzeige CS (Kanalauswahl)&nbsp;<\/li>\n\n\n\n<li>GP18 -&gt; Anzeige SCL (Takt)&nbsp;<\/li>\n\n\n\n<li>GP19 -&gt; Anzeige SDA (MOSI)&nbsp;<\/li>\n\n\n\n<li>GP20 -&gt; Anzeige RES (Reset)<\/li>\n<\/ul>\n\n\n\n<p><strong>Und um die Tasten zu verbinden:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>GP15 -&gt; Taste UP&nbsp;<\/li>\n\n\n\n<li>GP14 -&gt; Taste DOWN&nbsp;<\/li>\n\n\n\n<li>GP13 -&gt; Taste LINKS&nbsp;<\/li>\n\n\n\n<li>GP12 -&gt; Taste RECHTS&nbsp;<\/li>\n\n\n\n<li>GP11 -&gt; Taste FIRE (alle Tasten auf GND)<\/li>\n<\/ul>\n\n\n\n<p><strong>Und zum Anschluss des Piezo-Summers:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>GP10 -&gt; Buzzer(+)&nbsp;<\/li>\n\n\n\n<li>GND -&gt; Buzzer(-)<\/li>\n<\/ul>\n\n\n\n<p><strong>Installation der Software:<\/strong><\/p>\n\n\n\n<p>Um die Software zu installieren, m\u00fcssen Sie die Arduino IDE verwenden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tamagotchi-\u00e4hnliches Spiel auf dem Raspberry Pi Pico (Pico-Tamachibi)<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/vq6-LhQ68o08Xgayc7U4roNHKcOCGtwxk8YL8nOnI33WP_yJlFjnxd2KDdtLgJn92vx2RRhSUb4Rn4OsP8vZNtQsmUjaUCUPc7JXmWvipgWewiXzSISGQ1qJWK8VtvT3lp1iypd3npcQzC4mL3NLTYhCAkGxXgpJoNYzBMsKEST4dSc4FeRU2Jqy3Q\" alt=\"\" style=\"width:727px;height:406px\" width=\"727\" height=\"406\"\/><\/figure>\n<\/div>\n\n\n<p>Warum wird es Pico-Tamachibi genannt?<\/p>\n\n\n\n<p>Laut Kevin McAleer, dem Erfinder dieses Ger\u00e4ts, bedeutet \"tama\" \"Ei\" und \"chibi\" bezieht sich auf Grafiken, bei denen die Figur einen gro\u00dfen Kopf hat.&nbsp;<\/p>\n\n\n\n<p>Die Erstellung des Tamachibi ist ganz einfach, denn Kevin geht in seiner 90-min\u00fctigen Anleitung auf jeden einzelnen Schritt des Weges ein.<\/p>\n\n\n\n<iframe loading=\"lazy\" width=\"1280\" height=\"720\" src=\"https:\/\/www.youtube.com\/embed\/btG3Pd8ZlBw\" title=\"Virtueller Haustier-Code in MicroPython auf dem Raspberry Pi Pico - Pico-Tamachibi\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen=\"\"><\/iframe>\n\n\n\n<h2 class=\"wp-block-heading\">Baue deinen eigenen Spielautomaten<\/h2>\n\n\n\n<p>Wenn Sie Ihren eigenen Raspberry Pi Pico-Gaming-Automaten bauen m\u00f6chten, gibt es zwei M\u00f6glichkeiten: Sie k\u00f6nnen einen fertigen Bausatz kaufen oder selbst einen bauen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fertiger Bausatz vs. DIY Raspberry Pi Pico Gaming-Hardware<\/h2>\n\n\n\n<p>Es ist zwar m\u00f6glich, bei Null anzufangen, aber vielleicht m\u00f6chten Sie sich die M\u00fche sparen, Ihr eigenes System zu bauen, und einfach ein fertiges Paket kaufen.<\/p>\n\n\n\n<p>Es gibt einige RP2040-basierte Kits, mit denen Sie direkt mit dem Spielen oder Entwickeln Ihrer eigenen Spiele beginnen k\u00f6nnen.<\/p>\n\n\n\n<p>Schauen wir uns das Pimoroni Picosystem an und vergleichen es dann mit dem Prozess, etwas \u00c4hnliches aus Einzelteilen zu bauen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pimoroni Picosystem<\/h2>\n\n\n\n<p>Werfen wir einen Blick auf das Pimoroni Picosystem.<\/p>\n\n\n\n<p class=\"has-text-align-center\"><img loading=\"lazy\" decoding=\"async\" width=\"602\" height=\"451\" src=\"https:\/\/lh3.googleusercontent.com\/6X2vym5Y-3rckNiwIQlPQlGAso1RbIGb-n9hETg6DPjKQGijYEqkk8p_WKD0sSOm9AeMhyLWM9hfKjBZgGx0_YQRvYEWqaEyK0sRjr7urrC4KOcZdl8JXVkIHYJI0DZ8ysG6_MC7BiZRaP_5AJFq7i19PzHAgL0nba9lRg06jnhuWXp2adZgN6SCIQ\"><\/p>\n\n\n\n<p>Wie Sie sehen k\u00f6nnen, ist er viel gr\u00f6\u00dfer als der Raspberry Pi Pico W, aber das liegt auch daran, dass er unter anderem ein Vier-Wege-D-Pad, vier Tasten, einen LCD-Bildschirm, einen Lithium-Ionen-Akku, einen Piezo-Lautsprecher und einen USB-C-Anschluss hat.<\/p>\n\n\n\n<p>Er verf\u00fcgt \u00fcber denselben Prozessor und Arbeitsspeicher, da sowohl das Picosystem als auch der Pico den RP2040-Chip verwenden. Hier sind die vollst\u00e4ndigen Spezifikationen:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Angetrieben von RP2040 (Dual Arm Cortex M0+ mit 264kB SRAM)<\/li>\n\n\n\n<li>16 MB QSPI-Flash mit Unterst\u00fctzung f\u00fcr XiP<\/li>\n\n\n\n<li>1,54\u2033 Farb-SPI-IPS-LCD (240\u00d7240 und 120\u00d7120 Modi)<\/li>\n\n\n\n<li>D-Pad und Tasten<\/li>\n\n\n\n<li>525mAh LiPo-Akku (6 Std. +)<\/li>\n\n\n\n<li>Piezo-Summer\/Lautsprecher<\/li>\n\n\n\n<li>Ein-\/Ausschalttaste<\/li>\n\n\n\n<li>RGB-LED<\/li>\n\n\n\n<li>Programmierbar und wiederaufladbar \u00fcber USB-C (Kabel nicht enthalten)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Grafik-Modi<\/strong><\/h3>\n\n\n\n<p>PicoSystem unterst\u00fctzt zwei Grafikmodi.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>240\u00d7240: die native Aufl\u00f6sung des LCD-Bildschirms<\/li>\n\n\n\n<li>120\u00d7120: pixelverdoppelter Modus (spart RAM)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Wie sieht das Spielen auf dem Picosystem aus?<\/h3>\n\n\n\n<p>Das Spielen auf dem Picosystem ist einfach. Dr\u00fccken Sie einfach die Einschalttaste und Sie werden mit dem vorinstallierten Spiel Super Square Bros.<\/p>\n\n\n\n<p>Das Spiel ist ein einfacher Platformer, \u00e4hnlich wie Mario.<\/p>\n\n\n\n<p>Pimoroni hat auch andere Spiele aufgenommen:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/scorpion-games-uk.itch.io\/super-square-bros\">Super Square Bros.<\/a> von Scorpion Games - Ein h\u00fcpfendes viereckiges Jump'n'Run <strong>(vorinstalliertes Spiel)<\/strong><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/Gadgetoid\/32blit-dots\/releases\">Dots<\/a> - Ein Puzzlespiel, bei dem Punkte auftauchen. Bilden Sie Ketten aus zwei oder mehr Punkten und wetteifern Sie darum, die h\u00f6chste Punktzahl zu erreichen.<\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/32blit\/rocks-and-diamonds\/releases\">Felsen und Diamanten<\/a> - Klassisches Spiel, bei dem man Steinen ausweichen und Diamanten einsammeln muss.<\/li>\n\n\n\n<li><a href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0174\/1800\/files\/blit_v0.2.0_32blit-32blit-sdk-geometry.uf2?v=1633970589\">Geometrie<\/a> - Zerschlage Weltraumfelsen mit Lasern, um kleinere Weltraumfelsen zu erzeugen!<\/li>\n\n\n\n<li><a href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0174\/1800\/files\/blit_v0.2.0_32blit-32blit-sdk-scrolly-tile.uf2?v=1633970589\">Regenbogen-Aufstieg<\/a> - Das Dark Souls der prozedural generierten vertikalen Sprungpuzzles. Viel Gl\u00fcck!<\/li>\n\n\n\n<li><a href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0174\/1800\/files\/blit_v0.2.0_Daft-Freak-super-blit-kart.uf2?v=1634037972\">Super Blit Kart<\/a> von Daft_Freak - Ein \"Mode7\"-basiertes Rennspiel.<\/li>\n<\/ul>\n\n\n\n<p>Um diese Spiele zu installieren, gehen Sie wie folgt vor:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Laden Sie die Datei herunter.<\/li>\n\n\n\n<li>Schlie\u00dfen Sie Ihr Picosystem an den PC an<\/li>\n\n\n\n<li>Halten Sie die X-Taste gedr\u00fcckt und dr\u00fccken Sie die Power-Taste.<\/li>\n\n\n\n<li>Das Picosystem sollte als Laufwerk namens RPI-RP2 eingebunden werden<\/li>\n\n\n\n<li>Kopieren Sie die heruntergeladene .uf2-Datei auf Ihr Laufwerk. Sie wird automatisch geladen.<\/li>\n<\/ul>\n\n\n\n<p>Aus irgendeinem Grund funktionierte mein USB-C-auf-USB-C-Kabel nicht, aber das USB-A-auf-USB-C-Kabel funktionierte mit dem Picosystem. Wenn die rote LED nicht aufleuchtet, versuchen Sie ein anderes Kabel.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Programmieren Sie Ihre eigenen Spiele<\/h3>\n\n\n\n<p>Das Beste am Picosystem ist, dass es ein System bietet, mit dem du deine eigenen Spiele erstellen kannst.<\/p>\n\n\n\n<p>Anstatt von Grund auf neu zu programmieren, verf\u00fcgt PicoSystem \u00fcber eine spezielle API, mit der Sie Ihre Spiele erstellen k\u00f6nnen.<\/p>\n\n\n\n<p>Au\u00dferdem entf\u00e4llt ein gro\u00dfer Teil der m\u00fchsamen Arbeit, die erforderlich ist, um Einzelteile wie einen LCD-Bildschirm, Tasten, \u00dcberbr\u00fcckungsdr\u00e4hte und eine Lochrasterplatine zu kaufen und dann die Bibliotheken und Pakete zu finden, die erforderlich sind, um alle diese Teile zum Laufen zu bringen.<\/p>\n\n\n\n<p>Die API des PicoSystems verf\u00fcgt \u00fcber Funktionen zum Zeichnen von Dingen auf dem Bildschirm, zur Ausgabe von Audio, Hardwarefunktionen und anderen Hilfsfunktionen. Das macht es einfacher f\u00fcr dich, dein Spiel zu bauen.<\/p>\n\n\n\n<p>Genau wie der Raspberry Pi Pico kann das PicoSystem in C++ oder MicroPython programmiert werden.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Ist es einfach, ein Spiel mit dem Picosystem zu programmieren?<\/h3>\n\n\n\n<p>Ich w\u00fcrde empfehlen, dass Sie etwas Zeit und Geduld mitbringen, um Ihr eigenes Spiel mit dem Picosystem zu bauen.<\/p>\n\n\n\n<p>Die Dokumentation bietet die Grundlagen, um den Einstieg zu erleichtern, aber am besten ist es, wenn Sie bereits einige Vorkenntnisse in der Spieleprogrammierung haben.<\/p>\n\n\n\n<p>Die gr\u00f6\u00dfte Herausforderung f\u00fcr Anf\u00e4nger ist, dass es nicht viele Ressourcen gibt, in denen man lernen kann, wie man Beispielprojekte programmiert. Hier ist jedoch eine Liste von Referenzen, die Ihnen helfen werden:<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/pimoroni\/picosystem\/tree\/main\/micropython\">Picosystem MicroPython Anleitung (in readme)<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/pimoroni\/picosystem\/tree\/main\/micropython\/examples\/picosystem\">Picosystem MicroPython Beispiele<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/pimoroni\/picosystem\">Picosystem C++ Github<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/pimoroni\/picosystem\/tree\/main\/examples\">Picosystem C++ Beispiele<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/wiki.picosystem.com\/en\/c++\/cheatsheet\">Picosystem API Spickzettel, plus Bild, Schriftart Konverter<\/a> (in der Seitenleiste)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DIY-System: Erstellen der Hardware<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.youmaketech.com\/raspberry-pi-pico-retrogaming-system\/\">YouMakeTechs Anleitung<\/a> zeigt dem Leser, wie man eine komplette Spielkonsole mit Geh\u00e4use, Soundsystem und Dauerl\u00f6ten baut.<\/p>\n\n\n\n<p>F\u00fcr unseren Vergleich sehen wir uns an, wie viel es kosten w\u00fcrde, ein Ger\u00e4t selbst zu bauen, im Vergleich zum Picosystem, das ein kompletter Bausatz ist.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><\/td><td>Das Spielsystem von YMT<\/td><td>Pimoroni Picosystem<\/td><\/tr><tr><td>Fall<\/td><td>Optional, 3D-gedruckt ($4.47 f\u00fcr STL-Entw\u00fcrfe, plus Kosten f\u00fcr Filament und Miete\/Betrieb des 3D-Druckers)<\/td><td>Eingeschlossen<\/td><\/tr><tr><td>Raspberry Pi Pico<\/td><td>$5 f\u00fcr Pico H, da Sie die Header ben\u00f6tigen.<\/td><td>Eingeschlossen<\/td><\/tr><tr><td><a href=\"https:\/\/buyzero.de\/products\/waveshare-9092-0-96inch-oled-gerade-vertikale-stiftleiste?_pos=2&amp;_sid=c5e379f04&amp;_ss=r\">OLED-Display<\/a><\/td><td>$15 (0,96-Zoll-Display)<\/td><td>Eingeschlossen<\/td><\/tr><tr><td>Buttons<\/td><td>Vernachl\u00e4ssigbar<\/td><td>Eingeschlossen<\/td><\/tr><tr><td><a href=\"https:\/\/buyzero.de\/products\/breadboard-kit?variant=39481121374388\">Brettchen<\/a><\/td><td>$15 (Breadboard-Bausatz)<\/td><td>Eingeschlossen<\/td><\/tr><tr><td>\u00dcberbr\u00fcckungsdr\u00e4hte<\/td><td>Enthalten im Breadboard-Kit<\/td><td>Eingeschlossen<\/td><\/tr><tr><td>Schrauben<\/td><td>Bis zu $1<\/td><td>Eingeschlossen<\/td><\/tr><tr><td>Piezo<\/td><td>Vernachl\u00e4ssigbar&nbsp;<\/td><td>Eingeschlossen<\/td><\/tr><tr><td><strong>Gesamtkosten<\/strong><\/td><td>$40.47, ohne Kosten f\u00fcr 3D-Druck<\/td><td>$70<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Schauen wir uns also die endg\u00fcltigen Kosten f\u00fcr die verschiedenen Stufen von DIY-Setups an:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Einrichtung<\/strong><\/td><td><strong>Kosten<\/strong><\/td><\/tr><tr><td>Keine Batterie<\/td><td>$40.47 ohne 3D-Druckkosten<\/td><\/tr><tr><td>Lipo-Akku<\/td><td>$8<\/td><\/tr><tr><td>Pimoroni Pico Lipo<\/td><td>$16.39 - $4 (da wir den Pimoroni Pico Ersatz verwenden, k\u00f6nnen wir die Kosten f\u00fcr den Raspberry Pi Pico abziehen)<\/td><\/tr><tr><td>Insgesamt f\u00fcr ein batteriebetriebenes Kit<\/td><td>$60.86 exkl. 3D-Druckkosten<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Nur ein Vorbehalt - YouMakeTech sagt, dass man dies f\u00fcr weniger als $20 bauen kann. Nach meinen Recherchen unterscheiden sich die Kosten f\u00fcr einen Selbstbau, der mit dem Picosystem \u00fcbereinstimmt, jedoch nicht so sehr, vor allem wenn man die Software und den Komfort ber\u00fccksichtigt.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/FiLN-p2QdPG59_fRj0q-0bH2W37KsnaaHC5IwHf2sFCsAe7iVU_zKNecqpcVLmjOeVC_ht3T5L_ONcPuC3eCODvHvYxar5mS-tnmf_wiJAi47JZfG0NV00NLMYN_U0k7k-89gxbynldhvCNXx-QSzlhDyD3qkOCBqTlTbXRNf0270w1j0LqTuXPE8A\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Der Prototyp von YouMakeTech, der zwei Tasten und einen Bildschirm hat und Pong spielen kann<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Dennoch ist der Selbstbau eine gro\u00dfartige Lernm\u00f6glichkeit. Eine Sache, die mich herausforderte, war der Bildschirm. W\u00e4hrend das Beispiel von YouMakeTech eine I2C-Verbindung verwendet, nutzte der Bildschirm, den ich hatte, eine 4-polige SPI-Schnittstelle. Das erfordert entweder eine \u00c4nderung des Codes oder eine Modifizierung der Hardware, um weiterzumachen. Wenn Sie Herausforderungen m\u00f6gen, ist die DIY-Route genau das Richtige f\u00fcr Sie.<\/p>\n\n\n\n<p>Was sind also die Vorteile des Selbstbaus gegen\u00fcber dem Picosystem?<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Pro\/Kontra<\/td><td>DIY<\/td><td>Picosystem<\/td><\/tr><tr><td>Montage der Hardware<\/td><td>Sie machen alles selbst<\/td><td>Sie machen nichts selbst<\/td><\/tr><tr><td>Software<\/td><td>Hier gibt es nicht viel Hilfe. Man baut alles selbst und lernt, wie man die einzelnen Komponenten bedient.<\/td><td>Sie m\u00fcssen die API des Picosystems erlernen<\/td><\/tr><tr><td>Gelegenheit zum Lernen<\/td><td>Gr\u00f6\u00dfere Lernchancen, da Sie verschiedene Teile zusammenf\u00fcgen<\/td><td>Kleiner. Es ist fertig und die Software wird hier die gr\u00f6\u00dfte Lernchance sein<\/td><\/tr><tr><td>Erweiterungsf\u00e4higkeit<\/td><td>Da Sie es selbst gebaut haben, k\u00f6nnen Sie den LCD-Bildschirm \u00e4ndern, weitere Tasten hinzuf\u00fcgen, LEDs hinzuf\u00fcgen usw.<\/td><td>Nicht viel, es sei denn, Sie wollen ein komplettes System auseinandernehmen.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Erstellung des Pong-\u00e4hnlichen Spiels auf dem Picosystem vs. DIY-System<\/h2>\n\n\n\n<p class=\"has-text-align-center\"><img loading=\"lazy\" decoding=\"async\" width=\"602\" height=\"451\" src=\"https:\/\/lh3.googleusercontent.com\/RJq_cXB7E4foNOgagGJn3Dzcdlq3HwokXK7CgGKMkdkiGG7RNAdWhN0dKkejbY0GQiYaN9GGwxEQAv7Vv_SO9npoBi7pMIf3VSiKf_a_nfhBFkbJBzvFbWFcuEmMlf1XuvQHWvfm8YGU--7r4Vj1sI-X9ffH_z0OVY-ZhjuQLyhmCvHs0jHTlrg8Kg\"><\/p>\n\n\n\n<p>Ein neugieriges Experiment von mir besteht darin, herauszufinden, wie viel Aufwand es bedeutet, ein Spiel mit dem Picosystem zu entwickeln, anstatt es von Grund auf neu zu machen.<\/p>\n\n\n\n<p>Um die beiden Systeme zu vergleichen, werde ich ein Pong-\u00e4hnliches Spiel f\u00fcr einen Spieler sowohl mit dem DIY-System von YouMakeTech als auch mit dem Picosystem bauen.<\/p>\n\n\n\n<p>Die Pr\u00e4misse des Spiels ist einfach. Es ist ein Pong-\u00e4hnliches Spiel f\u00fcr einen Spieler, bei dem du jedes Mal 10 Punkte bekommst, wenn dein Ball vom Paddel abprallt. Wenn er auf den Boden des Bildschirms f\u00e4llt, erhalten Sie eine \"Game Over\"-Meldung.<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"blob:https:\/\/picockpit.com\/fea315db-91fe-48eb-99ef-83129db07775\"><\/video><\/figure>\n\n\n\n<p>Die Erstellung des Spiels auf beiden Systemen folgt einem einfachen Arbeitsablauf, der alle zu Thonny f\u00fchrt.<\/p>\n\n\n\n<p>Sie m\u00fcssen MicroPython auf den Pico flashen und dann Thonny verwenden, um Ihr Programm zu programmieren.&nbsp;<\/p>\n\n\n\n<p>Der MicroPython, den du auf das Picosystem flashen w\u00fcrdest, unterscheidet sich von der offiziellen MicroPython UF2-Datei. Stelle also sicher, dass du die richtige flashen willst, denn das Picosystem wird mit der offiziellen MicroPython-Version laufen. Es wird nur nicht wie vorgesehen funktionieren.<\/p>\n\n\n\n<p>Betrachten wir nun einige grundlegende Unterschiede zwischen den beiden. Ich schlie\u00dfe hier die Spiellogik aus und vergleiche nur die Unterschiede in der Interaktion zwischen Hardware und Software sowie die Programmiermuster.<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/YouMakeTech\/PicoRetroGamingSystem\/blob\/main\/PicoPong.py\">Sie k\u00f6nnen den Code von YouMakeTech hier sehen.<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Erster Unterschied: Hardware-Code<\/h3>\n\n\n\n<p>Die Dinge sind sehr \"roh\" mit der DIY-Route. Hier ist etwas Code, um das Display, GPIO und Tasten zu initialisieren, die Sie nicht brauchen, um mit dem Picosystem zu tun:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewbox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"from machine import Pin, PWM, I2C,from ssd1306 import SSD1306_I2C\u2026# Buttonsup = Pin(2, Pin.IN, Pin.PULL_UP)down = Pin(3, Pin.IN, Pin.PULL_UP)left = Pin(4, Pin.IN, Pin.PULL_UP)right = Pin(5, Pin.IN, Pin.PULL_UP)button1 = Pin(6, Pin.IN, Pin.PULL_UP)button2 = Pin(7, Pin.IN, Pin.PULL_UP)# Buzzer connected to GP18buzzer = PWM(Pin(18))# OLED Screen connected to GP14 (SDA) and GP15 (SCL)i2c = machine.I2C(1, sda = Pin(14), scl = Pin(15), freq = 400000)oled = SSD1306_I2C(SCREEN_WIDTH, SCREEN_HEIGHT, i2c)\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Kopieren\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code data-no-translation=\"\"><span class=\"line\"><span style=\"color: #D8DEE9\">from<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">machine<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">import<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">PWM<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">I2C<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">from<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">ssd1306<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">import<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">SSD1306_I2C<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\u2026<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #8FBCBB\">Buttons<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">up<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(2<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">IN<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">PULL_UP<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">down<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(3<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">IN<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">PULL_UP<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">left<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(4<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">IN<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">PULL_UP<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">right<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(5<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">IN<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">PULL_UP<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">button1<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(6<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">IN<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">PULL_UP<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">button2<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(7<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">IN<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">PULL_UP<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #8FBCBB\">Buzzer<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">connected<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">to<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">GP18<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">buzzer<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">PWM<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(18))<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\"># <\/span><span style=\"color: #8FBCBB\">OLED<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">Screen<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">connected<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">to<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">GP14<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><span style=\"color: #8FBCBB\">SDA<\/span><span style=\"color: #D8DEE9FF\">) <\/span><span style=\"color: #8FBCBB\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">GP15<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><span style=\"color: #8FBCBB\">SCL<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">i2c<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">machine<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">I2C<\/span><span style=\"color: #D8DEE9FF\">(1<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">sda<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(14)<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">scl<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">Pin<\/span><span style=\"color: #D8DEE9FF\">(15)<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">freq<\/span><span style=\"color: #D8DEE9FF\"> = 400000)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #8FBCBB\">oled<\/span><span style=\"color: #D8DEE9FF\"> = <\/span><span style=\"color: #8FBCBB\">SSD1306_I2C<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #8FBCBB\">SCREEN_WIDTH<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">SCREEN_HEIGHT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">i2c<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Zweiter Unterschied: Die API von Picosystem<\/h3>\n\n\n\n<p>Wenn Sie Code f\u00fcr das Picosystem schreiben, m\u00fcssen Sie innerhalb des Systems schreiben.<\/p>\n\n\n\n<p>Im Beispiel von YouMakeTech ist die gesamte Spiellogik in einer Datei gekapselt. <strong>w\u00e4hrend Wahr<\/strong> Schleife. Dazu geh\u00f6ren die Interaktion mit Schaltfl\u00e4chen, die Kollisionserkennung und das Zeichnen auf dem Bildschirm.<\/p>\n\n\n\n<p>Im Picosystem m\u00fcssen Sie innerhalb von drei Funktionen schreiben - <strong>init(), update() <\/strong>und <strong>zeichnen()<\/strong>.<\/p>\n\n\n\n<p>In meinem Code ist die gesamte Logik des Spiels in <strong>aktualisieren() <\/strong>einschlie\u00dflich Kollisionskontrolle und D-Pad-Interaktion.<\/p>\n\n\n\n<p>In einem einfachen Pong-Spiel gibt es ein paar Funktionen der API, die ich verwendet habe, um die Dinge etwas zu vereinfachen:<\/p>\n\n\n\n<p><strong>kreuzt(x1, y1, w1, h1, x2, y2, w2, h2)&nbsp; <\/strong>ist hier wahrscheinlich die gr\u00f6\u00dfte Hilfe. Du gibst die Koordinaten und Gr\u00f6\u00dfen der beiden Rechtecke an, und es wird true zur\u00fcckgegeben, wenn es eine \u00dcberschneidung gibt. In diesem Fall sind die beiden Rechtecke der Ball und der Stab (auch bekannt als Paddel). Das Manko der Funktion intersects() ist, dass sie nicht erkennt, auf welcher Seite die Kollision stattgefunden hat, so dass ich zus\u00e4tzlichen Code schreiben musste, um Kollisionen auf der Seite der Stange zu behandeln.<\/p>\n\n\n\n<p>Die API des Picosystems wird bei der Entwicklung komplizierterer Spiele wirklich gl\u00e4nzen, da sie bereits \u00fcber eine Methode f\u00fcr Framebuffer, Audioausgabe, Blending usw. verf\u00fcgt.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Code f\u00fcr Pimoroni Picosystem Pong-\u00e4hnliches Spiel<\/h2>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewbox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"#bar_pos_x = pixels from left, e.g. 0 from leftbar_pos_x = 50#bar_pos_y = pixels from top, e.g. 100px from topbar_pos_y = 100BAR_WIDTH = 30LENGTH_CONSTANT = 5ball_speed = 1ball_pos_x = 10ball_pos_y = 10ball_dx = 2ball_dy = 2score = 0game_over = Falsedef update(tick):        global bar_pos_x    global bar_pos_y    global ball_pos_x    global ball_pos_y    global ball_dx    global ball_dy    global ball_speed    global score    global game_over        def reverse_ball_dx():        global ball_dx        ball_dx = ball_dx * -1            def reverse_ball_dy():        global ball_dy        ball_dy = ball_dy * -1        ball_pos_x += ball_dx    ball_pos_y += ball_dy        if button(LEFT) and bar_pos_x &gt; 0:        bar_pos_x -= 1        if button(RIGHT) and bar_pos_x < 120 - BAR_WIDTH :        bar_pos_x += 1            if ball_pos_x <= 0 :        ball_pos_x = 0        reverse_ball_dx()            if ball_pos_x &gt;= 120 - LENGTH_CONSTANT :        ball_pos_x = 120 - LENGTH_CONSTANT        reverse_ball_dx()            if ball_pos_y &gt;= 120 - LENGTH_CONSTANT :        game_over = True            if ball_pos_y <= 0:        ball_pos_y = 0        reverse_ball_dy()            if intersects(bar_pos_x,bar_pos_y,BAR_WIDTH,LENGTH_CONSTANT, ball_pos_x, ball_pos_y, LENGTH_CONSTANT,LENGTH_CONSTANT):                reverse_ball_dy()        score += 10                #main intersection of ball and bar. if they intersect, check if they are intersecting on the sides.        #if not on sides (i.e. on top) reverse Y direction. Or else, reverse X direction.        if intersects(bar_pos_x,bar_pos_y,1,LENGTH_CONSTANT, ball_pos_x, ball_pos_y, LENGTH_CONSTANT,LENGTH_CONSTANT):                        #intersecting on left                        reverse_ball_dx()            ball_pos_x -= 2                    if intersects(bar_pos_x + BAR_WIDTH,bar_pos_y,1,LENGTH_CONSTANT, ball_pos_x, ball_pos_y, LENGTH_CONSTANT,LENGTH_CONSTANT):                        #intersecting on right                        reverse_ball_dx()            ball_pos_x += 2        def draw(tick):        if game_over:        pen(0,0,0)        clear()        pen(15,15,15)        text(&quot;Game Over&quot;, 35, 60)                    else:        pen(0, 0, 0)        clear()        pen(15,15,15)            #draw bar (paddle)        frect(bar_pos_x,bar_pos_y,BAR_WIDTH,LENGTH_CONSTANT)            #draw the ball        frect(ball_pos_x, ball_pos_y, LENGTH_CONSTANT,LENGTH_CONSTANT)        text(str(score), 80, 20)    start()\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Kopieren\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code data-no-translation=\"\"><span class=\"line\"><span style=\"color: #D8DEE9FF\">#<\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">pixels<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">from<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">left<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">e<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">g<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">from<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">left<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">50<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">#<\/span><span style=\"color: #D8DEE9\">bar_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">pixels<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">from<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">top<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">e<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">g<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> 100<\/span><span style=\"color: #D8DEE9\">px<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">from<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">top<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">bar_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">100<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">BAR_WIDTH<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">30<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">5<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">ball_speed<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">10<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">10<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">ball_dx<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">2<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">ball_dy<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">2<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">score<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">game_over<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">False<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">update<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">tick<\/span><span style=\"color: #D8DEE9FF\">):<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">bar_pos_y<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dx<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dy<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_speed<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">score<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">game_over<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">reverse_ball_dx<\/span><span style=\"color: #D8DEE9FF\">():<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dx<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">ball_dx<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dx<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #B48EAD\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">reverse_ball_dy<\/span><span style=\"color: #D8DEE9FF\">():<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">global<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dy<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">ball_dy<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dy<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #B48EAD\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">+=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dx<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">+=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_dy<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">button<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">LEFT<\/span><span style=\"color: #D8DEE9FF\">) <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&gt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">button<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">RIGHT<\/span><span style=\"color: #D8DEE9FF\">) <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&lt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">120<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9FF\"> BAR_WIDTH <\/span><span style=\"color: #ECEFF4\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">+=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&lt;=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\"> :<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">reverse_ball_dx<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&gt;=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">120<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9FF\"> LENGTH_CONSTANT <\/span><span style=\"color: #ECEFF4\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">120<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">reverse_ball_dx<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&gt;=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">120<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-<\/span><span style=\"color: #D8DEE9FF\"> LENGTH_CONSTANT <\/span><span style=\"color: #ECEFF4\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">game_over<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">True<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">&lt;=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">reverse_ball_dy<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">intersects<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">bar_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">BAR_WIDTH<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #D8DEE9FF\">):<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">reverse_ball_dy<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #D8DEE9\">score<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">+=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">10<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        #<\/span><span style=\"color: #D8DEE9\">main<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">intersection<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">of<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">and<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">bar<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">they<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">intersect<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">check<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">they<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">are<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">intersecting<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">sides<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        #<\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">not<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">sides<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><span style=\"color: #D8DEE9\">i<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">e<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">top<\/span><span style=\"color: #D8DEE9FF\">) <\/span><span style=\"color: #D8DEE9\">reverse<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Y<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">direction<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">Or<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">else<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">reverse<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">X<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">direction<\/span><span style=\"color: #ECEFF4\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">intersects<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">bar_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">1<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #D8DEE9FF\">):<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            #<\/span><span style=\"color: #D8DEE9\">intersecting<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">left<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #88C0D0\">reverse_ball_dx<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">-=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">2<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">intersects<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">+<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">BAR_WIDTH<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">bar_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">1<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #D8DEE9FF\">):<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            #<\/span><span style=\"color: #D8DEE9\">intersecting<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">on<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">right<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #88C0D0\">reverse_ball_dx<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">            <\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">+=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">2<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9\">def<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">draw<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">tick<\/span><span style=\"color: #D8DEE9FF\">):<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #D8DEE9FF\"> game_over<\/span><span style=\"color: #ECEFF4\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">pen<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">clear<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">pen<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #B48EAD\">15<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">15<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">15<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">text<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">Game Over<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">35<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">60<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">else<\/span><span style=\"color: #D8DEE9FF\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">pen<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">0<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">clear<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">pen<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #B48EAD\">15<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">15<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #B48EAD\">15<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        #<\/span><span style=\"color: #D8DEE9\">draw<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">bar<\/span><span style=\"color: #D8DEE9FF\"> (<\/span><span style=\"color: #D8DEE9\">paddle<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">frect<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">bar_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">bar_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">BAR_WIDTH<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        #<\/span><span style=\"color: #D8DEE9\">draw<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">the<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">frect<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">ball_pos_x<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">ball_pos_y<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9\">LENGTH_CONSTANT<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">        <\/span><span style=\"color: #88C0D0\">text<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #88C0D0\">str<\/span><span style=\"color: #D8DEE9FF\">(<\/span><span style=\"color: #D8DEE9\">score<\/span><span style=\"color: #D8DEE9FF\">)<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">80<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #B48EAD\">20<\/span><span style=\"color: #D8DEE9FF\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">start<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Haben Sie ein Spiel zu empfehlen?<\/h2>\n\n\n\n<p>Wenn Sie ein Spiel f\u00fcr den Raspberry Pi Pico haben, hinterlassen Sie unten einen Kommentar mit einer URL.<\/p>\n\n\n\n<p>Und wenn Sie sich unsere Paragon-Projektserie ansehen m\u00f6chten - gehen Sie zu <a href=\"https:\/\/picockpit.com\/raspberry-pi\/category\/paragon-projects\/\">hier<\/a>.<\/p>\n<div class=\"shariff shariff-align-center shariff-widget-align-left shariff-buttonstretch\"><ul class=\"shariff-buttons theme-white orientation-horizontal buttonsize-medium\"><li class=\"shariff-button twitter shariff-nocustomcolor\" style=\"background-color:#595959\"><a href=\"https:\/\/twitter.com\/share?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fde%2Fgaming-auf-dem-raspberry-pi-pico%2F&text=Gaming%20on%20the%20Raspberry%20Pi%20Pico\" title=\"Bei X teilen\" aria-label=\"Bei X teilen\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#000; color:#000\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#000\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\"><path fill=\"#000\" d=\"M14.258 10.152L23.176 0h-2.113l-7.747 8.813L7.133 0H0l9.352 13.328L0 23.973h2.113l8.176-9.309 6.531 9.309h7.133zm-2.895 3.293l-.949-1.328L2.875 1.56h3.246l6.086 8.523.945 1.328 7.91 11.078h-3.246zm0 0\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#000\">teilen<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button facebook shariff-nocustomcolor\" style=\"background-color:#4273c8\"><a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fde%2Fgaming-auf-dem-raspberry-pi-pico%2F\" title=\"Bei Facebook teilen\" aria-label=\"Bei Facebook teilen\" role=\"button\" rel=\"nofollow\" class=\"shariff-link\" style=\"; background-color:#3b5998; color:#3b5998\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#3b5998\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 18 32\"><path fill=\"#3b5998\" d=\"M17.1 0.2v4.7h-2.8q-1.5 0-2.1 0.6t-0.5 1.9v3.4h5.2l-0.7 5.3h-4.5v13.6h-5.5v-13.6h-4.5v-5.3h4.5v-3.9q0-3.3 1.9-5.2t5-1.8q2.6 0 4.1 0.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#3b5998\">teilen<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button telegram shariff-nocustomcolor\" style=\"background-color:#4084A6\"><a href=\"https:\/\/telegram.me\/share\/url?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fde%2Fgaming-auf-dem-raspberry-pi-pico%2F&text=Gaming%20on%20the%20Raspberry%20Pi%20Pico\" title=\"Bei Telegram teilen\" aria-label=\"Bei Telegram teilen\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#0088cc; color:#0088cc\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#0088cc\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 32 32\"><path fill=\"#0088cc\" d=\"M30.8 6.5l-4.5 21.4c-.3 1.5-1.2 1.9-2.5 1.2L16.9 24l-3.3 3.2c-.4.4-.7.7-1.4.7l.5-7L25.5 9.2c.6-.5-.1-.8-.9-.3l-15.8 10L2 16.7c-1.5-.5-1.5-1.5.3-2.2L28.9 4.3c1.3-.5 2.3.3 1.9 2.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#0088cc\">teilen<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button reddit shariff-nocustomcolor\" style=\"background-color:#ff5700\"><a href=\"https:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fde%2Fgaming-auf-dem-raspberry-pi-pico%2F\" title=\"Bei Reddit teilen\" aria-label=\"Bei Reddit teilen\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#ff4500; color:#ff4500\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#ff4500\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 512 512\"><path fill=\"#ff4500\" d=\"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#ff4500\">teilen<\/span>&nbsp;<\/a><\/li><\/ul><\/div>","protected":false},"excerpt":{"rendered":"<p>In diesem Beitrag m\u00f6chte ich \u00fcber Spiele auf dem Raspberry Pi Pico sprechen. Ich erinnere mich an mein erstes Dumbphone, das damals noch \"Telefon\" genannt wurde. Es konnte einfache Spiele wie Snake spielen. Das war der letzte Schrei. Davor musste man ein separates Handheld mit sich f\u00fchren, das Tetris oder ein dynamischeres Spiel spielte...<\/p>","protected":false},"author":2,"featured_media":2946,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[525,528,510,527,187,526],"class_list":["post-2944","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-raspberry-pi-pico","tag-gameboy","tag-picosystem","tag-pimoroni","tag-pong","tag-raspberry-pi","tag-tamagotchi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Gaming on the Raspberry Pi Pico | PiCockpit<\/title>\n<meta name=\"description\" content=\"Gaming on the Raspberry Pi Pico is an awesome way to emulate consoles and is a great platform to learn to program your own games.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/picockpit.com\/raspberry-pi\/de\/gaming-auf-dem-raspberry-pi-pico\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Gaming on the Raspberry Pi Pico | PiCockpit\" \/>\n<meta property=\"og:description\" content=\"Gaming on the Raspberry Pi Pico is an awesome way to emulate consoles and is a great platform to learn to program your own games.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/picockpit.com\/raspberry-pi\/de\/gaming-auf-dem-raspberry-pi-pico\/\" \/>\n<meta property=\"og:site_name\" content=\"PiCockpit\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pi3gshop\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-17T11:44:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-23T10:43:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1778\" \/>\n\t<meta property=\"og:image:height\" content=\"1000\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"raspi berry\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@pi3g\" \/>\n<meta name=\"twitter:site\" content=\"@pi3g\" \/>\n<meta name=\"twitter:label1\" content=\"Geschrieben von\" \/>\n\t<meta name=\"twitter:data1\" content=\"raspi berry\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"16\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/\"},\"author\":{\"name\":\"raspi berry\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\"},\"headline\":\"Gaming on the Raspberry Pi Pico\",\"datePublished\":\"2022-09-17T11:44:21+00:00\",\"dateModified\":\"2023-08-23T10:43:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/\"},\"wordCount\":3348,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/featured-image.jpg\",\"keywords\":[\"Gameboy\",\"picosystem\",\"Pimoroni\",\"Pong\",\"Raspberry Pi\",\"Tamagotchi\"],\"articleSection\":[\"Raspberry Pi Pico\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/\",\"name\":\"Gaming on the Raspberry Pi Pico | PiCockpit\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/featured-image.jpg\",\"datePublished\":\"2022-09-17T11:44:21+00:00\",\"dateModified\":\"2023-08-23T10:43:28+00:00\",\"description\":\"Gaming on the Raspberry Pi Pico is an awesome way to emulate consoles and is a great platform to learn to program your own games.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#primaryimage\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/featured-image.jpg\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2022\\\/09\\\/featured-image.jpg\",\"width\":1778,\"height\":1000,\"caption\":\"games on raspberry pi pico\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/gaming-on-the-raspberry-pi-pico\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Raspberry Pi Pico\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/category\\\/raspberry-pi-pico\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Gaming on the Raspberry Pi Pico\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"name\":\"PiCockpit\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\",\"name\":\"PiCockpit.com\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"width\":1165,\"height\":283,\"caption\":\"PiCockpit.com\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/pi3gshop\",\"https:\\\/\\\/x.com\\\/pi3g\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\",\"name\":\"raspi berry\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"caption\":\"raspi berry\"},\"description\":\"I'm here to help you with all your Raspberry Pi related questions &amp; love to share about new project ideas for the Raspberry Pi, and give quick tips. Of course I'll also help you with PiCockpit and how to make your Raspberry Pi even easier to use with this raspberry pi monitoring solution :-)\",\"sameAs\":[\"https:\\\/\\\/picockpit.com\"],\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/de\\\/author\\\/raspi-berry\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Spielen mit dem Raspberry Pi Pico | PiCockpit","description":"Spiele auf dem Raspberry Pi Pico sind eine gro\u00dfartige M\u00f6glichkeit, Konsolen zu emulieren, und eine gro\u00dfartige Plattform, um zu lernen, eigene Spiele zu programmieren.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/picockpit.com\/raspberry-pi\/de\/gaming-auf-dem-raspberry-pi-pico\/","og_locale":"de_DE","og_type":"article","og_title":"Gaming on the Raspberry Pi Pico | PiCockpit","og_description":"Gaming on the Raspberry Pi Pico is an awesome way to emulate consoles and is a great platform to learn to program your own games.","og_url":"https:\/\/picockpit.com\/raspberry-pi\/de\/gaming-auf-dem-raspberry-pi-pico\/","og_site_name":"PiCockpit","article_publisher":"https:\/\/www.facebook.com\/pi3gshop","article_published_time":"2022-09-17T11:44:21+00:00","article_modified_time":"2023-08-23T10:43:28+00:00","og_image":[{"width":1778,"height":1000,"url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg","type":"image\/jpeg"}],"author":"raspi berry","twitter_card":"summary_large_image","twitter_creator":"@pi3g","twitter_site":"@pi3g","twitter_misc":{"Geschrieben von":"raspi berry","Gesch\u00e4tzte Lesezeit":"16\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#article","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/"},"author":{"name":"raspi berry","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee"},"headline":"Gaming on the Raspberry Pi Pico","datePublished":"2022-09-17T11:44:21+00:00","dateModified":"2023-08-23T10:43:28+00:00","mainEntityOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/"},"wordCount":3348,"commentCount":1,"publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg","keywords":["Gameboy","picosystem","Pimoroni","Pong","Raspberry Pi","Tamagotchi"],"articleSection":["Raspberry Pi Pico"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/","url":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/","name":"Spielen mit dem Raspberry Pi Pico | PiCockpit","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#website"},"primaryImageOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#primaryimage"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg","datePublished":"2022-09-17T11:44:21+00:00","dateModified":"2023-08-23T10:43:28+00:00","description":"Spiele auf dem Raspberry Pi Pico sind eine gro\u00dfartige M\u00f6glichkeit, Konsolen zu emulieren, und eine gro\u00dfartige Plattform, um zu lernen, eigene Spiele zu programmieren.","breadcrumb":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#primaryimage","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2022\/09\/featured-image.jpg","width":1778,"height":1000,"caption":"games on raspberry pi pico"},{"@type":"BreadcrumbList","@id":"https:\/\/picockpit.com\/raspberry-pi\/gaming-on-the-raspberry-pi-pico\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/picockpit.com\/raspberry-pi\/"},{"@type":"ListItem","position":2,"name":"Raspberry Pi Pico","item":"https:\/\/picockpit.com\/raspberry-pi\/category\/raspberry-pi-pico\/"},{"@type":"ListItem","position":3,"name":"Gaming on the Raspberry Pi Pico"}]},{"@type":"WebSite","@id":"https:\/\/picockpit.com\/raspberry-pi\/#website","url":"https:\/\/picockpit.com\/raspberry-pi\/","name":"PiCockpit","description":"","publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/picockpit.com\/raspberry-pi\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization","name":"PiCockpit.de","url":"https:\/\/picockpit.com\/raspberry-pi\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","width":1165,"height":283,"caption":"PiCockpit.com"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pi3gshop","https:\/\/x.com\/pi3g"]},{"@type":"Person","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee","name":"Himbeere","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","caption":"raspi berry"},"description":"Ich bin hier, um euch bei all euren Fragen rund um den Raspberry Pi zu helfen und erz\u00e4hle gerne von neuen Projektideen f\u00fcr den Raspberry Pi und gebe schnelle Tipps. Nat\u00fcrlich helfe ich euch auch mit PiCockpit und wie ihr euren Raspberry Pi mit dieser Raspberry Pi Monitoring L\u00f6sung noch einfacher bedienen k\u00f6nnt :-)","sameAs":["https:\/\/picockpit.com"],"url":"https:\/\/picockpit.com\/raspberry-pi\/de\/author\/raspi-berry\/"}]}},"_links":{"self":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/posts\/2944","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/comments?post=2944"}],"version-history":[{"count":8,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/posts\/2944\/revisions"}],"predecessor-version":[{"id":4882,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/posts\/2944\/revisions\/4882"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/media\/2946"}],"wp:attachment":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/media?parent=2944"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/categories?post=2944"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/de\/wp-json\/wp\/v2\/tags?post=2944"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}