Infos

Sie befinden sich in den Archiven der Kategorie CBM.

Februar 2012
M D M D F S S
« Jan    
 12345
6789101112
13141516171819
20212223242526
272829  
Kategorien

Archiv der Kategorie CBM

GET mit blinkendem Cursor

Heute hatte ich im Forum64 ein Déjà-vu-Erlebnis. Ein Forumsteilnehmer fragte nach einem “Cursor bei GET Abfragen“. Benötigt wurde eine Lösung für einen CBM 8032. Das erinnerte mich gleich an meine eigenen Probleme mit der Implementierung des GET-Befehls bei CBM-Rechnern … vor über 25 Jahren!

Lustigerweise kamen im Forum gleich ein paar hilfreiche Tipps für die Nachbildung eines Cursors auf einem C64. Nur war danach nicht gefragt. Die beste BASIC-Lösung für den 8032 kam vom User Paradroid:

10 poke 167,0:rem cursor ein
20 get a$:if a$=""then 20
30 wait 170,1:poke 167,1:rem warte auf cursor aus (170,1), dann cursor ausschalten (167,1)
40 if a$=chr$(13) then end
50 print a$:goto 10

Die Idee mit dem WAIT-Befehl ist ganz nett, führt aber zu einer hakeligen Eingabe, da immer erst das Ende der Blinkphase abgewartet werden muss. Das hat mir vor einem viertel Jahrhundert schon nicht gefallen. Daher habe ich mir damals eine Assembler-Lösung gebastelt (anders geht’s halt nicht). Das war dann auch meine erste Veröffentlichung in einer Computer-Zeitung (und es gab sogar Geld dafür … was für Zeiten!):

GET mit blinkendem Cursor (auch als PDF)

Manche Lösungen sind halt seeehr, seeehr alt.

Internationales Jahr der Chemie 2011 (2)

Die Vereinten Nationen (UN) haben für 2011 das “Internationale Jahr der Chemie” ausgerufen. Wenn sich schon die ganze Welt so intensiv mit Chemie beschäftigt, dann ist das Grund genug mal zu rekapitulieren und recherchieren, was denn das Retro-Computer-Hobby mit Chemie verbindet.

Im ersten Teil habe ich daher über eigene Erfahrungen mit Computern im Chemiestudium berichtet. Dass ich für meinen C128 eigens ein Textverarbeitungsprogramm geschrieben habe (schreiben musste, um mit einem strunzdummen, aber dafür billigen Typenraddrucker spezielle Symbole wie ein Alpha darstellen bzw. automatisch ein Inhalts- und ein Stichwortverzeichnis für meine Dissertation erzeugen zu können), sei hier nur eine Randnotiz wert. Der zweite Teil soll sich mit Lern-, Demonstrations- und Rechenprogrammen zum Thema Chemie befassen.

Teil 2: Die Chemie, Commodore und die Nachwelt

Allgemein zugängliche Chemierechen und -lernprogramme, bzw. das was man damals dafür hielt, gab es schon - wenn auch in kleiner Zahl - in den frühen CBM-Tagen. In Softwaresammlungen der ICPUG und TPUG (heute erhältlich auf CD) finden sich zumindest einzelne mehr oder weniger sinnvolle Beispiele. Obwohl ich die entsprechende ICPUG Disk leider nicht testen konnte, klingen die Programmbeschreibungen vergleichbar zu denen auf den TPUG Educational-Disks und deren Qualität ist, nach einer ersten Sichtung, leider nicht gerade berauschend.

Dabei gab es in Programmzeitschriften wie der Chip und speziell der CAL (Computer-Anwendung im Labor, 1983 - 1985) durchaus sinnvolle und nützliche Programme für angehende und gestandene Chemiker, die auch auf einem Commodorerechner lauffähig waren (und sind). Im Internet sucht man diese allerdings vergeblich, sie sind für die moderne Nachwelt, die nur noch elektronisch recherchiert und das Betreten von echten Bibliotheken für Papierliteratur für einen Anachronismus hält, schlichtweg verloren. Google jedenfalls liefert zu den entsprechenden Stichworten allenfalls ein paar inhaltlich wertlose Hinweise auf Literaturzitate.

Ernsthafte Computeranwendungen im Bereich der Chemie gibt es natürlich auch in der Erfassung und Auswertung von Messdaten. Dafür den weitverbreiteten und relativ preisgünstigen C64 zu nutzen, bot sich da auch wegen seines frei programmierbaren USER-Ports geradezu an. Zu diesem Thema gibt es einige interessant klingende Bücher (mehrbändig):

Falls man heute überhaupt noch einer dieser Schriften in gebrauchter Form habhaft werden kann, dann zu horrenden Preisen. Die Basis der Preisbildung erscheint allerdings recht fragwürdig, zumal eine praktische Nutzung im Unterricht heutzutage ausgeschlossen werden kann. [Falls jemand, der das hier liest, diese Bücher besitzt und nicht mehr benötigt, kann er mir ja mal ein vernünftiges Angebot unterbreiten.]

ChemLab Screenschots (tn)

Wenn also im Bereich der sinnvollen Anwendungen nichts den weiten Weg bis in die Moderne überlebt hat, bleibt immer noch ein Gebiet, in dem der C64 unübertroffen ist: Spiele. Trotz intensiver Suche habe ich nur ein Beispiel finden können: Chem Lab von Simon & Schuster Computer Software ist eine Art Simulation Chemischer Laborversuche (Bericht in der Compute; Info in der Gamebase64). Die Palette der animierten Experimente reicht dabei von Farbspielereien bis Explosionen.

Falls irgendjemand weitere Infos zu Spielen oder Anwendungsprogrammen für Commodore-Rechner mit Chemiebezug kennt oder hat, würde ich mich über eine kurze Mitteilung freuen.

Internationales Jahr der Chemie 2011 (1)

Internationales Jahr der Chemie 2011Die Vereinten Nationen (UN) haben für 2011 das “Internationale Jahr der Chemie” ausgerufen. Es soll an die Errungenschaften der Chemie und ihre Beiträge zum menschlichen Wohlstand erinnern [1]. Die Eröffnungsrede auf der deutschen Auftaktveranstaltung am 9. Februar wurde von unserer Bundeskanzlerin gehalten.

Wenn sich schon die hohe Politik so intensiv mit Chemie beschäftigt, dann ist das Grund genug mal zu rekapitulieren und recherchieren, was denn das Retro-Computer-Hobby mit Chemie verbindet und damit meine ich nicht die diversen Rezepturen zum Bleichen vergilbter Computergehäuse.

Teil 1: Die Chemie, der Computer und Ich

Als ich Anfang der 80er des letzten Jahrhunderts mein Chemiestudium begann, konnte man durch die Fenster des Instituts für Technische Chemie mehrere CBM-Rechner erkennen, die dort vermutlich für Steuerungsaufgaben benutzt wurden. Meine Hoffnung, im Studium recht bald mit diesen oder anderen Rechnern in Kontakt zu kommen, erwies sich jedoch als trügerisch.

Statt dessen wurde den Studenten ein Informatikkurs zum Erlernen der Programmiersprache FORTRAN 77 angeboten. Die Programme wurden mit Hilfe von Lochkartenstanzern auf Lochkarten (Bild) übertragen. Der fertige Programmkartenstapel wurde dann im Rechenzentrum abgegeben und verarbeitet. Erst am nächsten Tag holte man sich einen dicken Stapel Computerpapier aus dem Drucker und konnte dann sehen, ob das Programm etwas sinnvolles oder - was viel öfter der Fall war - eine Fehlermeldung als Ergebnis zeigte. Ein Computerterminal bekamen wir nicht zu Gesicht. Mit meinem CBM 4008 war ich daher zuhause informationstechnisch weitaus fortschrittlicher ausgerüstet als an der UNI.

Einen direkten Draht zum Zentralrechner erhielten wir erst später, als wir im Rahmen eines Organik Seminars HMO-Gleichungen lösen sollten (semiempirische Quantenchemie klingt gruselig, ist aber nur halb so komplex wie es sich anhört). Die Ergebnisse der Berechnungen, wer hätte es gedacht, waren wieder Stapel an bedrucktem Endlospapier. Die Programmlogik war aber keine Hexerei und so habe ich mir eine einfache Version für meinen CBM erstellt und konnte zuhause rechnen.

In der Folgezeit habe ich noch manches von meinem CBM berechnen und drucken lassen, womit ich bei einigen Praktikumsassistenten durchaus Eindruck schinden konnte. Besonders die hochauflösenden Grafiken (Anm: nach den Maßstäben der damaligen Zeit!), erzeugt mittels eines eigentlich nicht grafikfähigen Computers und eines ebenfalls eigentlich nicht grafikfähigen Druckers (CBM 4022) konnten überzeugen. Erst mit dem massenhaften Auftauchen des Commodore C64 begann der Stern meines CBMs zu sinken. Doch da lagen die besagten Praktika schon hinter mir.

Fortsetzung folgt mit Teil 2: Die Chemie, Commodore und die Nachwelt

[1] Quelle: http://www.unesco.de/chemiejahr_2011.html

SuperCPU für den Commodore PET

Im April diesen Jahres hat André Fachat einige interessante Aktualisierungen auf seiner Website auf 6502.org vorgenommen.

SuperCPU für den Commodore PET (Prototyp)Die größte Aufmerksamkeit gebührt dabei einem von ihm entwickelten Prototypen einer Commodore PET 65816 CPU Card. Die CPU-Karte wird als Ersatz für die auf dem Bord befindliche 6502 eingesetzt und enthält neben dem 65816 Prozessor noch 1 MByte FastRAM, 512k Flash-ROM und (natürlich) einen CPLD-Baustein als “logic glue”. Der aktuelle Prototyp taktet derzeit bei 10 MHz; 12,5 MHz sollen es mal werden. Details, Schaltpläne und Photos finden sich auf Andrés Homepage.

4k BASIC Compo (Forum64)

Heute endet die Einreichungsfrist für die 4k BASIC Compo im Forum64. Die Regeln: C64, Floppy 1541, Joysticks und maximal 4096 Bytes BASIC-Programm. Das seltsame bei diesen Wettbewerben ist, dass man erst nicht weiß, was man programmieren soll. Dann erscheinen 4096 Bytes doch recht viel (das will erstmal eingetippt werden). Und kurze Zeit später sucht man verzweifelt im Programm herum, wo man die paar noch zusätzlich benötigten Bytes einsparen könnte. Mal ganz zu schweigen davon, das völlig ungeklärt bleibt wo man die Zeit für das Programmieren hernehmen soll.

Ich habe es mir daher etwas leichter gemacht und aus meiner “Schatzkiste” uralter Programme etwas ausgebuddelt, was ich vor Urzeiten für meinen CBM 4008 programmiert hatte. Ein bißchen Farbe reingeklatscht, ein wenig Optimierung im Programmablauf, ein paar Fehler eliminiert und fertig war Distichon 2009, mein Beitrag zu 4k Compo. Warum ich das Spiel Distichon genannt habe, weiß ich heute leider auch nicht mehr. Genausowenig kann ich mich erinnern, wo ich die Spielidee abgekupfert habe. 25 Jahre sind halt eine lange Zeit…

Die Spielregeln sind einfach und werden im Programm angezeigt. Ein Stapel Plättchen muß ungleichmäßig geteilt werden. Stapel mit einem oder zwei Plättchen werden daher gelöscht. Zwei Spieler (einer davon kann der Computer sein), ziehen abwechselnd. Wer den letzten Zug macht, hat gewonnen. Das ist alles.

Distichon (Multiplattformspiel)

Da das Spiel die erlaubten 4096 Bytes nicht ausfüllte, habe ich eine kleine Computer-Erkennungsroutine eingebaut. Dadurch ist das Programm auf folgenden Systemen lauffähig: C64 (Abbildung links oben), C128 [40-Zeichen-Modus] (rechts oben), C16, C116, Plus4 (links unten), PET 2001, CBM 3001 Series, CBM 4001 Series (rechts unten) und CBM 510. Wenn man das Spiel auf einem CBM 8001 Series laufen lassen möchte, muß zuvor mit dem Programm “CBM4032 ANY HZ” eine 40-Zeichen Darstellung aktiviert werden. Alles was keinen 40-Zeichen-Bildschirm hat (z.B. CBM 6×0, CBM 7×0, VC 20 und KIM 1) wird vom Programm weder korrekt erkannt noch unterstützt.

Auf farbfähigen Systemen stehen vier Farbschemata zur Verfügung, die durch “Zufall” selektiert werden. Nur “Classic Green” und “Blue Ocean” sehen auf einem Emulator immer gut aus. “Grey Malve” gibt eigentlich nur auf einem Plus4 ein hübsches Bild, da hier andere Farben als auf einem C64 verfügbar sind. Das vierte Farbschema, “Red Lemmon”, ist seinerseits stark von der Monitoreinstellung bzw. im Emulator von der verwendeten Farbpalette abhängig. Das Ergebnis schwankt dabei zwischen ganz nett und ziemlich gruselig.

Da die alten CBM-Rechner keinen Verschiebelader haben, wurde das Programm mit der Startadresse $0401 gespeichert. Auf einem C64 muss es also mit LOAD "dateiname“,8 und nicht mit LOAD "dateiname“,8,1 geladen werden. Als weitere Besonderheit ist der Killer-Poke, der die Textausgabe auf PET und CBM-Rechnern mit alten Boards beschleunigt, zu erwähnt. Dieser wird auf einem CBM-System (nur) dann aktiviert, wenn der Rechner nicht als CBM 4001 Series erkannt wird. Sollte also jemand auf einem neuen Board ein altes CBM-Betriebssystem laufen haben, könnte es mit dem Bildschirm Probleme geben. Dafür wird jede Haftung ausgeschlossen.

Nachtrag 01.04.2009:
Download des Programms via Forum64

PET Tube

Durch Zufall hatte ich vor einigen Tagen auf YouTube das Video eines PET-Spiels entdeckt. Doch es gab nicht nur dieses eine - es war eine komplette Serie! Die Quelle dieser Schmuckstückchen liegt auf der Homepage von Kim Moser aus N.Y., der, wie der Nachname erahnen läßt, deutsche Vorfahren hat.

Fire! Bild 1 Fire! Bild 2
Fire! [Download als prg-File] - Lodernde Glut auf dem PET. - Wer will da noch Choplifter spielen…?

Kim Moser hat verschiedene PET-Games vornehmlich (aber nicht nur) aus dem CURSOR Magazine (englischsprachiges Kasetten-Magazin mit kurzen Programmbeschreibungen auf Papier) [Wikipedia] als Livemitschnitt “verfilmt”. Das Magazin erschien in den späten 70ern und frühen 80ern und die Programme sind für den PET mit 8 K RAM ausgelegt. Die Aufnahmen entstanden wohl mit Hilfe eines Emulators und geben einen guten Überblick über den Spielverlauf.

Faszinierend auch die Cover und Animationsprogramme des CURSOR Magazines, die jedes für sich ein kleines PET-Demo sind und die graphischen Möglichkeiten des PETSCII-Zeichensatzes voll zum Einsatz kommen lassen (ein schönes Beispiel ist: Cover 18; witzig: Dance).

Kim Mosers Homepage verbirgt noch manch anderes (Commodore)Schätzchen - ein Besuch lohnt sich!

[Eine Zusammenstellung der Programme der Ausgaben #1 bis #28 des CURSOR Magazines auf sechs D64-Images gibt es hier: http://www.jammingsignal.com/c64/d64/cursordisks.zip (Info von comp.sys.cbm, Leif Bloomquist).]

Feuerwerk

Passend zum Jahresende hier eine “Demo” für PET und CBM. Sie läuft auf allen Systemen mit 40-Zeichen-Bildschirm (PET 2001, CBM 3001, 4001). Bei einem RAM-Ausbau mit 32 K wird der Variablenspeicher für Strings zerschossen, das sollte jedoch keine Rolle spielen. Feuerwerk ist identisch mit dem hier genannten Programm “Sternenexplosion”. Programme dieser Art waren die üblichen ersten Gehversuche auf einem PET/CBM vor über 25 Jahren.

Feuerwerk v1

Folgende Funktionen sind implementiert:
[c] = Bildschirm Löschen
[d] = Wechsel des Löschmodes
[f] = Wechsel der Symbolauswahl : alle / ausgesuchte Symbole
[x] = Ende

PET Game Coding Competition 2007

CommodorePET.org Logo

Auf commodorePET.org (Commodore PET Alive!) wurde am 7.April im zugehörigen Forum die Commodore PET Game Coding Competition 2007 gestartet. Die Compo läuft noch bis zum 31. Juli 2007. Wer mitmachen will, sollte daher auf einen verregneten Sommer hoffen und schnell seinen alten CBM-Rechner anwerfen oder VICE starten und die Tasten klappern lassen.

Die Größe des Programms spielt keine Rolle, es muss aber auf realen Maschinen und VICE laufen. Zudem ist der Quellcode beizufügen und (unter GPL) mitzuveröffentlichen. Was sonst noch zu beachten ist, steht alles in der offiziellen Ankündigung. Dort ist allerdings nicht explizit erwähnt, ob mit “PET” alle PET/CBM-Rechner (also 2001, 3001, 4001 bis 8001) gemeint sind, doch würde ich mal davon ausgehen.

Wie bei der C128-Compo von Commodore 128 Alive! gibt es auch hier wieder was zu gewinnen! Der erste Preis sind $AU 100, der 2. AU$ 50 und der Drittplazierte kann immerhin noch AU$ 25 via PayPal bekommen.

Zurück zu den PET-Wurzeln (2. Tag)

Hallo von der HobbyTronic 2007! Heute haben wir endlich einen Internetzugang. Nach etwas chaotischen Beginn - alles andere wäre wohl nicht angemessen - ist daher jetzt erstmals Zeit was “sinnvolles” zu machen.

Alpha 5 auf dem PETEiner der Blickfänger am Stand ist ein alter PET mit MickyMaus-Tatstatur und schwarz/weiß-Bildschirm. Da eine simple Einschaltmeldung auf die Dauer ziemlich langweilig wirkt, wollten wir ein etwas “interaktiveres” Programm laufen lassen. Auf meinem PC hatte ich ein D64 meiner (zwanzig Jahre alten) ActionGames für den CBM 4001 Series. Die Wahl fiel auf Alpha 5, da hier nur wenige Pokes anzupassen waren.

Da wir gestern noch “netzlos waren” und keine Referenzliste vorlag, musten die Pokeadressen erst durch mühsame Analyse der ROMs von CBM und PET ermittelt und umgerechnet werden. Das alles wurde auf dem PC mit VICE durchgeführt. Aus dem D64 wurde die PET-Programmdatei dann mit dem D64Editor extrahiert und auf PC-Diskette geschrieben. Vor dort führte der Weg dann zum C128 D mit FD-Laufwerk. Dort trat dann LittleRedReader V.2.80 in Aktion und kopierte das Programm endlich wieder auf eine “echte” Diskette.

Wie man weiß, ist beim PET der IEEE-Bus nicht funktionsfähig. Mit der Disk konnten wir also nicht viel anfangen - wir brauchten ein Tape! Eine Datasette war verfügbar, doch wegen des unterschiedlichen Basicstarts und der Tatsache, dass der PET keinen “Verschiebelader” hat wie der C64, konnten wir das Programm nicht einfach mit Load und Save von Disk auf Band übertragen. Erste Versuche mit Kopierprogrammen waren erfolglos, also wurde auf dem C64 (C128 im C64-Modus) ein PET-Emulator gestartet. Dieser war zwar nicht in der Lage das Spiel ablaufen zu lassen, aber er war perfekt als Kopiermaschine zu gebrauchen. Das Tape wurde vom PET anstandslos akzeptiert und voila! nun läuft Alpha 5 auch auf einem echten PET.

Alpha 5: Rücksturz zur Erde
Premiere (nach über 20 Jahren): Alpha 5 auf einem echten PET

30 Jahre PET

Vor 30 Jahren, im Januar 1977, stellte die Firma Commodore auf der Consumer Electronics Show (CES) in Las Vegas (USA) den ersten als Fertiggerät in Serie gebauten Microcomputer vor. Der PET (Personal Electronic Transactor) getaufte Computer war zwar erst im Spätsommer lieferbar, doch der Prototyp war Monate vor den Konkurenzmodellen Apple II und TRS 80 einsatzbereit.

30 Jahre PET

Der Prototyp von der CES war erst zur Messe in alle Eile aus billigen Einzelteilen zusammengeschustert worden. Der Monitor stammte aus einem Billig-TV-Gerät und das Chassis war aus Holz. Chuck Peddle, der zuvor schon den KIM-1 entwickelt hatte, arbeitete drei Tage und Nächte, um das Werk zu vollenden und es wurde nur wenige Stunden vor der Eröffnung der Messe fertig. Wieso nur erinnert uns diese Geschichte an den ersten C64 und noch mehr an die Umstände der Vorstellung des C128?

Das Gehäuse des Prototypen hatte abgerundete Ecken und das Design wird Ira Velinsky zugeschrieben (keinesfalls Porsche, wie immer mal wieder fälschlich behauptet wird). Dieses Ur-Design wurde aus Kostengründen in der Serienproduktion des PET 2001 gegen das bekannte Blechkleid getauscht und findet sich erst Jahre später in den B-Serie Modellen (CBM 500, CBM 600 und CBM 700) bzw. dem eleganten CBM 8032 SK wieder.

Der PET hatte ursprünglich 4K RAM, wurde aber schon nach kurzer Zeit nur noch mit 8K RAM verkauft. Das Herz war der neue 1 Mhz MOS 6502 Prozessor, Betriebssystem und BASIC hatten in 14 KByte ROM Platz gefunden und so stand der Rechner nach dem Einschalten in Sekundenschnelle zur Verfügung. Die verwendete Tastatur war, wegen des eingebauten Cassetten(Daten)recorders, sehr winzig, und wurde nicht von ungefähr als Micky-Maus-Tastatur bezeichnet; immerhin gab es ein abgesetztes numerisches Tastenfeld. Der 9″ Monitor war fest eingebaut, jedoch ließen sich die Videosignale für externe Geräte am Userport abgreifen.

Schon nach kurzer Zeit war der PET 2001 auch in Deutschland erhältlich. Wo er später aufgrund namensrechtlicher Probleme in CBM 2001 (Commodore Business Machine) umgetauft werden musste. Man fand ihn sowohl im Versandhandel als auch in größen Kaufhäusern. Der Preis war gegenüber den in den USA verlangten knapp 600 Dollar mit 2.999 DM reichlich überhöht, sank aber bald auf rund 2000 DM und darunter. Übrigens kostet auch heute noch ein aktueller für den Massenmarkt produzierter PC genau 2000 DM oder eben 1000 Euro. Man schaue sich dazu die jährlichen Angebote von Aldi an. Das Gerät kostet jedesmal 999 Euro nur Leistung und Ausstattung werden von Jahr zu Jahr hochgeschraubt. Was mich zu der Aussage führt: Computer für den Massenmarkt kosten immer 1000 Euro. Und das wird sich auch in Zukunft nicht ändern. Hier bestimmt die Psychologie den Preis und somit wird der “Rechner der Saison” (jetzt im Februar 2007 ist es ein Laptop) über Leistung und Ausstattung an den Preis angepasst und nicht umgekehrt - und das jetzt schon seit fast 30 Jahren!

Es mag vielen Commodoreenthusiasten nicht in den Kram passen, aber das BASIC des PET und damit aller Nachfolger (inkl. C64) stammt ursprünglich von Microsoft. BillyBoy persönlich verkaufte Commodore das Produkt mit allen Rechten und Commodore konnte dann damit machen was es wollte (davon träumen die M$-Kunden von heute nur).

Zum Trost für alle M$-Hasser sei gesagt: das BASIC hatte einige Macken! Was sonst würde man von einem M$-Produkt erwarten?
1. Arrays konnten nur eine maximal Größe von 256 Elementen erreichen
2. Die IEEE-Schnittstelle war (auf höherer Ebene) nicht funktionsfähig
3. Leerzeichen innerhalb von (scheinbaren) BASIC-Schlüsselwörtern wurden vom Editor ignoriert. Was dazu führte, dass z.B. der Ausdruck “F OR I” als “FOR I” übernommen wurde und zu einem “Syntax Error” führte. Allerdings konnte man auch “P R I N T” schreiben und es wurde “PRINT” ausgeführt.

Links:
Commodore PET History (geschichtlicher Abriss, englisch)
Larry’s PET/CBM Pages (mit kleinem Bildchen des Prototypen, englisch)
Andre Fachat’s PET Index (umfassende Zusammenstellung, englisch)
CBM Linkpage (wie der Titel sagt: Links!, deutsch)
Kufis Commodore Computer Online Museum (Quelle des PET-Bildes für die Montage, deutsch)