{"id":906,"date":"2019-03-13T13:22:31","date_gmt":"2019-03-13T12:22:31","guid":{"rendered":"http:\/\/www.fabienm.eu\/flf\/?p=906"},"modified":"2019-11-08T10:37:20","modified_gmt":"2019-11-08T09:37:20","slug":"designing-video-game-hardware-in-verilog","status":"publish","type":"post","link":"https:\/\/www.fabienm.eu\/flf\/designing-video-game-hardware-in-verilog\/","title":{"rendered":"Designing Video Game Hardware in Verilog"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code><\/code><\/pre>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"440\" height=\"671\" src=\"http:\/\/www.fabienm.eu\/flf\/wp-content\/uploads\/2019\/03\/verilog_game_top.jpg\" alt=\"\" class=\"wp-image-909\" srcset=\"https:\/\/www.fabienm.eu\/flf\/wp-content\/uploads\/2019\/03\/verilog_game_top.jpg 440w, https:\/\/www.fabienm.eu\/flf\/wp-content\/uploads\/2019\/03\/verilog_game_top-197x300.jpg 197w\" sizes=\"auto, (max-width: 440px) 100vw, 440px\" \/><figcaption><a href=\"https:\/\/www.amazon.fr\/Designing-Video-Game-Hardware-Verilog\/dp\/1728619440\">Couverture du livre<\/a><\/figcaption><\/figure><\/div>\n\n\n\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Comet_Busters!\">Stephen Hugg <\/a>est l&rsquo;auteur d&rsquo;un vieux jeux en shareware tournant sur Win95 nomm\u00e9<a href=\"https:\/\/en.wikipedia.org\/wiki\/Comet_Busters!\"> comet buster<\/a>. C&rsquo;est surtout un grand fan de r\u00e9tro-gaming.<\/p>\n\n\n\n<p>Or, \u00e0 une \u00e9poque les consoles de jeux fonctionnaient avec de la logique discr\u00e8te \u00e0 base de puces que l&rsquo;on soudait sur un PCB pour r\u00e9aliser le jeux. La seule horloge utilis\u00e9e \u00e9tait l&rsquo;horloge \u00abpixel\u00bb de l&rsquo;\u00e9cran CRT qui servait \u00e0 piloter le balayage du faisceau d&rsquo;\u00e9lectrons sur le t\u00e9l\u00e9viseur.<\/p>\n\n\n\n<p>Dans ce livre, l&rsquo;auteur revisite l&rsquo;architecture de ces vieilles consoles avec du <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Verilog\">Verilog<\/a>. \u00c0 l&rsquo;\u00e9poque ce langage n&rsquo;existait pas, mais il est tout de m\u00eame bien indiqu\u00e9 pour d\u00e9crire les circuits de logique num\u00e9rique qui \u00e9taient utilis\u00e9s dans ces vieilles consoles de jeux.<\/p>\n\n\n\n<p>L&rsquo;ouvrage commence donc par un cours de Verilog avec les bases du langage. Puis il encha\u00eene sur les circuits de base utilis\u00e9 \u00e0 l&rsquo;\u00e9poque pour piloter un \u00e9cran CRT. Avec les technique comme le <a href=\"http:\/\/8bitworkshop.com\/v3.3.0\/?platform=verilog&amp;file=ball_slip_counter.v\">slipping counter<\/a> qui permettait d&rsquo;\u00e9conomiser des portes logiques en jouant sur le compteur de ligne et de colonnes de l&rsquo;\u00e9cran pour d\u00e9placer une balle.<\/p>\n\n\n\n<p>Le livre encha\u00eene ensuite sur l&rsquo;architecture d&rsquo;un processeur 8 bits puis d&rsquo;un processeur 16bits.<\/p>\n\n\n\n<p>Et pour que l&rsquo;on puisse mettre la main \u00e0 la p\u00e2te, un site internet permet de simuler les \u00abprogrammes\u00bb d\u00e9crit en verilog.<\/p>\n\n\n\n<p>On peut donc tester en live tout les codes propos\u00e9 dans le livre sur le site <a href=\"http:\/\/8bitworkshop.com\/\">8bitsworkshop. <\/a><\/p>\n\n\n\n<p>Stephen Hugg n&rsquo;en est pas \u00e0 son coup d&rsquo;essais en mati\u00e8re de livre sur les vieux jeux vid\u00e9o puisque ce livre est le troisi\u00e8me. Mais c&rsquo;est le premier livre \u00e0 parler d&rsquo;architecture \u00ab\u00e9lectronique\u00bb, les deux pr\u00e9c\u00e9dent parlaient surtout de programmation de jeux vid\u00e9o sur de vieille architecture.<\/p>\n\n\n\n<p>C&rsquo;est un excellent petit livre pour se mettre au Verilog de mani\u00e8re ludique. Et cela permet de se replonger dans l&rsquo;histoire des vieux jeux vid\u00e9os.<br><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"440\" height=\"667\" src=\"http:\/\/www.fabienm.eu\/flf\/wp-content\/uploads\/2019\/03\/verilog_game_bottom.jpg\" alt=\"\" class=\"wp-image-910\" srcset=\"https:\/\/www.fabienm.eu\/flf\/wp-content\/uploads\/2019\/03\/verilog_game_bottom.jpg 440w, https:\/\/www.fabienm.eu\/flf\/wp-content\/uploads\/2019\/03\/verilog_game_bottom-198x300.jpg 198w\" sizes=\"auto, (max-width: 440px) 100vw, 440px\" \/><\/figure><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Stephen Hugg est l&rsquo;auteur d&rsquo;un vieux jeux en shareware tournant sur Win95 nomm\u00e9 comet buster. C&rsquo;est surtout un grand fan de r\u00e9tro-gaming. Or, \u00e0 une \u00e9poque les consoles de jeux fonctionnaient avec de la logique discr\u00e8te \u00e0 base de puces que l&rsquo;on soudait sur un PCB pour r\u00e9aliser le jeux. La seule horloge utilis\u00e9e \u00e9tait &hellip; <a href=\"https:\/\/www.fabienm.eu\/flf\/designing-video-game-hardware-in-verilog\/\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Designing Video Game Hardware in Verilog<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","footnotes":""},"categories":[3,48,1,20],"tags":[116,115,52,30],"class_list":["post-906","post","type-post","status-publish","format-standard","hentry","category-langages","category-livre","category-non-classe","category-verilog","tag-8bits","tag-jeux-video","tag-livre","tag-verilog"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"post-thumbnail":false},"uagb_author_info":{"display_name":"Fabien Marteau","author_link":"https:\/\/www.fabienm.eu\/flf\/author\/admin\/"},"uagb_comment_info":0,"uagb_excerpt":"Stephen Hugg est l&rsquo;auteur d&rsquo;un vieux jeux en shareware tournant sur Win95 nomm\u00e9 comet buster. C&rsquo;est surtout un grand fan de r\u00e9tro-gaming. Or, \u00e0 une \u00e9poque les consoles de jeux fonctionnaient avec de la logique discr\u00e8te \u00e0 base de puces que l&rsquo;on soudait sur un PCB pour r\u00e9aliser le jeux. La seule horloge utilis\u00e9e \u00e9tait\u2026","_links":{"self":[{"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/posts\/906","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/comments?post=906"}],"version-history":[{"count":5,"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/posts\/906\/revisions"}],"predecessor-version":[{"id":913,"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/posts\/906\/revisions\/913"}],"wp:attachment":[{"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/media?parent=906"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/categories?post=906"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fabienm.eu\/flf\/wp-json\/wp\/v2\/tags?post=906"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}