Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Septembre 25, 2022, 21:00:55
Accueil | Aide | Rechercher | Identifiez-vous | Inscrivez-vous

+  ArcheoGamers Forums
|-+  Divers
| |-+  Atomic Bistrot
| | |-+  Doom sur RP2040
0 Membres et 1 Invité sur ce fil de discussion. « sujet précédent | | sujet suivant »
Pages: [1] Imprimer
Auteur Fil de discussion: Doom sur RP2040  (Lu 1096 fois)
LeFauve
Coleco Team
Indiana Jones
*****
Messages: 1554


"Protégez les arbres, mangez du castor"


« le: Mars 18, 2022, 10:49:41 »

De nos jours, Doom a été porté sur tout et n'importe quoi (appareil photo, réfrigérateur, ampoule connectée, etc...).

Le portage du jour est sur le dernier micro contrôleur de Raspberry, le Pi Pico RP 2040.

Ce petit bidule à 4$ (à ne pas confondre avec le "Pi tout court" qui est un vrai ordinateur faisant tourner Linux) est une sorte d'Arduino super-vitaminé (avec un Dual-core Arm Cortex-M0@133 MHz et 264KB de RAM).

Ca a l'air suffisant comparé aux PC qui faisaient tourner Doom quand il est sorti, mais il faut considérer que le RP2040 n'a ni carte vidéo, ni carte son, donc en plus de faire tourner le jeu il doit "bit-banger" un signal vidéo VGA ainsi qu'une sortie son stéréo.

Le "bit-banging" consiste à générer un signal de manière totalement logicielle, donc en gros pour le VGA il faut générer des 0 et des 1 sur 18 pins avec un timing suffisamment correct pour qu'un moniteur VGA puisse décoder l'image  (à 60 FPS Choqué )

En plus, le RP2040 n'a que 2 Mo de stockage, et le fichier contenant les ressources de Doom (DOOM1.WAD) fait 4Mo donc il a fallut tout décompresser en temps réel.

Bref, c'est un bel exploit, surtout quand on regarde le résultat obtenu :

  •     Full DOOM1.WAD playable on Raspberry Pi Pico with 2M flash.
  •     Ultimate Doom and Doom II are playable on 8M devices.
  •     320x200x60 VGA output (really 1280x1024x60).
  •     9 Channel OPL2 Sound at 49716Hz.
  •     8 Channel Stereo Sound Effects.
  •     I2C networking for up to 4 players.
  •     Save/Load of games.
  •     All cheats supported.
  •     Demos from original WADs run correctly.
  •     USB Keyboard Input support.
  •     All end scenes, intermissions, help screens etc. supported.
  •     Good frame rate; generally 30-35+ FPS.
  •     Uses 270Mhz overclock (requires flash chip that will run at 135Mhz).

Toutes les parties intéressantes ont été documentées ici (en Anglais), et le code source se trouve là  Bisou

Et il y a une petite vidéo ici.
Journalisée
Pages: [1] Imprimer 
« sujet précédent | | sujet suivant »
Aller à:  


Connexion avec identifiant, mot de passe et durée de la session

Hit-Parade Propulsé par MySQL Propulsé par PHP Powered by SMF 1.1.4.9 | SMF © 2006, Simple Machines LLC XHTML 1.0 Transitionnel valide ! CSS valide ! Classement de sites - Inscrivez le vôtre!