Hatte gestern wegen Kopfschmerzen und Schwindelgefühlen keine Lust, stundenlang auf den BIOS-Code des GA-5AX zu starren, um die letzte noch fehlende Funktion Force Snoop INV zu aktivieren. Na ja, vielleicht auch vorletzte Funktion, man findet ja nie ein Ende, sondern immer nur noch mehr Haare in der Suppe, also dem BIOS. Ich überlege noch, ob ich versuchen soll, die Cachefunktion für den Schatten-RAM von C0000-FFFFF zu aktivieren. Aber nur, wenn's nicht zu viel Arbeit macht Jedenfalls dachte ich mir, ich versuche mal, mein neu erworbenes Wissen in der Praxis einzusetzen, um dieses Problem zu lösen:
Nicht aus Frust, sondern einfach nur weil das Treffen im Südwesten morgen nicht stattfindet, habe ich die Arbeit am Aladdin 7 vorerst eingestellt. Schaut im Moment so aus:
Alle Laufwerke drinnen und verkabelt. DR-DOS 7.03 ist installiert aber noch ohne Sound- und Netzwerkkartentreiber. Im Real-Mode mit HIMEM.SYS hab ich keine UMBs, da UMBPCI.SYS den Chipsatz nicht kennt Datenblätter für die Northbridge konnte ich auch keine auftreiben
Soweit ich die Funktionsweise von UMBPCI.SYS richtig verstanden habe, aktiviert es den Schreib-/Lesezugriff für die Schatten-RAM-Bereiche, indem es die entsprechende Konfiguration in den Chipsatzregistern ändert und unter MS-DOS die Funktion "Request XMS-UMB" bereitstellt. Zum Glück verwende ich DR DOS und benötige daher letztere Funktion nicht. Lt. Dokumentation zu UMBPCI müßte es also reichen die RAM-Bereiche zu aktivieren, den Rest macht dann der Speichermanager von DR DOS selbst.
Leider ist das ohne Datenblatt nicht so ganz trivial, weil man ja die Offsets der dazu benötigten Register nicht kennt. Aber nach ein bißchen Reverse Engineering und mit etwas Intuition bei der Interpretation der Registerwerte habe ich eine Vorstellung davon, welche Offsets beim Aladdin 7 geändert werden müssen, um den Schreib-/Lesezugriff auf die RAM-Bereich C0000-FFFFF zu ermöglichen. Das will ich nun testen.
Das dazu nötige Programm kann ich in Assembler schreiben. Das funktioniert jedoch nur, wenn ich es im BIOS ausführe, was ich wiederum nicht will, da es nur unter DOS, aber nicht unter Win98SE laufen soll.
Wie mache ich nun aus einem Assemblerprogramm eine SYS-Datei, die ich als Treiber in der CONFIG.SYS laden kann?