{"id":516,"date":"2023-08-01T17:30:24","date_gmt":"2023-08-01T15:30:24","guid":{"rendered":"https:\/\/www.dev-tronic.de\/?p=516"},"modified":"2023-08-01T17:52:16","modified_gmt":"2023-08-01T15:52:16","slug":"z80ardu-video-display-adapter-mit-tms9918","status":"publish","type":"post","link":"https:\/\/www.dev-tronic.de\/?p=516","title":{"rendered":"Z80Ardu \u2014 Displaydapter (mit TMS9918)"},"content":{"rendered":"\n<p>Der f\u00fcr den Z80Ardu entwickelte &#8222;Grafikadapter&#8220; mit dem MC6847 (<a href=\"https:\/\/www.dev-tronic.de\/?p=85\">siehe hier<\/a>) funktioniert ganz prima. Die aktuelle Version hat auch keine Probleme mehr, wenn es um schnelle Speicherzugriffe geht.<\/p>\n\n\n\n<p>Dennoch: Ich hatte schon l\u00e4nger den Wunsch, die in meiner Bastelkiste schlummernden TMS9918 oder TMS9929 von Texas Instruments als Basis f\u00fcr eine &#8222;Grafikkarte&#8220; zu verwenden. Diese Chips kamen unter anderem im Homecomputer TI99\/4a und in den Computern nach dem MSX-standard zum Einsatz.<\/p>\n\n\n\n<p>W\u00e4hrend ich mit dem MC6847 (inzwischen) recht vertraut bin, kenne ich mich mit dem TMS9918 nicht wirklich aus. Verschiedene Anl\u00e4ufe auf dem Breadboard scheiterten leider. Ich bekam immer maximal ein Flimmern auf den Bildschirm gezaubert.<\/p>\n\n\n\n<p>Ich beschloss deshalb, ein bestehendes Design zu nutzen und es, falls n\u00f6tig, f\u00fcr den Z80Ardu zu modifizieren. Die Basis war deshalb das Design von <a href=\"https:\/\/digicoolthings.com\/tms9929a-vdp-rediscovery-and-alternative-vram-solution\/\" data-type=\"URL\" data-id=\"https:\/\/digicoolthings.com\/tms9929a-vdp-rediscovery-and-alternative-vram-solution\/\">DigiCoolThings <\/a> zu verwenden. Ich habe es lediglich um einen SN74HCT32-Baustein erweitert um die das Timing f\u00fcr das \/WR und das \/RD-Signal mit dem Signal \/IOREQ des Z80Ardu zu synvhronisieren.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-1024x576.jpeg\" alt=\"\" class=\"wp-image-515\" srcset=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-1024x576.jpeg 1024w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-300x169.jpeg 300w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-768x432.jpeg 768w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-1536x864.jpeg 1536w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-375x210.jpeg 375w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/07\/TMS9918_Video_Display_Adapter-rotated.jpeg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild-1024x576.jpeg\" alt=\"\" class=\"wp-image-524\" srcset=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild-1024x576.jpeg 1024w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild-300x169.jpeg 300w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild-768x432.jpeg 768w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild-1536x864.jpeg 1536w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild-375x210.jpeg 375w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Z80Ardu_TMS9918_Testbild.jpeg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>W\u00e4hrend im Design von DigiCoolThings Logik-Chips der HCT-Serie eingesetzt werden, habe ich den 74HCT244 durch einen 74ACT244 und den von mir in das Design eingef\u00fcgten 74HCT32 durch einen 74ACT32 ersetzt. Diese beiden sind noch einmal etwas schneller und erleichtern das Spiel mit dem Timing erheblich. Ein Versuch mit den HCT-Versionen zeigt aber, dass diese auch funktionieren.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Download:<\/strong><\/p>\n\n\n\n<p>Das Originaldesign findet sich auf der Seite von DigiCoolThings. Ich stelle das PDF aber auch hier mal zur Verf\u00fcgung:<\/p>\n\n\n\n<p><a href=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/TMS9929A_VDP_Alternative_VRAM_Solution_Schematic.pdf\">Originaldesign von DigiCoolThings<\/a><\/p>\n\n\n\n<p>Mein erweitertes Design f\u00fcr den Z80Ardu:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"735\" src=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Schematic_Z80Ardu_TMS9918_2023-08-01-1024x735.png\" alt=\"\" class=\"wp-image-521\" srcset=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Schematic_Z80Ardu_TMS9918_2023-08-01-1024x735.png 1024w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Schematic_Z80Ardu_TMS9918_2023-08-01-300x215.png 300w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Schematic_Z80Ardu_TMS9918_2023-08-01-768x551.png 768w, https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Schematic_Z80Ardu_TMS9918_2023-08-01.png 1251w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Und hier noch einmal alles zusammen in einer ZIP-Datei:<\/p>\n\n\n\n<p><a href=\"https:\/\/www.dev-tronic.de\/wp-content\/uploads\/2023\/08\/Schematic_Z80Ardu_TMS9918_2023-08-01.zip\">Z80Ardu_TMS9918_Displayadapter<\/a>  <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Der f\u00fcr den Z80Ardu entwickelte &#8222;Grafikadapter&#8220; mit dem MC6847 (siehe hier) funktioniert ganz prima. Die aktuelle Version hat auch keine Probleme mehr, wenn es um schnelle Speicherzugriffe geht. Dennoch: Ich hatte schon l\u00e4nger den Wunsch, die in meiner Bastelkiste schlummernden TMS9918 oder TMS9929 von Texas Instruments als Basis f\u00fcr eine &#8222;Grafikkarte&#8220; zu verwenden. Diese Chips kamen unter anderem im Homecomputer TI99\/4a und in den Computern nach dem MSX-standard zum Einsatz. W\u00e4hrend ich mit dem MC6847 (inzwischen) recht vertraut bin, kenne<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,3],"tags":[13,18,51,11,10],"class_list":["post-516","post","type-post","status-publish","format-standard","hentry","category-z80","category-z80ardu","tag-displayadapter","tag-grafik","tag-tms9918","tag-z80","tag-z80ardu"],"_links":{"self":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts\/516","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=516"}],"version-history":[{"count":6,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts\/516\/revisions"}],"predecessor-version":[{"id":526,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=\/wp\/v2\/posts\/516\/revisions\/526"}],"wp:attachment":[{"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=516"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=516"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dev-tronic.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=516"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}