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 »

Les trésors de Rom

Aujourd’hui je vous propose de découvrir un petit jeu publié dans la revue Jeux & Stratégie n°32, en avril 1985. Il s’agit d’un petit jeu de rôle sans prétention qui va vous permettre de faire évoluer un personnage dans un labyrinthe. Le programme est disponible en BASIC Applesoft, facilement adaptable à d’autres dialectes BASIC.

Synopsis

Votre quête n’aura pas été vaine ! Vous avez enfin découvert l’entrée de la légendaire ville souterraine de Rom. Une vieille échelle coincée dans un étroit boyau vertical met à votre portée les richesses jadis accumulées par les hordes d’un certain Zeldar III. Au cours de vos pérégrinations vous avez recueilli les informations suivantes:

  • le souterrain est encore habité par des monstres, plus ou moins forts, qui ne sont a priori pas hostiles et peuvent même être amadoués;
  • de nombreux coffres sont présents dans les salles du souterrain. Tous sont marqués de trois lettres qui indiquent s’il s’agit d’un coffre contenant plus ou moins de pièces d’or ou s’il est piégé…
  • ceux qui connaissaient les coffres ne se trompaient jamais.
Continuer la lecture de « Les trésors de Rom »

Campagne de débogage en Applesoft BASIC

Suite à l’article précédent Programmez en Basic Applesoft avec Visual Studio Code, je me suis aperçu que presque tous les programmes publiés sur ce site dans ce langage ont des bugs !

J’ai donc décidé pour faire pénitence en lançant une campagne de débogage massif de tous mes programmes en Basic Applesoft du site Rétroprogrammez ! Voici les listings des programmes corrigés :


La maison du fou version Apple II : MAISON_FOU

Le Château Enchanté : CHATEAU_ENCHANTE

Mission aventure

L’ivresse de l’or

Sorcellerie de l’Ordinateur Individuel
Plan du vaisseau fantôme
Le Vaisseau Fantôme de Jeux & Stratégie
Treasure of Elgon – version d’origine en Anglais
Treasure of Elgon fixed – version corrigée, en anglais
Trésor d’Elgon – version française traduite de la version corrigée

Escape from SSADB

Morlocks – english version

CIA

Crash

Haunted House

Adventure Game in C for Apple II

I’ve been thinking about coding an adventure game in C for months. I wanted to write a code that would compile on both modern and old computers, probably because the idea of having a source code that would last for such a long period of time is amazing. Especially in 2022 when computer science changes so rapidly, with several new programming langages coming up every year.

This is possible thanks to the cross-compiler cc65, which I introduced in a previous article. I wanted a code that would work on both Apple II and Linux/Windows based modern PCs.

Since I have no time to code a whole adventure from scratch, I’ve found a small adventure game on The Interactive Fiction Archive: ISLAND.

Continuer la lecture de « Adventure Game in C for Apple II »

Superbe environnement de développement en C sous Windows

Cet article va vous permettre de faire du développement en langage C dans l’environnement Windows 10. Jusqu’à présent, j’ai uniquement abordé le développement en C dans un environnement « Unix-like » (Linux ou Mac OS).

Malgré l’absence de compilateur installé nativement, il est tout à fait possible de coder en C sous Windows, y compris avec des logiciels libres (ou presque). L’environnement présenté ici est le compilateur C de GNU (gcc) porté sous Windows et l’éditeur de code Visual Studio Code.

VSC
Le mariage de la carpe et du lapin ?

Continuer la lecture de « Superbe environnement de développement en C sous Windows »

« The New Apple II User’s Guide » ou la bible Apple II

Cet article est bien différent de ceux publiés jusqu’à présent, puisque je vais faire la critique d’un livre. Il s’agit d’un gros pavé, The New Apple II User’s Guide de David L. Finnigan, publié en 2012. Voici un lien vers le site officiel.

Le livre est en anglais, donc si vous êtes réfractaire à cette langue, vous pouvez arrêter ici votre lecture.

Dans le cas contraire…

Continuer la lecture de « « The New Apple II User’s Guide » ou la bible Apple II »

La maison du fou sur Atari 800XL

Après avoir publié deux pages sur les émulateurs Atari 8bits, dont une sur la mise en œuvre d’Altirra, j’ai redécouvert la programmation en Atari BASIC, en portant mon jeu d’aventure de référence La maison du fou. J’ai ainsi pu redécouvrir quelques spécificités intéressantes de ce BASIC un peu particulier.

Maison du fou sur Atari 800XL : une intro en mode graphique 1
Continuer la lecture de « La maison du fou sur Atari 800XL »