Publié le 5 février 2014 - par

Avec 8086TINY mettez un PC-XT dans votre Raspberry Pi

ibm_pc_raspberry_250pxAmis informaticiens de la « belle époque » – celle des « vrais » PC au clavier aussi lourd qu’une unité centrale actuelle, équipés d’une prise pour brancher le lecteur de K7 destiné aux sauvegardes… – sortez vos mouchoirs !

Ils l’ont fait : Un émulateur de PC qui tourne sur notre framboise314. Allez, on ressort les disquettes 5 pouces 1/4, et on démarre sous MS-DOS, et après on se fait une partie de Flight Simulator !

Présentation de l’émulateur 8086tiny

Un Raspberry Pi posé sur le clavier de mon IBM PC

Un Raspberry Pi posé sur le clavier de mon IBM PC

Adrian CABLE a gagné le concours IOCCC 2013 (The International Obfuscated C Code Contest = Concours international de code C obfusquéqui consiste à écrire des logiciels en utilisant le moins de caractères possibles.

Un Raspberry Pi posé sur le clavier de mon IBM-PC

Un Raspberry Pi posé sur le clavier de mon IBM-PC

Son 8086tiny a remporté un franc succès avec ses 4043 octets de C qui sont « seulement » capables d’émuler (excusez du peu) un   compatible IBM PC du milieu des années 1980 comprenant :

  • CPU Intel 8086/186
  • 1 Mo de RAM
  • Contrôleur de disquette 3.5  » (1.44MB/720KB) 8072A
  • Contrôleur de disque dur (prend en charge un seul disque dur 528MB)
  • Carte graphique Hercules 720×348 graphiques en 2 couleurs (64 Ko de RAM vidéo), et CGA 80×25 16 couleurs avec support du mode texte
  • Timer programmable 8253 (PIT)
  • Contrôleur d’interruption programmable 8259 (PIC)
  • Contrôleur de clavier XT 83 touches 8042
  •  Horloge temps réel MC146818 (RTC)
  • Haut-parleur du PC

L’émulateur utilise la bibliothèque graphique SDL pour la portabilité, et se compile sur Windows, Mac OS X, Linux et probablement sur la plupart des autres systèmes 32-bit/64-bit également.

Adrian a déclaré à raspberrypi.org :

« L’ordinateur personnel tel que nous le connaissons aujourd’hui est apparu dans les années 80 avec la sortie de l’IBM PC – une machine incroyablement complexe pour l’époque, et le résultat de centaines de milliers d’heures-homme de temps de développement, pour un coût de centaines de millions de dollars .

Trente ans plus tard , je me suis posé la question de savoir comment on pourrait rédiger n petit logiciel émulant ce PC et hautement portable, complet et suffisamment précis pour simuler non seulement le processeur Intel 8086, mais également assez de matériel périphérique pour exécuter des logiciels comme Windows, AutoCAD, Lotus 1-2-3 et les jeux PC classiques de l’époque. La réponse : 4043 octets de code source C très condensé, qui ont remporté le Concours International 2013 du Code C obfusqué.

Après le concours, une forte demande a conduit à la libération de 8086tiny, une distribution entièrement documentée et commentée du code d’origine, y compris le code source complet du BIOS. 8086tiny, lorsqu’il est installé sur un Raspberry Pi à 30€, met à votre disposition le plus petit , mais aussi le moins cher PC du monde.

Phénomène unique pour les émulateurs de PC, 8086tiny est publié sous la licence open source la plus libre possible, la licence MIT, qui permet l’utilisation ou la redistribution à des fins commerciales ou non commerciales, sans aucune restriction. J’encourage tout le monde à utiliser 8086tiny comme point de départ pour des projets d’émulation  » .

Installer 8086tiny

8086tiny fait maintenant partie du dépôt Raspbian et peut être installé en utilisant apt-get et il est livré avec un disque dur DOS déjà installé. D’autres instructions sur l’installation et l’utilisation peuvent être trouvés sur les forums. Vous pourrez par exemple vous replonger avec délices dans Word Perfect 5.1! (prenez un mouchoir, vous avez une larme qui coule…)

8086tiny_wordperfect

Philosophie de 8086tiny

Un Raspberry Pi posé sur le clavier de mon IBM-PC

Un Raspberry Pi posé sur le clavier de mon IBM-PC

La philosophie de 8086tiny est de garder le code de base aussi petit que possible, et à travers la licence open source et la mise à disposition sur GitHub d’encourager les développeurs individuels à le modifier et à l’étendre selon leurs besoins spécifiques, l’ajout du support, par exemple, pour les jeux d’instructions plus complexes (Pentium) ou des périphériques (souris). Toutes les questions, commentaires ou suggestions sont les bienvenues dans le  forum 8086tiny.

Le futur

8086tiny est en plein développement et on peut s’attendre à d’autres avancées. Voici quelques copies d’écran pour montrer le potentiel de ce « petit » émulateur qui devrait aller loin.

Configuration de DeluxePaint - Carte Hercules 720 x 348

Configuration de DeluxePaint – Carte Hercules 720 x 348

8086tiny - Windows 3

8086tiny – Windows 3

8086tiny - Qbasic sous MS-DOS

8086tiny – Qbasic sous MS-DOS

8086tiny - MS-DOS

8086tiny – MS-DOS

8086tiny - Lotus 1-2-3

8086tiny – Lotus 1-2-3

8086tiny - Linux ELKS

8086tiny – Linux ELKS

8086tiny - Flight Simulator 4

8086tiny – Flight Simulator 4

Conclusion

Nostalgie quand tu nous tiens… Je n’ai pas pu tester longuement cet émulateur mais ça fera certainement l’objet d’un futur article. 8086tiny est un logiciel en pleine évolution qui devrait apporter la possibilité d’émuler des PC sur le Raspberry. Pourquoi faire ? Il n’y a pas si longtemps (3 ans) j’ai réalisé le portage d’une vieille installation sur un PC récent (programmation d’automate programmable sous MS-DOS eh oui en maintenance il y en a encore) en installant une machine virtuelle faisant tourner MS-DOS… Alors pourquoi pas un Raspberry Pi ?

Vous pouvez ranger vos mouchoirs maintenant….

Ah oui, j’oubliais j’ai une question à poser :

C’est quand qu’il sort l’émulateur d’Apple II ?

Un Raspberry Pi posé sur mon Apple II

Un Raspberry Pi posé sur mon Apple II

Dernière minute

On apprend que Bill Gates quitte le conseil d’administration de Microsoft. Les mauvaises langues prétendent que c’est parce qu’il a vu un article affirmant qu’un ordinateur à 30€ est capable d’émuler le premier PC… Vous y croyez, vous?

– NOTA – Utilisation des photos de cette page autorisée sur sites non commerciaux, en mentionnant l’origine et avec un lien vers www.framboise314.fr. Photos (c) framboise314 – 02/2014.
Copies d’écran crédit : http://www.megalith.co.uk/8086tiny/

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

2 réflexions au sujet de « Avec 8086TINY mettez un PC-XT dans votre Raspberry Pi »

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.