StefanBion.de

Dem Stefan sein kunterbuntes Web-Sammelsurium

Artikel mit Schlagwort: DOS

Retro-Apfel

Meine frühen Versuche mit Fraktalgrafiken aus der Computer-Steinzeit.

Das DOS-Museum

Nachdem ich mir 1989 meinen ersten PC – einen 286er mit 15 MHz, 512 KB Hauptspeicher, 20 MB Platte und DR-DOS als Betriebssystem – angeschafft hatte, sind unzählige kleinere und auch einige etwas größere "Progrämmchen" entstanden, von denen ich hier spaßeshalber mal einige ausstelle.

A86-Library

Diese Programmbibliothek für Assembler enthält über 120 Funktionen zur Bildschirm- und Tastatur-Ein- und Ausgabe, zur Zeichen- und Stringbearbeitung, zum Rechnen mit Binär-, Dezimal- und Hexadezimalzahlen, Erzeugung von Zufallszahlen, zum Auswerten der Kommandozeile, zum rekursiven Durchsuchen von Verzeichnissen, verschiedene DOS-System­funktionen, und noch so einiges mehr...

AuDig

Einfacher Audio-Editor zum manuellen Schneiden und Abspeichern einzelner Segmente (z.B. Phoneme) aus einem Audiosignal. Die Segmente können in zufälliger Reihenfolge wiedergegeben werden. Außerdem gibt es die Effekte „Umdrehen“ und „Echo“ sowie einen Hoch- und einen Tiefpaß-Filter. Zur Sound-Ausgabe verwendet AuDig den DOS-Digitizer – so eine Art Soundkarten-Ersatz.

BrkPoint

Tool zum Debuggen von Assembler-Programmen. Installiert sich „resident“ im Speicher und wartet im Hintergrund, bis das zu testende Programm auf einen Breakpoint (Int 3) läuft. Zeigt dann die Inhalte der Register und Flags sowie den Stack des unterbrochenen Programms an. Danach besteht die Möglichkeit, das zu testende Programm entweder abzubrechen oder fortzusetzen.

BS2000-Simulator

Ja, da kommt richtiges Großrechner-Feeling auf: Gerade hat man ein schwieriges COBOL-Programm so gut wie fertiggestellt und möchte es nur noch eben schnell abspeichern, da ist mal wieder die Standleitung weg, und in der Statuszeile des Grün-Monitors blinken die Wörter „POLL“, „SAN“ und „DUE“ munter vor sich hin...

CURSES-Ersatz

C-Programme, die ursprünglich für UNIX geschrieben wurden und für die Ein- und Ausgabe über Bildschirm- und Tastatur- nur einige der gebräuchlichsten Curses-Funktionen benutzen, können mit etwas Glück auch unter DOS zum Laufen gebracht werden, wenn diese Headerdatei eingebunden wird.

Der DOS-Digitizer

In der Ausgabe 10/1990 der Zeitschrift DOS International, die ich damals abonniert hatte, gab es eine Bauanleitung für ein kleines Zusatzgerät für den PC, mit dem es – man höre und staune! – möglich sein sollte, beliebige Geräusche (Sprache, Musik, ...) digital aufzuzeichnen und wiederzugeben...

FileManager

Für diesen Dateimanager hat mir das Programm ERGO vom DMV-Verlag, das zu dem Softwarepaket meines 1989 bei Vobis gekauften Highscreen-Rechners gehörte, als Vorbild gedient. Er enthält zudem einen TSR-Manager, einen Hex-Editor und einen Text-Editor mit Blockgrafik-Malfunktion.

Fly

Ein Relikt aus meiner Vor-Internet-Zeit: Die Fluggebiete-Datenbank für Gleitschirmflieger. Man konnte Fluggebiete in Deutschland, Österreich und der Schweiz erfassen und Abfragen machen wie: Welche Fluggebiete mit Startrichtung Ost bis Südost liegen im Umkreis von 75 km um diesen oder jenen Ort? Eine Karte zeigte dann noch die ungefähre Lage des Fluggebietes an.

Image

Dieses nette, keine 2 KB kleine Kommandozeilen-Tool kann von Disketten (auch Bootdisketten) Image-Dateien erstellen und diese später wieder auf Disketten zurückschreiben. Habe ich früher oft benutzt, um Sicherungskopien von Konfigurationsdisketten zu erstellen, oder um schnell mal eine Ghost-Bootdisk per E-Mail zu versenden.

IntPar

Dieses speicherresidente Utility dient zum Überwachen (fast) beliebiger Interrupts und der Registerinhalte vor Eintritt in den Interrupthandler mit INT und nach Verlassen durch IRET oder RETF zur Laufzeit beliebiger Programme. Zeigt die aktuellen Registerinhalte und die Prozessorflags des unterbrochenen Programms in einem PopUp-Fenster an und ermöglicht das Untersuchen des Inhalts des Hauptspeichers mit einem Hex-/ASCII-Viewer.

KeyCheck

Mit diesem Tool können die Codes der gedrückten Tasten ermittelt werden. Nützlich, wenn man in C oder Assembler eine Tastaturbehandlungsroutine schreibt und gerade keine Tastaturcode-Tabelle zur Hand hat...

Make86

Make-Utility für Assembler A86. Anhand von Direktiven im Quelltext können mehrere Quelltext-Teile so miteinander verknüpft werden, daß sie automatisch in der angegebenen Reihenfolge assembliert werden. Weiterhin kann mit Include-Dateien gearbeitet werden (ähnlich wie in C). A86 wird nur dann aufgerufen, wenn sich Quelltext-Teile geändert haben oder wenn noch keine COM- oder OBJ-Datei existiert.

MAP2SYM

Konvertierungsprogramm, das aus einer MAP-Datei von TLINK oder LINK eine SYM-Datei für dem zum Assembler A86 gehörenden Debugger D86 erzeugt. Nur so war es möglich, größere Programme, die aus mehreren OBJ-Modulen bestehen, zu debuggen. Das Utility MAPD86 von Eric Isaacson, das eigentlich genau denselben Zweck erfüllen sollte, funktioniert(e) leider nicht richtig.

MemPatch

Ein Tool für Bitfummler, mit dem alle internen Speicherbereiche des DOS-PC erforscht und manipuliert werden konnten. Mit ca. 18.000 Zeilen mein bisher umfangreichstes Assembler-Programm. Für die Oberfläche mit Menüs, Fenstern und Mausbedienung wurde die SAA-Window-Toolbox (s.u.) verwendet.

MemPatch in der Presse

MemPatch ist ein Tool für Bitfummler, mit dem alle internen Speicherbereiche des DOS-PC erforscht und manipuliert werden konnten. Mit ca. 18.000 Zeilen mein bisher umfangreichstes Assembler-Programm. Die erste Version entstand 1990, und bis in die Mitte der 90er habe ich ca. 50 Shareware-Lizenzen verkauft, was vielleicht auch auf die Berichte in einigen Zeitschriften zurückzuführen ist.

Einfaches Menü-System für C-Programme

Die Headerdatei MNU.H enthält Funktionen, um C-Programme mit einer einfachen Menüoberfläche auszustatten. Die Titel der einzelnen Menüpunkte werden dabei nebeneinander in der obersten Bildschirmzeile ausgegeben und lassen sich mit den Cursortasten oder durch Eingabe des hervorgehobenen Buchstabens auswählen. In der zweiten Bildschirmzeile wird zu jedem ausgewählten Menüpunkt ein Hinweistext ausgegeben.

R86

Ein Reassembler (bzw. eigentlich Disassembler), der aus ausführbaren .COM-Dateien A86-kompatiblen Assembler-Quelltext erzeugt. Ein integrierter Editor ermöglicht die Bestimmung der Code- und Datenbereiche des zu disassemblierenden Programms. Ganz nützlich fürs Reverse-Engineering, um zu sehen, wie andere Leute so in Assembler programmieren...

SAA-Window-Toolbox für Assembler

Mit der SAA-Toolbox lassen sich Assemblerprogramme mit einer komfortablen Menüoberfläche versehen, die sowohl über Tastatur als auch mit der Maus bedient werden kann. Zusätzlich gibt es verschiedene Dialoge zur Datei- und Laufwerks-Auswahl, zur Eingabe von Zeichenketten, zur Ausgabe beliebiger Texte, zur Farbauswahl, sowie einige häufig benötigte Sonderfunktionen.

Scan

Such-Utility (ähnlich find bei UNIX), mit dem sich Dateien nach Name, Inhalt, Datum und Zeit durchsuchen lassen. Mit den gefundenen Dateien konnten dann beliebige DOS-Befehle ausgeführt werden.

Sprich

Kann Textdateien mit einer speziellen Lautschrift „vorlesen“ oder die eingetippte Lautschrift direkt „sprechen“. Für das Editieren der Phoneme wurde AuDig verwendet. Auch Sprich hat eine Zufalls-Wiedergabefunktion und verwendet den DOS-Digitizer zur Sound-Ausgabe.

SysCall

Ermöglicht den Aufruf beliebiger Interrupts von der DOS-Kommandozeile aus. Dazu können Register und Flags zuvor mit den erforderlichen Werten initialisiert werden. Nach dem Aufruf werden die Inhalte der Register und Flags ausgegeben. Ein beliebiger Registerinhalt kann als Exit-Code zurückgegeben werden, der dann z.B. in Batchdateien mittels ERRORLEVEL abgefragt werden kann.

Tetris

Die erste Version dieses Spiels ist 1991 als C-„Übungsaufgabe“ während meiner OrgProg-Schulung auf einer SINIX-Kiste entstanden (ich glaube, das Ding hieß „MX300“, es war jedenfalls so groß wie ein Kühlschrank, aber nicht schneller als ein 486er)...

Quelle: