MemDriver V1.0
1. Was ist MemDriver?
MemDriver ist Teil eines Projekts welches ich vor einigen Jahren begonnen habe. Es sollte ein Betriebssystem geschaffen werden welches alle Speichererweiterungen unterstützt. Leider kam dieses Projekt nie über dieses erste Grundlagenprogramm hinaus. Mittlerweile erweist sich das MemDriver Programm jedoch recht nützlich um Speichererweiterungen zu testen. :-)
MemDriver wurde geschaffen um auf unbekannten Ataris nach Erweiterungsspeicher zu suchen und die Zugriffswerte (Pagesequenz) zu speichern um anderen Programmen die genaue Speicheraufteilung mitzuteilen. Diese Programme brauchen nun selbst nicht mehr nach Erweiterungsspeicher zu suchen (solch eine Suche kann sehr aufwendig sein bei der Mannigfaltigkeit der für den ATARI verfügbaren RAM-Erweiterungen).
Ich werde dieses Programm nicht weiterentwickeln wenn kein Interesse besteht!
2. Arbeitsweise des Programms
Das Programm sucht nach seinem Start (es wird ein Autostart nach hochlaufen des Systems empfohlen zB. 'AUTORUN.SYS' oder starten von einem Batchfile-System) nach der Datei MPSQ1.DAT im Hauptverzeichnis. Ist diese vorhanden, also die Pagesequenz bereits bekannt, so wird lediglich eine kurze Meldung über den verfügbaren Arbeitsspeicher ausgegeben und das Programm wird beendet.
Ist die MPSQ1.DAT Datei nicht vorhanden so startet das Speichertestprogramm und beginnt nach Speicherbänken zu suchen die über $D301 und $D600 aktiviert werden können. Die Bänke werden gezählt und sortiert, die Liste der Bänke wird in der Datei MPSQ1.DAT gespeichert.
Weiterhin stehen nun folgende Zusatzfunktionen des Programms zur Verfügung:
Sollte die Pagesequenz schon bekannt, also die Datei MPSQ1.DAT bereits vorhanden sein, so kann ein Start des Testprogramms dürch drücken der HELP-Taste vor dem Beginn des Ladevorgangs erzwungen werden.
HINWEIS: Da das Programm die Ladeprozedur ab einem bestimmten Punkt selbst übernimmt muss im X-Register die IOCB-Kanalnummer vom aufrufenden DOS übergeben werden. Diese Funktion ist unter ATARI-DOS und MYDOS verfügbar. Leider kann ich nicht sagen ob sich dieses Programm auch mit anderen 'DOSen' starten lässt.
Nun mal noch ne kurze Erklärung der Speichertests:
3. Aufbau der MPSQ1.DAT Datei:
F-Adresse (hex) | Länge (dez) | Inhalt |
0000 | 0004 | 'PSQ1' - Kennstring, Pagesequenztabelle Version 1 (sollte sich das Fileformat ändern wird die '1' hochgezählt) |
0004 | 0004 | '0000' - Total-Speichergrösse in KB (vier ASCII-Ziffern) zur schnellen Bildschirmausgabe des Systemgesamtspeichers |
0008 | 0001 | frei |
0009 | 0001 | Anzahl der Speicherbänke (Länge der folgenden Liste) |
000A | [0009] | D301 - Zugriffswerte für Pagesequenz |
000A+[0009] | [0009] | D600 - Zugriffswerte für Pagesequenz |
EOF | - | - |