Programmez en BBC BASIC sur un ordinateur moderne

Je vais vous présenter aujourd’hui un dialecte BASIC qui présente plusieurs caractéristiques intéressantes ; le BBC BASIC.

La caractéristique la plus étonnante est sa longévité. La première version de BBC BASIC date de 1981. Elle était installée sur l’ordinateur personnel BBC Micro, peu connu en France mais qui a eu un certain succès en Angleterre.

BBC Micro livré avec son BBC Basic

Le langage a évolué depuis, mais il est toujours possible de programmer en BBC BASIC sur un ordinateur moderne, que ce soit un PC sous Windows ou sous Linux, un Mac, ou avec un Raspberry Pi. Nous verrons un exemple de programme plus loin dans cet article.

Les autres caractéristiques intéressantes du BBC BASIC sont :

  • Sa rapidité d’exécution, ce qui était important dans les années 80s compte-tenu de la faible puissance des machines. Ceci est moins critique aujourd’hui, du moins pour les applications courantes.
  • Un langage évolué, avec un jeu d’instructions riche et notamment la possibilité de définir de vraies procédures.
  • Le nombre de plateformes pour lesquelles le BBC a été porté !

Nous allons voir dans cet article comment programmer en BBC BASIC en mode texte, sous Windows.

Continuer la lecture de « Programmez en BBC BASIC sur un ordinateur moderne »

Premiers pas avec PC-BASIC sur un PC sous Windows

J’ai publié en 2020 un article donnant des solutions pour programmer en GW-BASIC sur un ordinateur moderne. L’une des deux solutions consiste à utiliser le logiciel PC-BASIC. Ce logiciel de qualité est disponible sous Windows, Linux et MacOS.

Ayant reçu plusieurs commentaires de personnes ayant eu des problèmes d’installation et de configuration de PC-BASIC, je vais détailler dans cet article la procédure pour une utilisation avec un PC sous Windows.

Continuer la lecture de « Premiers pas avec PC-BASIC sur un PC sous Windows »

Amytiville, la maison de l’horreur

En consultant le site Hebdogiciel – les listings qui permet le téléchargement des listings publiés dans le magazine Hebdogiciel aujourd’hui disparu, je suis tombé sur un petit jeu d’aventure textuel pour Apple II intitulé Amytiville.

Ce jeu développé par Xavier Leray et Nicolas Gohin a été publié dans le numéro 76 d’Hebdogiciel le 29 mars 1985.

Vous pouvez le télécharger ici.

Continuer la lecture de « Amytiville, la maison de l’horreur »

Aventure dans une grotte

Cet article présente une mise à jour d’un jeu d’aventure développé en 1988 par Russel Wallace ; Cave Adventure.

J’ai choisi de mettre à jour ce programme car il a été développé en C et est un bon cas d’usage pour ma fonction jprint présentée dans mon article précédent. J’ai donc repris le code source disponible sur IFDB et l’ai adapté pour le compilateur moderne gcc.

Le jeu présente également un minimum d’intérêt ; il est inspiré du célèbre jeu d’aventure textuel colossal cave adventure et la jouabilité est plutôt bonne.

Continuer la lecture de « Aventure dans une grotte »

Affichage avec alignement justifié en C

Cet article propose un algorithme avec une implémentation en langage C permettant d’afficher un texte en alignement justifié. Ceci signifie que le texte est aligné à gauche et à droite sur un nombre de colonnes prédéfinies, la dernière ligne étant alignée à gauche. Le programme va donc insérer les espaces nécessaires entre les mots afin d’obtenir les alignements.

Vous aurez ainsi à disposition une fonction C permettant d’avoir une belle présentation pour vos jeux d’aventure textuels… et d’autres utilisations sont possibles, bien évidemment.

Cela semble assez simple en théorie, mais j’ai intégré les contraintes suivantes :

  • Pas d’utilisation de nombres réels (float) pour que le programme reste performant avec un ordinateur 8 bits.
  • Dans le cas ou un mot est plus long que le nombre de colonnes d’affichage, ce mot doit être coupé afin de conserver un affichage correct.
Continuer la lecture de « Affichage avec alignement justifié en C »

Werewolves and Wanderer including a dynamic map

This article is about another adventure game, Werewolves and Wanderer, from the famous book « Creating Adventure games on your computer » by Tim Hartnell.

Well, this game is old-fashioned and not that entertaining. Comments on IFDB are not very appealing. However, it has some historical interests. And to make it fun for the programmer, I’ve added some interesting features:

  • A semigraphic introduction;
  • A help function providing the vocabulary understood by the programme;
  • And the most interesting part: a dynamic map.

As usual I’ve coded in Applesoft BASIC but it is really easy to convert the programme to other BASIC dialects.

Semigraphic introduction
Continuer la lecture de « Werewolves and Wanderer including a dynamic map »

Tower of Mystery

I came recently accross an old adventure game while I was trying to sort the numerous files on my main computer. I had dowloaded « Tower of Mystery » several years ago, forgot the file somewhere and never tested it.

Yes, I know, this is yet another two-word parser adventure game, from the eighties, and implemented in old BASIC. However, you might find this one interesting, as I do.

Detail from the corver of « Compute!’s… »
Continuer la lecture de « Tower of Mystery »

CIA , un autre jeu d’aventure en BASIC

CIA Adventure – Intro pour Apple II

J’ai publié il y a quelques années un jeu d’aventure intitulé CIA. Ce jeu est issu du livre BASIC fun with adventure games de Margaret Ann Zuannich et Susan Drake Lipscomb. Le code source en BASIC est disponible ici. Le thème est celui de l’espionnage.

Il s’avère qu’il existe un autre jeu d’aventure en anglais, également en mode texte, également programmé en BASIC, avec un nom très proche ; CIA Adventure. Le jeu a été publié dans le magazine CLOAD en octobre 1980, pour l’ordinateur TRS-80. L’auteur est Hugh Lampert.

Continuer la lecture de « CIA , un autre jeu d’aventure en BASIC »

Un château en C

Bonne année à toutes et tous !

Pour 2023, j’espère avoir plus de temps pour publier des articles sur la rétroprogrammation, le rythme ayant pas mal baissé ces derniers mois.

Je débute l’année avec une suite de l’article sur le jeu Château Gaillard publié il y a quelques mois. Le jeu d’aventure dont il est question est issu d’un livre de Tim Hartnell, « Creating adventure games on your Computer« , et développé en BASIC (des années 80).

J’avais mentionné dans mon article que Château Gaillard avait été porté en C++ et le code source, crée par Ben Grimmer est disponible ici. La dernière version date de 2012.

J’ai repris le code en C++ et l’ai porté en langage C, l’objectif initial étant de compiler ce code avec cc65 pour faire fonctionner le jeu sur Apple II. Ce travail m’a pris beaucoup plus de temps qu’initialement prévu, la gestion des chaînes de caractères étant plus complexe en C qu’en C++ ce qui a nécessité de recoder une bonne partie du programme.

Je suis arrivé à un programme fonctionnel sous Windows ou Linux avec gcc, mais impossible pour l’instant de le faire tourner sur un Apple II, même si la compilation avec cc65 ne génère pas d’erreur.

En attendant d’y voir plus clair, voici le code en C de Château Gaillard, utilisable sous Linux/Windows.

La compilation est simple puisqu’il suffit de saisir la commande make dans une fenêtre de commande. Le nom de l’exécutable est cg sous Linux ou cg.exe sous Windows.

J’ai également ajouté les fonctions suivantes :

  1. Possibilité de jouer sans attaque de monstre,
  2. Pouvoir saisir un identifiant de partie qui sera utilisé pour initialiser les tirages aléatoires.

Enfin, pour vous aider à sortir de cette aventure, voici un lien vers la carte du jeu.

10 PRINT "Bonne chance !"
20 GOTO 10

Sur le toit

A la suite du jeu Les trésors de Rom, je vous propose dans cet article de continuer sur le thème du labyrinthe. Ici point de monstre ni de trésor, mais un jeu d’exploration d’un labyrinthe en 3D où la sortie se trouve sur le toit.

Le générateur de labyrinthe en trois dimensions a été publié en page 54 du magasine Jeux & Stratégie numéro 32 (le même numéro que pour « Les trésors de Rom »). J’ai repris ce programme afin de permettre une exploration du labyrinthe, en mode texte ou en mode graphique.

L’intro en mode texte du programme modifié
Continuer la lecture de « Sur le toit »