Neu entdeckt – eine KLAX Variante in Turbo C für den Atari ST. Das Spiel zeigt eindrücklich wie einfach die Logik/Spielmechanik einzelner komplexer Spiele war. In diesem Fall Klax Klax als Arcade herausgekommen. Hier eine Version allein mit dem Zeichensatz von TOS (ATARI ST)

Der Code liest sich selbst heute noch recht klar und einfach:
/* Klaxvariante ist geplant - ROUTINES */
#include <stdio.h>
#include <n_tos.h>
long ascore;
long gscore=0;
long score=0;
int vek;
int stappel[5]={ 0,0,0,1 };
int steg[5][11]={ 1,2,0,0,0,1,0,0,1,0,0,
0,0,0,0,0,0,0,2,0,0,0,
0,2,0,0,0,0,0,0,0,0,0,
0,0,3,0,0,0,0,0,0,3,0,
0,0,0,0,0,0,0,0,0,0,1 };
int klax[5][5]= { 0,0,0,0,3,
0,0,0,0,3,
0,0,0,0,0,
0,0,0,2,2,
0,0,0,1,1};
int klox[5][5]= { 1,1,1,1,1,
1,1,1,1,1,
1,1,1,1,1,
1,1,1,1,1,
1,1,1,1,1};
main()
{ char c;
long t;
int n,nn,o,p,q,i,pi,pii;
mode(0);
curs(0);
setcol(0,0,0,0);
setcol(15,7,7,7);
setcol(1,0,0,7);
setcol(2,0,7,0);
setcol(3,7,0,0);
setcol(4,0,0,4);
setcol(5,0,4,0);
setcol(6,4,0,0);
[...]
OrginalArcade Game Klax 1990
Das Orginalspiel sah folgendermassen aus und spiel mit vorgerendertem 3D. Es ist ein Actionpuzzler und wurde als Fortsetzung von Tetris beworben. Es gibt abwechselnd Jobs, die man machen muss, es funktioniert wie 3+ Gewinnt. Horizontale, Vertikale oder Diagonale, Tiles überleben oder Punkte machen. In einem Atari Forum habe ich mal einen Macher kennenglernt und gefragt, wie sie auf die Idee mit den Tasks gekommen sind. Er meinte dann: Sie hätten diese verschiedenen Varianten gehabt und Testspieler hätten sich einfach nicht für eine Entscheidungen können, also haben sie das zum Konzept gemacht.
Das Spiel habe ich dann als La1n als „ishizume“ in richtigem 3D programmiert.
Compilieren, was zu beachten ist (Atari ST)
Hier der ganze Ordner mit TC drin.
Beim Compiler und beim Linker korrekter Pfad angeben. Im orginal falsch.


Umsetzung C-Unix
Eine Umsetzung in C wäre nicht so schwierig. Hier ist einiges schon gemacht, es fehlt allerdings noch – schwierig – eine allgemeine Version der GetKeypressed Variante. Und dann Farben in der Shell (setcol()) etc. Zusätzlich muss die down() methode wieder reaktiviert werden.
Kompilieren lässt sich das ganze auf dem Mac im Terminal mit:
cc klax.c
// starten
./a.out

Wenn ich Zeit habe, mache ich damit mal weiter.