Human Resource Machine, le jeu assembleur

Human Resource Machine est un jeu de Tomorrow Corporation de type résolution de défi. Ces défis se présentent tous sous la même formes : une série de chiffres et/ou lettres à transformer en une autre série de chiffres et/ou lettres, en fonction de directives.

Et pour cela, le joueur a à sa disposition une série de commandes. Au début, très peu, leur nombre s'étoffe au fur et à mesure des 42 niveaux de la ligne principale. Ces commandes sont exécutées par l'avatar du joueur, qui va courir d'un bout à l'autre d'une pièce pour prendre des données, les transformer, les ajoutes, les comparer, les stocker...

C'est ici que cela m'intéresse dans le cadre de Triceraprog. Le personnage que contrôle le joueur simule le fonctionnement d'un ordinateur (en parti). Le joueur au fur et à mesure de la résolution des puzzle apprend « tout simplement » un langage d'assemblage.

Un langage d'assemblage …

Lire la suite →

Tramage basse définition pour le VG5000µ

La dernière fois, j'avais présenté le début d'une idée pour accéder à des pixels « basse définition » sur le VG5000µ en se servant de caractères semi-graphiques.

Avant de continuer sur l'idée, je me demandais ce que donnerais, sans trop de traitement, une image de synthèse en niveau de gris avec une telle technique.

Afin de transformer cette image en niveaux de gris vers du noir et blanc, je fais appel à une technique appelée « Dithering » ou « tramage » en français. Il s'agit de transformer le niveau de lumière en série de points plus ou moins dense.

Plus la résolution est dense, plus le résultat est bon. Forcément, en basse résolution semi-graphique, il ne faut pas s'attendre à des merveilles.

Voici donc deux couples d'images. En premier le rendu en niveau de gris d'une image de synthèse assez simple. Puis un rendu avec du tramage. Il existe de nombreuses techniques de tramages, et …

Lire la suite →

Livre - Commodore VIC-20, a Visual History

Après une première campagne Kickstarter manquée, Giacomo M. Vernoni n'a pas baissé les bras et lancé une nouvelle campagne pour l'édition d'un livre entièrement consacré au VIC-20 de Commodore.

Le VIC-20, c'est un peu le grand frêre du beaucoup plus connu Commodore 64, un grand frêre aux capacités bien plus limitées. Mais c'est avant tout pour moi le premier de mes ordinateurs. Pas le premier que j'ai utilisé, ni celui sur lequel j'ai commencé la programmation, mais le premier qui était vraiment à moi.

Alors forcément, la promesse d'un livre consacré à la machine m'a fait de l'oeil, et j'ai embarqué dans ce projet. Quelques mois après, je peux parcourir ce livre compact mais très fourni en détails et illustrations. C'est une très belle édition et je félicite son auteur pour le boulot accompli. Le livre respire le travail bien fait mêlé à la passion.

Comme je ne suis pas …

Lire la suite →

Les caractères semi-graphiques du VG5000µ

Lorsque l'on regarde de près la structure des caractères semi-graphiques du VG5000µ, on voit qu'elle a été réfléchie pour être facile à manipuler. Voici quelques observations :

  1. les caractères sont divisés en deux plages, l'une numérotée de 0 à 63, l'autre de 64 à 127.
  2. si on prend un caractère de la première plage, contenant les caractères « quadrillés » et que l'on ajoute 64 à son numéro, on obtient le même caractère en format « plein »
  3. de manière similaire, si on soustrait 64 au numéro d'un caractère plein, on obtient sa forme quadrillée.

Le caractère 127, par exemple, est le caractère complètement rempli. Le caractère 127 - 64, c'est-à-dire 63, est le caractère rempli, quadrillé.

Tous les caractères semi-graphiques du VG5000µ

Une observation supplémentaire est plus visible si l'on réarrange les blocs de chaque caractère semi-graphique sur une seule ligne. Pour cela, je prends les deux blocs du haut, puis j'y ajoute les deux blocs du milieu, et enfin les …

Lire la suite →

Les commandes graphiques en BASIC du VG5000µ

Une fois le VG5000µ démarré, on pourrait imaginer afficher des formes à l'écran en allumant des pixels avec des couleurs prises dans une palette donnée. Au même moment, c'est ce que font d'autres ordinateurs sur le marché. Avec de grandes limitations, certes, mais des commandes en BASIC sont fournies à l'utilisateur pour afficher des points, voires même tracer des lignes.

Il n'en est rien.

Les commandes en BASIC méritent d'être étudiées avant de se lancer. La manuel d'utilisation consacre quatre pages d'explications à l'affichage graphique et auront pu, je pense, décourager tous ceux qui ne cherchaient pas un minimum à conduire quelques expériences. Par chance, avoir un ordinateur à cette époque, c'est avoir un peu l'esprit curieux.

Deux commandes, CURSORX et CURSORY, suivies d'une nombre, permettent de placer la position courante d'affichage sur l'espace à l'écran, divisé en 25 lignes de 40 colonnes. Les caractères affichés avec PRINT qui suivent …

Lire la suite →