BASIC-Programme

Die TXT-Dateien enthalten den Source-Code. Damit die Dateien von einem Basic-Compiler/Interpreter geöffnet werden können, muss deren Endung in "BAS" geändert werden. Die ZIP-Dateien enthalten fertig kompilierte und ausführbare EXE-Dateien.

 

Da ich mir Basic auf einem Commodore C128 Homecomputer mit C64 Modus beigebracht u. später GWBASIC von Microsoft genutzt habe, war ich gewohnt, mit Programmzeilennummerierung zu arbeiten. Ausserdem musste man damals mit geringer Geschwindigkeit (8-Bit 0,985 MHz CPU, Basic-Interpreter, statt Compiler), wenig Arbeitsspeicher (64 KB, für Basic nur ca. 38 KB frei) und geringem Diskettenspeicherplatz auskommen. Daher habe ich versucht, möglichst effektiv zu programmieren, Speichplatz zu sparen u. Abläufe zu beschleunigen.

Ein Interpreter übersetzt während dem Programmablauf jeden Befehl im Source-Code separat u. muss dafür erst jede Stelle des Befehls (Buchstabe/Zahl/Zeichen) einlesen, was die Ausführung ausbremst (auch wenn der Befehl schonmal ausgeführt wurde). Deswegen habe ich möglichst wenig bzw. verschachtelte Befehle (um Zeichen einzusparen), ein-/zeistellige Variablennamen, keine Kommentare (REM) u. mehrfach verwendete Subroutinen genutzt u. möglichst viele Befehle in einer Programmzeile (um Anzahl der Programmzeilen u. dadurch der Nummern zu minimieren). Dadurch ist der Code aber auch recht unübersichtlich und an vielen Stellen schwer nachvollziehbar. Profis bezeichnen das als chaotischen "Spaghetti-Code" ;-)

Ich kann natürlich seit der Nutzung eines Compilers (übersetzt vor dem Programmstart den kompletten Source-Code), auch strukturiert und ohne Zeilennummerierung programmieren, aber es war mir zu viel Aufwand, die alten Programme zu überarbeiten.

Viele laufen sogar noch unter Windows 7 32-Bit. Andere muss man über einen DOS-Emulator, wie DOSBox (Freeware) starten. Bitte aber bedenken, dass DOS-Programme NUR mit achtstelligen Dateinamen + dreistelligen Kürzeln umgehen können. Längere Dateinamen werden mit "~" abgekürzt. Ggf. kann es zu ungewollten Effekten, Fehlern oder sogar Abstürzen kommen.

Da ich für einige Programme eine geringe Auflösung mit nur 16 Farben (EGA-Grafik) verwende bzw. damals verwenden musste und künstlerisch nicht gerade sehr begabt bin, sind die Grafiken recht simpel. Teilweise habe ich gleiche Grafikelemente in verschiedenen Programmen verwendet.

 

Zuletzt habe ich ein kleines Programm für eine Firma geschrieben. Hier sind noch alte DOS-Applikationen im Einsatz gewesen, die unter Windows 7 64-Bit nicht mehr funktionieren. Daher musste erst DOSBox gestartet werden. Zudem konnten sich viele Anwender die Pfade und die kurzen, aber kryptischen Namen der Applikationen nicht merken. Daher habe ich ein Menü programmiert, mit welchem man per einfachen Tastendruck direkt DOSBox zusammen mit dem ausgewählten Programm ggf. incl. Parameter starten konnte. Das Menü ist zwar recht simpel, aber trotzdem hilfreich für die Anwender gewesen.

 

 

ACHTUNG: Selbst professionelle Software ist nicht immer fehlerfrei und die von mir erstellten Spiele/Anwendungen sind nicht kommerziell. Daher gebe ich keine Garantie, dass sie fehlerfrei sind. Ich habe sie ausgiebig getestet, aber falls bisher nicht identifizierte Bugs enthalten sein sollten, könnten unter Umständen evtl. Daten verloren gehen. Für Schäden übernehme ich keine Haftung.

 

 

CE-Demo
Hierzu wurde ich von alten C64-Demos und Spielen inspiriert. Oft sieht man den Titel dort als großen grafisch dargestellten Schriftzug mit farbigen Balken, die in einigen Fällen auch innerhalb des Schriftzuges scrollen (Z.B. beim Shoot'em Up Game "Zynaps").
Zusätzlich kann man das CE-Logo über den Bildschirm bewegen lassen und zoomen.
CE sind übrigens meine Initialien. Die Farbkombinationen lassen sich mit "Space" ändern.
Im Source-Code kann man in der DATA-Zeile andere Farben eintragen.
CE62.txt
Text Dokument 3.2 KB
Animation-Demos
Zwei Demos, in dem jeweils ein Sprite (CE-Logo oder animierter Raumjäger) über einen scrollenden Hintergrund bewegt werden kann.
Da Sprites in PowerBasic nicht direkt unterstützt werden, war dies war ein Experiment, ein Objekt über eine Hintergrundgrafik zu bewegen, ohne sie zu "löschen" und dabei eine Spur zu hinterlassen.
Durch die Flip-Screen Methode geschieht dies flimmerfrei. Während eine Grafikseite angezeigt wird, wird auf der anderen die Hintergrundgrafik und das Logo auf der neuen Position dargestellt. Anschliessend wird zu dieser Seite umgeschaltet u. das Ganze fängt wieder von vorne an.
Zusätzlich wollte ich eine Technik zum Scrollen von Hintergründen in Spielen entwickeln. Für das Scrollen von aufwendigeren Hintergründen ist Basic jedoch zu langsam.
ANIM43.txt
Text Dokument 6.8 KB
ANIM44.txt
Text Dokument 4.3 KB
ANIM.zip
Komprimiertes Archiv im ZIP Format 41.7 KB
Datawork
Mit dem Programm lassen sich kleine Datenbanken mit Datensätzen von bis zu 8 Zeilen je max. 50 Zeichen erstellen (z.B. zur Archivierung von Adressen, Spielen mit Cheats, Filmsammlungen etc.).
Die Datenbanken können natürlich gespeichert, geladen und gelöscht werden (Dateinamen ohne Kürzel eingeben).
In einer geladenen Datenbank können Datensätze gesucht, angezeigt, gedruckt, geändert und gelöscht werden.
Eine Besonderheit ist, dass Datenbanken mit einem Passwort geschützt und dadurch die Dateien auch verschlüsselt abgespeichert werden können.
DATAW2.txt
Text Dokument 7.5 KB
DATAW2.zip
Komprimiertes Archiv im ZIP Format 24.3 KB
Filemaster
Ein einfacher Dateimanager der vage an den Norton-Commander angelehnt ist. Zwei Verzeichnisse können nebeneinander angezeigt werden. Der Funktionsumfang beschränkt sich jedoch auf kopieren, verschieben, löschen, unbenennen von Dateien und eingeschränkt von Verzeichnissen (VORSICHT: keine Bestätigungsabfrage beim Löschen), so wie starten von EXE/COM/BAT-Dateien und erstellen neuer Verzeichnisse. Dabei können einige Funktionen auf mehrere markierte Dateien/Verzeichnisse angewendet werden. Eine Anleitung lässt sich mit der F1-Taste aufrufen.
Das Programm funktioniert zwar auch unter Windows bis Win 7 32-Bit, aber zeigt Dateinamen nur im 8.3 Format an. Das heisst, längere Namen werden wie unter dem alten DOS abgekürzt.
FILEDIR9.txt
Text Dokument 8.3 KB
FILEDIR9.zip
Komprimiertes Archiv im ZIP Format 24.2 KB
Font-Demo
Ein Programm, in dem mehrere Schriftdemos zusammengefasst sind (Space-Taste für nächstes Demo). Text wird in einem leicht dreidimensional wirkenden Balken nacheinander ein-/ausgeblendet (Fading von Schwarz nach Weiss u. umgekehrt) oder eine Textzeile flimmerfrei gescrollt und animiert. Bei den Animationen handelt es sich um Farbstreifen, die innerhalb der Schrift scrollen (alte Demos für den C64 haben mich dazu inspiriert) und um Spiegel-/Welleneffekte.
FONTDEM2.txt
Text Dokument 5.8 KB
FONTDEM2.zip
Komprimiertes Archiv im ZIP Format 17.5 KB
Happy Birthday
Ein kleines Programm, welches simultan 3 Varianten, Schriftzüge animiert auf dem Bildschirm anzeigen zu lassen, zeigt (siehe auch Font-Demo).
Im Source-Code kann man in der DATA-Zeile den Namen oder auch den kompletten Text ändern, wobei jeder Eintrag nicht die Zeilenlänge überschreiten darf.
Als kleinen Gag kann man das Programm unter "Autostart" von Windows auf dem PC des Geburtstagskindes eintragen ;-)
BIRTHDAY.txt
Text Dokument 1.7 KB
BIRTHDAY.zip
Komprimiertes Archiv im ZIP Format 16.1 KB
Kaleidoskop
Ein Demo, welches einen Kaleidoskop-Effekt erzeugt. Dabei wechseln die Farben der Bildpunkte symmetrisch, so dass ein Muster entsteht. Am besten kommt der Effekt zur Geltung, wenn man es sich aus entsprechender Entfernung zum Monitor anschaut.
KALEID3.txt
Text Dokument 914 Bytes
KALEID3.zip
Komprimiertes Archiv im ZIP Format 14.4 KB
Kerzen-Simulation
Ein Demo, in dem eine Kerze abbrennt und ein Wachstropen herunterläuft. Das Besondere ist, dass die animierte Flamme nicht durch mehrere abwechselnd erscheinende Sprites dargestellt wird, sondern ein einziges gespeichertes Grafikobjekt jedesmal ein wenig anders manipuliert erscheint. Das Drücken der Space-Taste beschleunigt das Abbrennen.
KERZE6.txt
Text Dokument 2.4 KB
KERZE6.zip
Komprimiertes Archiv im ZIP Format 18.7 KB
KFZ
Ein Programm, welches die KFZ-Jahreskosten (Spritkosten, Versicherung, Steuer) prozentual vergleicht, die Gesamtsumme errechnet und grafisch darstellt.
Hier wollte ich statt dem INPUT-Befehl eine selbst programmierte und weniger fehleranfällige Eingaberoutine implementieren, so wie auf Basis von Prozentzahlen ein Balkendiagramm erzeugen lassen. Die Balken werden zeitgleich aufsteigend animiert und dreidimensional dargestellt.
Das Programm ist noch vor Einführung der Euro-Währung entstanden, aber es funktioniert natürlich auch mit Euro-, anstelle von DM-Beträgen.
KFZ2.txt
Text Dokument 2.3 KB
KFZ2.zip
Komprimiertes Archiv im ZIP Format 18.8 KB
Logo-Demo
Das "C.E. Software"-Emblem bewegt sich flimmerfrei über den Bildschirm, während im Hintergrund der Schriftzug vertikal scrollt.
Mein erstes Animationsexperiment mit Nutzung von zwei Grafikseiten. Während eine Grafikseite angezeigt wird, wird auf der anderen das Logo auf seiner neuen Position dargestellt. Anschliessend wird zu dieser Seite umgeschaltet u. das Ganze fängt wieder von vorne an (Flip-Screen).
Mit der "C"-Taste lassen sich die Farben ändern und mit der "F"-Taste zwischen langsam und schneller umschalten.
LOGO.txt
Text Dokument 6.6 KB
LOGO.zip
Komprimiertes Archiv im ZIP Format 21.5 KB
Mirror-Demo
Ein Demo, in dem sich eine wehende USA-Flagge (optisch interressanter, als eine Flagge mit 3 Farbbalken) auf dem Bildschirm flimmerfrei bewegt. Auf der türkisen Fläche wird die Fahne gespiegelt. Das Besondere ist, dass die animierte Flagge und die Spiegelung nicht durch mehrere abwechselnd angezeigte Sprites dargestellt werden, sondern ein einziges gespeichertes Grafikobjekt jedesmal ein wenig anders manipuliert erscheint.
DEMO3.txt
Text Dokument 843 Bytes
DEMO3.zip
Komprimiertes Archiv im ZIP Format 13.5 KB
Painting
Ein kleines Malprogramm (Auflösung 320x200, 16 Farben). Hiermit gemalte Bilder können gespeichert und geladen werden (kein Standard-Grafikformat/ Beispiel-Bild dabei: LOGO.PNT). Bitte Dateinamen immer ohne Kürzel eingeben. In Bildern kann zudem Text (im Screen-Mode 7 jedoch recht gross) eingegeben werden, ohne dass die Hintergrundgrafik in der 8x8 Punktmatrix der Buchstaben verschwindet (normalerweise erscheinen Buchstaben mit einfarbigem Hintergrund).
Die letzte Mal-Aktion kann rückgängig gemacht werden, sofern man den Grafikmodus nicht zwischenzeitlich verlassen hat.
Ungewöhnlich ist eine Funktion, die sehr nützlich sein kann. Wenn man schon gemalt hat und mit der gewählten Fabe nicht zufrieden ist, so kann man sie im ganzen Bild durch eine andere ersetzen.
Eine Anleitung lässt sich mit der F1-Taste aufrufen (Tipp: Space-Taste beschleunigt das Schreiben des Textes).
PAINTING.txt
Text Dokument 8.1 KB
PAINTING.zip
Komprimiertes Archiv im ZIP Format 32.3 KB
Sprite-Editor
Ein Sprite-Editor, mit dem man selbst Sprites für eigene Spiele erstellen, speichern, laden und nachträglich bearbeiten kann. Eine Anleitung lässt sich im Editor mit der F1-Taste aufrufen (Tipp: Space-Taste beschleunigt das Schreiben des Textes).
Das separate Demo-Programm läd die mit dem Sprite-Editor erstellte Datei SHIP.SPT. Anschliessend kann das Sprite bewegt (auch diagonal), um den Faktor 2 gezoomt und in 90°-Schritten gedreht werden. Um Flackern bei der verwendeten Flip-Screen Methode zu vermeiden, wird das Programm gedrosselt. Dadurch ist das Bewegen des Sprites recht langsam.
SPRITE53.txt
Text Dokument 6.9 KB
DEMO45.txt
Text Dokument 2.5 KB
SPRITE53.zip
Komprimiertes Archiv im ZIP Format 47.4 KB
Textmaster
Ein einfaches Textverarbeitungsprogramm mit diversen Funktionen, aber ohne Maussteuerung und "WYSIWYG"-Methode (what you see is what you get).
Ich habe mich bemüht, die Tastaturbelegung (Cursortasten, TAB, Return, Delete, Entf, Einf, Bild rauf, Bild runter, Pos1, Ende etc.) und Funktionen normaler Texteditoren einzubauen, soweit dies ohne Mausunterstützung möglich und sinnvoll ist. Des Weiteren lässt sich mit einem Tastendruck eine ganze oder das Ende einer Zeile ab Cursor löschen, eine Zeile mit der nächsten verknüpfen und eine Textdatei in den angezeigten Text ab Cursor einfügen. Zusätzlich lässt sich im Strichmodus z.B. eine Tabelle manuell erstellen (Modus aktivieren u. mit Cursortasten Linie ziehen).
Falls Escape-Sequenzen vom Drucker bekannt sind, können Texte max. zeilenweise (nicht einzelne Wörter) fett, unterstrichen u. mit anderer Schriftart-/grösse etc. gedruckt werden.
TEXTMAST.txt
Text Dokument 7.3 KB
TEXTMAST.zip
Komprimiertes Archiv im ZIP Format 23.6 KB
Watch
Der Versuch, eine einfache analoge Uhr ohne COS- und SIN-Funktionen zu programmieren (war nicht besonders gut in Mathe). So ist die rautenförmige Uhr entstanden.
Man kann es auch unter Windows im Vollbildmodus starten oder in einem kleinen DOSBox-Fenster in einer Bildschirmecke mitlaufen lassen.
Auf alten PCs lief das Programm mit dem Tickgeräusch problemlos, aber auf meinem jetzigen Rechner läuft die Zeit zu schnell. Der Sound-Befehl, bei dem ein Parameter die Dauer des Tons angibt, beeinflußt wohl den Taktgeber. Im Source-Code ist der Sound-Befehl enthalten. In der ZIP-Datei ist aber auch eine kompilierte Version ohne Ticken.
WATCH.txt
Text Dokument 1.7 KB
WATCH.zip
Komprimiertes Archiv im ZIP Format 35.0 KB
Wave-Demo
Ein Demo, in dem sich eine wehende USA-Flagge (optisch interressanter, als eine Flagge mit 3 Farbbalken) auf dem Bildschirm flackerfrei bewegt. Gleichzeitig scrollt ein Schriftzug, in der wiederum Farbbalken rotieren, von links nach recht. Zusätzlich spiegelt sich die Schrift auf der blauen Fläche wie in Wasser mit Wellenbewegungen.
DEMO.txt
Text Dokument 1.2 KB
DEMO.zip
Komprimiertes Archiv im ZIP Format 13.6 KB

Unter folgendem Link sind viele alte DOS-Spiele zu finden:

HTTP://DOS-Spiele.Jimdo.com