Archiv der Kategorie: C128

Neues C128-Spiel: Volley for Two

Spiele „nur“ für den Commodore 128 sind seltene Perlen. Das 2020 publizierte Volley For Two von Anders Larsson (Grafik), Mikkel Hastrup (Musik) und Jonas Hultén (Code) ist, der Titel verrät es schon, für zwei Spieler konzipiert. Inspiriert wurden die Autoren, gemäß der Angaben auf der Internetseite des Spiels, von einem alten DOS-Spiel aus dem Jahr 1987: Arcade Volleyball. Die Wikipedia behauptet allerdings, dass dieses Spiel zuerst für den C64 und danach für Amiga und DOS publiziert wurde. Mit dieser Veröffentlichung auf einem Commodore-Rechner schließt sich der Kreis.

Volley for Two
Ausnahmsweise gilt es hier den Ball nicht flach zu halten. Quelle: kollektivet.nu/v42

Das Spiel ist nicht nur auf verschiedenen Disk-Formaten verfügbar, es unterstützt auch diverse RAM-Erweiterungen, PAL- und NTSC-Rechner, Tastatur- oder Joysticksteuerung und den VDC-Bildschirm als zusätzliches Ausgabemedium. Leider ist eine Spielstandsanzeige für den VDC nicht das was ich mir unter „The game supports two monitors“ vorstellen bzw. wünschen würde. Was das ganze abrunden könnte, wäre (gerade in den derzeit einsamen Zeiten) ein Einspielermodus mit einem adequaten Computergegner (was ja auch schon an anderer Stelle angemerkt wurde). Aber was nicht ist, kann ja noch werden.

Veröffentlicht unter C128, Soft | Ein Kommentar

Haus des Nikolaus

Passend zum heutigen Datum habe ich mich mit dem „Haus des Nikolaus“ auseinandergesetzt. Zum Selbststudium lohnt ein Blick auf die Internetseite „Mathematische Basteleien“ von Jürgen Köller, der dort eine umfassende Beschreibung des Problems liefert. Der ebenda gegebene Hinweis, dass man die möglichen Lösungen der Strichführung mittels eines Computerprogramms auch auf einem C64 ermitteln kann, war Anreiz genug, genau dieses zu versuchen. Das Ergebnis wäre vielleicht auch ein passender Beitrag zum aktuell in der Schlußredaktion befindlichen C64-Weihnachtsheft gewesen, wenn das Progrämmchen denn eher verfügbar gewesen wäre.

Die Eingangs erwähnte Internetseite liefert verschiedene Hintergrund-Links und so gibt es auch einen auf ein bereits bestehendes Programm von Matthias Jauernig zur Ermittlung aller existierenden Lösungen. Leider in C und leider – aber nicht verwunderlich – mit rekursiven Funktionsaufrufen. Weil sich das Commodore BASIC dafür nicht wirklich gut eignet, habe ich mich für die Umsetzung am C64 (bzw. C128) lieber an dem an „brute Force“ erinnernden Hinweis aus der zuerst genannten Quelle gehalten.

Haus des NikolausUm das Haus und die Strichreihenfolge zu beschreiben, werden alle Ecken durchnummeriert. Beginnend unten links mit der Eins geht es gegen den Uhrzeigersinn im Rechteck herum. Die Dachspitze erhält die Fünf. Über eine Verknüpfungsmatrix (wer mit wem) kann man dann definieren, welche Punkte miteinander verbunden sind und welche nicht. Da jede Verbindung nur einmal zulässig ist (also nicht übermalt werden darf) ist die Anzahl der gültigen Lösungen begrenzt.

Das Programm wird dadurch vereinfacht, dass es berücksichtigt – was sich mathematisch ableiten läßt -, dass die Konstruktion des Hauses stets unten links beginnt (Punkt 1) und unten rechts endet (Punkt 2); man kann das umdrehen, erhält dann aber nur ein Spiegelbild. Durch die definierte Start- und Endposition ergibt sich auch für die benachbarten Punkte eine eingeschränkte Variabilität. Über verschachtelte Schleifen und Tabellen hätte man das in einem BASIC-Programm sauber abbilden können, ich habe mich aber für „quick and dirty“ entschieden und alles in eine Schleife gepackt, aus der ich nur die sofort erkennbar ungültigen Werte per IF-Abfrage rausschmeiße. Nicht elegant, nicht schnell, aber es funktioniert (sehr, sehr langsam).


100 rem *** das haus vom nikolaus ***
110 rem
120 dim n(5,5),a(5,5):rem verknuepfungsmatrix
130 data 0,1,1,1,0
140 data 1,0,1,1,0
150 data 1,1,0,1,1
160 data 1,1,1,0,1
170 data 0,0,1,1,0
180 for i=1to5: forj=1to5
190 read a: n(i,j)=a
200 next: next
210 rem start bei 1 ende bei 2
220 rem 9 knoten (0/8), davon 7 variabel
230 dim k(8)
240 k(0)=1:k(8)=2
250 c=0: rem counter
260 rem * hauptschleife *
270 for k=2311111 to 5535554
280 k$=mid$(str$(k),2)
290 f=0: rem fehlerflag
300 fori=1to7
310 k(i)=val(mid$(k$,i,1)):ifk(i)=0 or k(i)>5 then f=1 :i=7
320 next: if f then 450
330 rem * init testmatrix *
340 for i=1to5: forj=1to5
350 a(i,j)=n(i,j)
360 next: next
370 rem * pruefung auf wegstrecken *
380 f=0: rem fehlerflag
390 fori=1to8
400 if a(k(i-1),k(i))=0 then f=1:i=8
410 a(k(i-1),k(i))=0: rem benutzter weg
420 a(k(i),k(i-1))=0: rem zugehoeriger rueckweg
430 next
440 if f=0 then gosub 480
450 next
460 print"*** ende ***"
470 end
480 rem * ausgabe *
490 c=c+1
500 print "loesung"c"{left}:";
510 forj=0to8: print str$(k(j));: next
520 print: return

Es gibt 44 Lösungen (nur so als Hinweis, falls man das Ende der Berechnungen nicht abwarten will). Etwas schneller als in reinem BASIC geht es mit einem Compiler und SuperCPU oder in VICE im Warp-Mode. Der mit BASIC 128 (Data Becker) für einen C128 compilierte Code ist hier verfügbar.

 

Errata (14.12.2020): Die Zeile 270 sollte wie folgt lauten:

270 for k=2311111 to 4555554
Veröffentlicht unter Allgemein, C128, C64, Soft | Ein Kommentar

Die Geschichte des Commodore KERNAL

Das angenehme an Sachartikeln zu Retro-Themen ist, dass sie gut altern. Anders als eine Zeitung, die am nächsten Tag nur noch zum Fischeinwickeln gut ist, behalten solche (historische) Betrachtungen ihren Wert. Heute hat man mich im Forum64 auf eine interessante Abhandlung aus dem Jahr 2018 über das KERNAL der Commodore 8-Bit-Rechner hingewiesen.

KERNAL RelationshipsBildquelle: Michael Steil, https://www.pagetable.com

Unter dem Titel „Commodore KERNAL History“ behandelt Michael Steil in seinem englischsprachigen Blog die Entwicklung der KERNAL-Tabellen vom PET bis zum C65 und beschreibt dabei auch die Möglichkeiten und Grenzen der Code-Kompatibilität von Programmen.

Eine bessere Zusammenstellung zu diesem Thema ist mir noch nicht begegnet. Hätte ich soetwas schon vor Jahren zur Verfügung gehabt, als ich die ersten Beiträge zur Multiplatform Programmierung schrieb,  hätte ich mir einiges an Rechercheaufwand sparen können.

Veröffentlicht unter Allgemein, C128, C64, CBM, Soft | Schreib einen Kommentar

Corona in 8-Bit

Eigentlich hatte ich erwartet, dass schon kurz nach Ausbruch der Corona-Krise neue C64-Spiele auftauchen, in denen man stachelige Viren jagen muss; oder zumindest den einen oder anderen Mod eines bestehenden Spiels, wo man die Sprites von Ufos, Monstern oder sonstigen Gegnern gegen solche von Viren austauscht. Doch nichts dergleichen ist passiert.

Möglicherweise habe ich da auch was übersehen. Nicht übersehen habe ich die hier im folgenden aufgeführten Veröffentlichungen mit Bezug zur aktuellen Pandemie, wobei das kein Kunststück war, denn alle Beispiele finden sich leicht in der CSDb:

Corona 128Corona 128 von Wil ist eine in BASIC 7.0 geschriebene grafische Auswertung des Verlaufs der Neuerkrankungen in Österreich (im Monat Marz 2020). Es ist gut erkennbar, was exponentielles Wachstum bedeutet und wie das bei Gegenmaßnahmen abflacht. Natürlich ist das ganze ist kein programmiertechnisches Hexenwerk, aber es ist immer mal wieder schön zu sehen, wie schnell man sowas auf dem C128 umsetzen kann.

Corona 2020Corona2020 von Seanser bittet uns „stay at home“. In der Graphik schwebt das Virus bedrohlich über der Silhouette der Stadt. Aber was will uns der Künstler mit dem Auge sagen? Big Brother is watching you?

ForonaForona haben die Jungs von The 7th Division ihre C64 Micro-Demo betitelt und sie haben offensichtlich die Schnauze voll… Es ist ihr Beitrag zur CSDb C64 Lockdown 2020 Fun Compo die heute um Mitternacht endet (Voting im Mai). Auch auf die anderen Compo-Beiträge lohnt sicher ein prüfender Blick. Ich habe mir zumindest gleich mal den folgenden näher angeschaut:

Toilet Paper StackerToilet Paper Stacker von Richard Bayliss ist ein C64 Fun-Spiel, dass nur mit Space-Taste bzw. dem Feuerknopf des Joysticks gespielt wird. Der Autor hat auch eine Anleitung beigelegt. Was bei meiner miesen Hand-Auge-Koordination leider auch nicht geholfen hat. Ich war hier genauso erfolgreich wie vor sechs Wochen beim Versuch Toilettenpapier zu kaufen. Aber wie immer gilt: Übung macht den Meister.

Wem all‘ das nicht schräg genug ist, kann es ja mal mit The Corona Killer Thriller! von Holy Moses versuchen. Dieses Musikstück läßt sicher auch dem Virus das Blut in den Adern gefrieren, wenn es denn auch nur eines von beidem hätte.

Veröffentlicht unter C128, C64, Compo, Graphic, Soft | Schreib einen Kommentar

C128 Handbuch: Fehlerliste im C64-Wiki

Gut vier Jahre nach McBacons Fehlerliste zum Handbuch des C128 wurde jetzt ein entsprechender Eintrag im C64-Wiki erstellt. Der Dank für diese Aktion geht an Shmendric und natürlich vor allem an McBacon, aber auch an weitere Wiki-Mitstreiter.

Wer sich ganz allgemein für Gemeinsamkeiten und Besonderheiten im Commodore BASIC interessiert, findet die umfassendste Zusammenstellung über die Commodore 8-Bit BASIC Versionen in Hydrophilics BASIC Encyclopedia. Die hier erhältlichen Informationen sind umfassender (und korrekter) als sie je in einem Handbuch beschrieben wurden.

Veröffentlicht unter C128 | Schreib einen Kommentar

eBay-Fund: MySoft 1.02

Ab und an stöbere ich durch die Bucht auf der Suche nach dem einen oder anderen Schnäppchen für meine Sammlung. Allerdings nicht regelmäßig. Und so war mir doch dieses Angebot von Anfang März bisher entgangen:

MySoft auf eBay

Wer auch immer die 8 Euro und 50 Cent bezahlt hat, er hat sechs hochwertige Disketten erhalten. Die MySoft-Software hingegen gibt’s bei mir immer noch umsonst. 😉

Veröffentlicht unter C128, Soft | Schreib einen Kommentar

MT2017: Alles hat ein Ende

Starker Sturm: Wie an den Tagen zuvor ist auch heute unsere große Commodore-Fahne „abgestürzt“. Der Stand der CCL steht an der Hallenwand gleich neben großen Zuluftdüsen, die einige Stunden vor Messebeginn die Halle mit Frischluft fluten. Der Fahne macht das nichts aus, aber der ausziehbare Fahnenmast hält der Belastung nur bedingt stand. Irgendwann führt das vom starken Wind ausgelöste Gezerre dazu, dass der Teleskopmast zusammenschnurrt. Jetzt, eine halbe Stunde vor Messebeginn, ist er wieder aufgerichtet und die Fahne flattert munter vor sich hin. Spätestens wenn sich die Tore für die Besucher öffnen, wird sich der Wind legen.

Zu früh gefreut! Keine 15 Minuten später hat es die Fahne wieder „zerlegt“. Der Kunst-Wind ist einfach zu stark. Brainstorm ist schon dran, das Malheur zu beheben. Zum Glück endet jetzt der „Sturmwind“, und damit das Risiko weiterer Abstürze.

Melodische Musik: Während hier am Stand inzwischen der Bär stept, habe ich meinen zweiten Kellerfund zum Testen hervorgekramt. Anfang des Jahres hatte ich mir den Music Maker 128 über ein Online-Auktionshaus besorgt. Irgendwie ist es jedoch nie zu einem Test gekommen. Die Disk funktioniert noch tadellos. Das C128D bootet das Programm ohne murren. Die Programmdiskette läßt sich problemlos kopieren und startet auch von einem SD2IEC aus einem D64-Image heraus, wenn diese die Gerätenummer 8 hat. Wie bei allen alten Programmen werden erwartungsgemäß weitere Laufwerke nicht unterstützt.

Die Klaviatur passt auch irgendwie auf die Tastatur. Die Klemmen finden jedoch keinen rechten Halt und daher ist es eine wackelige Angelegenheit. Ein schneller Vergleich mit einem c128 („Türkeil“) offenbart, dass die Klaviatur dort nahezu perfekt einrastet. Ein C128D ist also nur bedingt geeignet. Doch wozu gibt es Klebeband?

Leider ist – zumindest auf dem C128D –  das hohe B ([DEL]-Taste) nicht spielbar. Die dafür angebrachte Nase ist etwas zu kurz. Das läßt sich mit einem Pappplättchen auf der Taste oder etwas Klebeband an der Nase aber leicht beheben. Das Programm ist einfach gestrickt aber für Einsteiger mehr als ausreichend. Es bietet 3 Klänge gleichzeitig, bringt einige Beispielmusiken mit und hat diverse Einstellmöglichkeiten, die in Summe mein Musikverständnis übersteigen (was nicht schwer zu erreichen ist).

Der „Play & Dissplay“-Modus lädt sofort zum Spielen ein und so klimpern wir ein „Alle meine Entchen“ oder den Flohwalzer. Auch einige Besucher fühlen sich angeregt, ein paar Tasten zu drücken. Das ist aber wohl mehr dem menschlichen Trieb geschuldet, immer alles angrabbeln zu müssen. 😉

Dusselige Daten: Skern hat seinen HD-Monitor inzwischen soweit, dass er auf der Platte lesen und schreiben kann. Jetzt kämpft er mit der Navigation mittels FAT. Schließlich muss er die defekten Daten finden und korrigieren bzw. löschen. Dazu später einmal mehr.

Brüllende Boxen: Die Ruhe der vergangenen Tage ist vorbei. Wenn der Lärmpegel nur durch das mehr der Besucher angestiegen wäre, wäre das Musik in unseren Ohren. Leider streiten einige Stände um die Aufmerksamkeit ebendieser und drehen ihrerseits die Boxen auf. Richtig nervtötend ist jedoch das Forum neben unserem Standplatz. War dieses in den vergangenen Tagen eher ein Ort der Ruhe hat dort heute Mittag ein eSports-Turnier begonnen und soll wohl noch einige Stunden andauern. Das Gedaddel ist dabei nicht das Problem, das besteht im brüllenden „Reporter“, der jeden nichtigen Spielzug meint lautstark kommentieren zu müssen. Wenn das noch lange so weitergeht, suche ich mir doch noch einen Seitenschneider…

Endlich Ende: Aus und vorbei. Der Gong hat geschlagen. Und schwupp verschwindet das Equipment in den Kisten. Brainstorm ist da von der schnellen Sorte. Zu Recht, denn es liegen noch etliche Kilometer vor uns, bis wir ins Bett fallen können.

Veröffentlicht unter C128, Events, Hard | Schreib einen Kommentar

MT2017: Hardwaretest C128D-Tastaturadapter

Brainstorm hat von der letzten Forever 8-Bit (März 2017) einen Tastaturadapter zum Anschluß von AT oder PS/2-Tastaturen an einen C128 mitgebracht. Der „AT-128 Keyboard Adapter for C128D V1.1“ wurde von CodeKiller designt und kann auch für 25 Euro über AmiBay bezogen werden. So ein Adapter kann ganz nützlich sein, um das Tastaturen-Chaos auf dem Schreibtisch zu reduzieren, wenn man PC und C128 nebeneinander aufgebaut hat.

Platzprobleme
Beim Test des Adapters an einem C128DCR (aka „Blechdiesel“) treten schon beim Einstecken in den Tastaturanschluss des Rechners erste Schwierigkeiten auf. Die Buchse für den PS/2-Stecker (Mini-DIN-Stecker) ist unter der Adapterplatine montiert und führt zu einer leichten Torsion derselben, da sie auf dem Tisch aufliegt und eine um zwei oder drei Millimeter zu hohe Bauhöhe hat. Bei einem C128D („aka „Platikbomber“) tritt dieses Problem nicht auf, da bei diesem der Tastaturanschluß einen guten Zentimeter höher liegt. Grundsätzlich ist dies aber kein ernstes Problem, da es die eigentliche Funktionsfähigkeit nicht beeinflußt.

Da hakt doch was
Der eigentliche Knackpunkt zeigt sich beim Ausprobieren einzelner Tasten. Während „B“, „H“ und „T“, getippt auf einer angeschlossenen PS/2-Tastatur, umgehend auf dem Bildschirm erscheinen, haken „C“ oder „W“ gewaltig. Das „Q“, „A“ oder „Y“ verweigert das System ganz, obwohl die kleine LED auf dem Adapter in allen Fällen das Ankommen des seriellen Tastatursignals anzeigt.

Auch die „2“ (und damit auch die Anführungszeichen) verweigert ihren Dienst, während „5“ und „6“ funktionieren. Ganz grob ergibt sich das Bild, dass nur die Tasten in der Mitte der Tastatur reagieren, die ganz Links jedoch nicht. An dieser Stelle haben wir, zumal ein zweiter C128DCR das gleiche Verhalten zeigte, den geplanten Test des Tastaturlayouts abgebrochen.

Und es geht doch
Unser Messestand verfügt natürlich noch über weitere Rechner und so testen wir den Adapter auch an Skerns C128-Tower (in dem eine „klassische“ C128-Platine steckt) und an einem C128D. In beiden Fällen funktionieren die Tasten, die beim C128DCR Schwierigkeiten machen, tadellos. Es muss also irgendeinen Unterschied zwischen den Rechnertypen geben, der sich bei Verwendung der original C128-Tastaturen (diese sind für C128D und C128DCR technisch identisch) nicht auswirkt, den Adapter jedoch beeinflußt.

Lesen erleichtert das Leben
Das Geheimnis liegt in einer Fußnote, die man auf der AmiBay-Seite findet. Der Adapter benötigt zusätzlich 5V auf Pin 4 der Tastaturbuchse, die sind beim C128DCR nicht angeschlossen und müssen im Rechner mit eine Drahtverbindung von C71 geholt werden. Da ich zum Löten keine Lust habe, war’s das für mich. Für andere mag es ein interessantes Gerät sein, solange man nicht einen der eher seltenen C128 mit starken Pull-Down-Widerständen am Tastaturanschluss hat, denn dann, so erklärt CopyKiller auf AmiBay, benötigt der Adapter einen Umbau.

Veröffentlicht unter C128, Events, Hard | Schreib einen Kommentar

Alpha 5 für den C64

Vorab ein Dankeschön an Jörg, der meinen Ankündigungbeitrag zur Bunkerparts 2017 kommentiert hat. Durch seinen Hinweis auf ein YouTube-Video, das eine Sendung der TV-Spielshow Alpha 5 zeigt, dürfte klar sein, woher ich im Jahr 1982 die Inspiration für mein Spiel Alpha 5 bezogen habe. Mir war das vollkommen entfallen und ich finde noch immer keine einzig Graue Zelle, die mir auch nur einen Hauch an Erinnerung dazu liefern will. Die Parallelen sind jedoch eindeutig und über jeden weiteren Zweifel erhaben.

Da das „Alpha 64“-Mottobild der Party eben dieser TV-Spielshow entlehnt ist, ist es keine Frage, dass mein Alpha 5 auf der Party gespielt werden muss. Das Problem: Das Spiel gibt es für CBM, PET und C128 aber nicht für den C64! Der Grund ist so trivial wie simpel: als es auf dem CBM entwickelt wurde, wurde eine Steuerung über die Zehnerblock-Tasten realisiert (Joysticks gab es nicht).

Alpha 5 auf dem PET

Für die kommende Party habe ich nun zumindest eine rudimentäre Umsetzung vorbereitet und werde diese dort veröffentlichen. Die zu Spielen wird allerdings lustig, denn die Steuerung erfolgt weiterhin mit den Tasten [1] bis [9]. Da quietscht garantiert das Hirn!

Veröffentlicht unter C128, C64, CBM, Compo, Events, Soft | 2 Kommentare

Music Maker 128

Seit einer gefühlten Ewigkeit war ich schon hinter dem Music Maker 128 her. Ich kann mich gar nicht mehr erinnern, wann ich den entsprechenden Beobachtungseintrag in der Bucht eingestellt hatte. Allerdings habe ich inzwischen auch vergessen, warum ich das Teil damals eigentlich so unbedingt haben wollte. Wie auch immer, jetzt hat es geklappt. Kurz vor Weihnachten waren plötzlich sogar mehrere Exemplare gleichzeitig verfügbar. Diese Woche war der Liefertermin und nun ist die neue Hardware da! Wobei es irgendwie komisch ist, etwas ohne Elektronik, ja ohne jedes Stück Metall, als „Hardware“ zu bezeichnen.

Musik M aker 128

Wie man sieht ist sogar eine Originalverpackung dabei (die ist zwar beschädigt, aber ich bin ja kein Purist). Dank der OVP ist das gute Stück in bestem Zustand. Begleithefte und Disk sind ohne Knick und Knitter und sogar die Keyboard-Notensticker sind noch auf der Originalfolie verfügbar. Als erstes werde ich wohl mal ein Image von der Diskette ziehen, sicher ist sicher [sonst bleibt nur die CSDb], und dann ein bisschen herumklimpern.

Veröffentlicht unter C128, Hard, Music, Soft | Schreib einen Kommentar