new stuff

This commit is contained in:
Oliver Lehmann 1989-08-02 07:55:50 +00:00
parent acc44032d0
commit 91662cfbbc
1 changed files with 708 additions and 0 deletions

View File

@ -0,0 +1,708 @@
.nr PO 0i
.nr FL 0i
.nr LL 6.6i
.nr LT 6.6i
.nr HM 1i
.nr FM 1.8i
.ds LH "Anlage 4
.ds CH "\- \\n(PN \-
.ds RH "WDOS-Software
.ds CF "
.LP
.nh
Anlage 4 - 1 - WDOS-Software
.DS C
.B
WDOS-Erweiterungsmodul - A4-Ergebnisbericht
I. Software
WEGA-DOS (WDOS)
.br
Abarbeiten von DCP unter WEGA
.R
.DE
.sp 10
.DS L
Bearbeiter: P. Hoge
M. Klatte (sa.diags)
.DE
.ds LH "WEGA-DOS
.bp
.DS L
.B Inhaltsverzeichnis
1. Einleitung .......................................... 3
2. Komponenten von WDOS ................................ 4
2.1. WDOS-Treiber cpu2 im WEGA-Kern ...................... 4
2.2. WDOS-Koppelprogramm wdos ............................ 5
2.3. WDOS-Menueprogramm wm ............................... 6
2.4. "ROM"-BIOS .......................................... 6
3. DOS-Programme ....................................... 7
4. Ergebnisse der WDOS-Implementation .................. 8
4.1. Hardware-Voraussetzungen ............................ 8
4.2. Lauffaehigkeit von Anwenderprogrammen ............... 8
4.3. Verfuegbarer RAM .................................... 8
4.4. Tastatureingaben .................................... 9
4.5. Bildschirmausgaben .................................. 9
4.6. Diskzugriffe ........................................ 9
4.7. Systemuhr ........................................... 11
4.8. Systemdiskette ...................................... 11
4.9 DCP-Kommandos ....................................... 12
5. WDOS-Test-Version ................................... 13
6. Hardware-Testprogramm sa.diags ...................... 13
Anlagen zur Anlage 4
1. WDOS-Dokumentation
2. Quellprogramm cpu2.c
3. Quellprogramm wdos.c
4. Quellprogramm wm.c
5. Quellprogramme fuer das BIOS
6. Quellprogramme fuer die DOS-Programme
.DE
.bp
.NH
Einleitung
.LP
WDOS gestattet die Benutzung von PCDOS bzw. MSDOS und kompatiblen
Betriebssystemen, wie DCP, unter WEGA. Fuer diese Betriebssysteme
wird im folgenden die Bezeichnung DCP verwendet. Mit WDOS
wird auf dem P8000 eine Teilkompatibititaet zu DCP realisiert.
Fuer die Benutzung von WDOS sind im
P8000 die U80601-Erweiterungskarten (CPU-Karte / 1 MByte RAM-Karte)
erforderlich. Auf dem P8000 muss WEGA Version 3.1 oder hoeher
laufen.
.LP
Fuer die Abarbeitung der meisten DCP-Anwenderprogramme ist nur
das P8000/WDOS-Terminal mit DCP-kompatibler Betriebsart geeignet.
.LP
Das Betriebsystem DCP meldet sich auch mit dem alten P8000-Terminal
in der ADM31-kompatiblen Betriebsart.
Einige Anwenderprogramme sind ebenfalls lauffaehig.
Da aber fuer diesen Terminaltyp z.B. keine
Funktionstasten, kein erweiterter Zeichensatz und kein simulierter
Bildwiederholspeicher zur Verfuegung stehen, ist nur eine stark
eingeschraenkte Arbeit moeglich.
.LP
Die wesentlichen Bestandteile von WDOS sind das WDOS-Menueprogramm
wm, das Koppelprogramm wdos, der WDOS-Treiber cpu2 im WEGA-Kern
und das ROM-BIOS. Koppelprogramm, Treiber und ROM-BIOS bilden
in Verbindung mit den Erweiterungskarten
die WDOS-Umgebung, in der das Betriebssystem DCP sowie die
Anwenderprogramme ablaufen koennen.
.LP
WDOS arbeitet mit Programmen und Dateien,
die im DCP-Format abgespeichert sind. Es ermoeglicht dem Nutzer,
Dateien zu lesen oder zu schreiben, die z.B. auf dem
A7150 oder EC1834 unter DCP erstellt wurden und erlaubt, viele unter
DCP ausfuehrbare Programme ohne Aenderung abzuarbeiten. Programme, die
Grafikausgaben enthalten, und Programme, die direkt auf die Hardware
zugreifen, sind jedoch nicht lauffaehig.
.LP
WDOS simuliert mit einfachen
Hardware-Mitteln eine Personal-Computer-Umgebung.
Eine vollstaendig kompatible Umgebung steht nicht zur Verfuegung.
Somit kann auch keine Garantie fuer die Lauffaehigkeit von speziellen
Programmen uebernommen werden.
.LP
Unter WDOS laufen die DCP-Programme in Echtzeit ab.
Auf den Erweiterungskarten wird dazu das unveraenderte
Betriebssystem DCP gestartet. Es ergibt sich jedoch
die Einschraenkung, dass nur ein WEGA-Nutzer zur gleichen Zeit
DCP abarbeiten kann.
.LP
Die 1 MByte-RAM-Karte kann von WEGA auch als RAM-Disk benutzt werden. Die
Abarbeitung von Programmen unter DCP ist dann jedoch nicht moeglich.
.LP
.NH
Komponenten von WDOS
.NH 2
WDOS-Treiber cpu2 im WEGA-Kern
.LP
Im Betriebssystem WEGA ist in Verbindung mit der CPU U8001 ein
Schutzmechanismus realisiert, der verhindert, dass Anwenderprogramme
direkt auf Systemressourcen zugreifen koennen.
Nur der WEGA-Kern laeuft im Systemmode des U8001 und verfuegt damit
ueber den vollen Befehlssatz der CPU. Alle anderen Programme laufen
im User-Mode. Im User-Mode koennen die priviligierten Befehle des U8001
(z.B. E/A-Befehle) nicht benutzt werden. Dadurch koennen z.B.
(fehlerhafte) Anwenderprogramme nicht den WEGA-Kern zerstoeren.
.LP
Fuer die Bedienung der Erweiterungskarten wurde der Treiber cpu2
fuer die Einbindung in den WEGA-Kern entwickelt. Zusaetzlich wurden
in einigen weiteren Kernmodulen (event.s mch.s trap.c prf.c) geringe
Erweiterungen noetig.
.LP
Der Treiber cpu2 simuliert in Verbindung mit dem "ROM"-BIOS fuer
die CPU2 die peripheren Geraete Tastatur, Bildschirm, Harddisk,
Floppydisk, Drucker und Echtzeit-Uhr.
.LP
Die Kommunikation mit der CPU2 wird ueber DUAL-PORT-RAM
und ueber Interrupts realisiert. Der Treiber realisiert weiterhin
die RESET-Steuerung fuer die CPU2.
.LP
Der Treiber realisiert folgende Kommunikationsaufgaben:
.IP 1.
Tastatureingaben von WEGA zur CPU2
.IP 2.
Bildschirmausgaben von der CPU2 zu WEGA
.IP 3.
Druckerausgaben von der CPU2 zu WEGA
.IP 4.
Diskzugriffe fuer die CPU2
.IP 5.
Zugriff fuer WEGA auf die 1 MByte RAM der Erweiterungskarten
.IP 6.
Realisierung einer Echtzeit-Uhr fuer CPU2
.LP
Fuer die Benutzung des Treibers sind im Directory /dev von
WEGA folgende Geraete-Eintraege erforderlich:
.DS L
Name Art Major Minor Zweck
---------------------------------------------------------------------
/dev/cpu2tty c 4 1 U80601-Terminal
/dev/cpu2lp c 4 2 U80601-Drucker
/dev/cpu2disk c 4 3 U80601-Disk-Request
/dev/cpu2rram c 4 0 U80601-RAM-raw-Interface
(Diskdaten)
/dev/cpu2ram b 4 0 U80601-RAM-Blockinterface
(1 MByte RAM-Disk fuer WEGA)
.DE
Der Treiber cpu2 darf nur vom WEGA-Koppelprogramm wdos benutzt werden.
Eine Ausnahme bildet /dev/cpu2ram. Ueber diesen Geraete-Eintrag
koennen die 1 MByte RAM der Erweiterungskarten von WEGA als RAM-Disk
benutzt werden.
.LP
Um die Groesse des Treibers und die Belastung fuer die Haupt-CPU klein
zu halten, realisiert der Treiber nur die Vermittlung von Daten
zwischen WEGA und der CPU2 in Bloecken von 1 bis 800hex Bytes. Alle
erforderlichen Konvertierungen muessen durch die CPU2 erfolgen.
.LP
.NH 2
WDOS-Koppelprogramm wdos
.LP
Durch Start des Koppelprogramms wega stellt der Anwender die
Verbindung zur CPU2 her. Das Programm fuehrt folgende
Initialisierungen aus:
.IP 1.
Laden des "ROM"-BIOS bios bzw. bios.p8, in Abhaengigkeit
der Umgebungsvariable TERM
.IP 2.
Setzen des Terminaltreibers tty in den Raw-Mode
.IP 3.
P8000/WDOS-Terminal in den WDOS-Mode schalten
.br
(Tastatur liefert SCAN-Code, Bildschirm realisiert
abgeruesteten 8-Bit-Zeichensatz)
.IP 4.
Initialisierung der Signalbehandlung
.IP 5.
Aufheben von Reset fuer die CPU2
.LP
Anschliessend teilt sich das Programm in 4 Prozesse, die
jeweils die verschiedenen Kommunikationsaufgaben
realisieren:
.IP 1.
Tastatureingaben von WEGA zur CPU2
.br
(Read von Treiber tty, Write zu cpu2tty)
.IP 2.
Bildschirmausgaben von der CPU2 zu WEGA
.br
(Read von Treiber cpu2tty, Write zu tty. Um eine
schnelle Ausgabe der Zeichen zu erzielen, werden
alle Ausgabezeichen durch die CPU2 aufbereitet. Die
Haupt-CPU kopiert nur Bloecke von 1 bis max. 800 hex Bytes.)
.IP 3.
Druckerausgaben von der CPU2 zu WEGA
.br
(Read von Treiber cpu2lp, Write zum Druckertreiber, Druckerspooler
oder in eine Datei)
.IP 4.
Diskzugriffe fuer die CPU2
(Read/Write von/zu cpu2disk und cpu2rram, Zugriff
erfolgt auf reale Harddisk-Partition, Floppy-Disk,
Pseudoharddisks und Pseudo-Floppy-Disks)
.LP
.NH 2
WDOS-Menueprogramm wm
.LP
Zur einfacheren Handhabung des Programmsystems WDOS,
wurde auf Basis der SCREEN/CURSES-Bibliothek ein
Menueprogramm realisiert. Dieses Programm gestattet
die Verwaltung der verschiedenen Diskarten, die Konvertierung
von Dateien von/nach WEGA,
die Steuerung der Druckerausgaben und den Start von DCP.
.LP
.NH 2
"ROM"-BIOS
.LP
Das "ROM"-BIOS ist die Schnittstelle der Software zur Hardware
des Rechners. Alle Ein-/Ausgabefunktionen, die Systemuhr, verschiedene
andere Dienste und der Start des Boot-Vorganges sind hier
enthalten. Das BIOS befindet sich am Ende des 1 MByte Speicherbereiches
der CPU2.
.LP
Bei WDOS ist das BIOS jedoch nicht in PROM's enthalten,
sondern wird von der Haupt-CPU (U8001) in den RAM der Erweiterungskarten
geladen. Das BIOS realisiert die Kommunikation mit WEGA.
.LP
Das BIOS wurde mit Hilfe des WEGA-Cross-Assemblers fuer den
K1810WM86 erstellt. Es setzt sich aus folgenden Modulen
zusammen:
.IP 1.
bios.asm - Boot, Uhr u.a. Funktionen
.IP 2.
dseg.asm - Datensegment, Interrupttabelle
.IP 3.
term.asm - Terminalinterface fuer P8000/WDOS-Terminal
.IP 4.
termp8.asm - Terminalinterface fuer (altes) P8000-Terminal
.IP 5.
disk.asm - Diskinteface
.IP 6.
orgs.asm - Systemeinspruenge, Kommunikationsbereich zu WEGA
.NH
DOS-Programme
.LP
Auf Basis von Quellprogrammen der TU Karl-Marx-Stadt
wurden auf dem P8000 Programme implementiert, die
von WEGA aus, den Zugriff auf DCP-Disketten,
DCP-Harddisks, DCP-Pseudodisketten und -harddisks
ermoeglichen. Fuer diese Programme sind die
U80601-Erweiterungskarten nicht erforderlich. Diese
Programme werden unabhaengig von WDOS mit der
WEGA Version 3.1 vertrieben. Diese Programme koennen
auch vom WDOS-Menueprogramm aus aufgerufen werden.
Folgende Programme stehen zur Verfuegung:
.IP 1.
dosdir - DCP-Directory im DCP-Format anzeigen
.IP 2.
dosls - DCP-Directory im WEGA-Format anzeigen
.IP 3.
doscp - Kopieren von Dateien zwischen DCP und WEGA
.IP 4.
doscat - DCP-Dateien ausgeben
.IP 5.
dosrm - DCP-Dateien loeschen
.IP 6.
dosmkdir - DCP-Directory erstellen
.IP 7.
dosrmdir - DCP-Directory loeschen
.IP 8.
dosformat - DCP-Diskette formatieren
.LP
.bp
.NH
Ergebnisse der WDOS-Implementation
.LP
In diesem Kapitel sind wichtige Unterschiede und Besonderheiten
bei der Abarbeitung von DCP unter WEGA aufgefuehrt.
.LP
.NH 2
Hardware-Voraussetzungen
.LP
Fuer die Abarbeitung von DCP unter WEGA sind zwei U80601-Erweiterungskarten
(CPU-Karte und 1MByte-RAM-Karte) im P8000 erforderlich, die
auf 2 Slots der 16-Bit-Rechnerkarte im P8000 gesteckt werden. WDOS
realisiert mit diesen Karten eine PC-Umgebung, die jedoch nicht
vollstaendig PC-kompatibel ist. Als Terminal muss ein spezielles
P8000/WDOS-Terminal mit 25 Bildschirmzeilen und Flachtastatur eingesetzt
werden. Dieses Terminal besitzt eine PC-kompatible Betriebsart.
In dieser Betriebsart liefert die Tastatur anstelle der ASCII-Zeichen
einen SCAN-Kode und die Bildschirmansteuerung realisiert die
meisten Zeichen des erweiterten ASCII-Zeichensatzes.
.LP
.NH 2
Lauffaehigkeit von DCP-Programmen
.LP
Auf den U80601-Erweiterungskarten steht keinerlei Hardware zur
Verfuegung, die direkt E/A-Geraete oder andere PC-kompatible
E/A-Ports ansprechen kann. Anwenderprogramme duerfen daher
keine In- und Out-Befehle enthalten. Alle Zugriffe auf
periphere Geraete duerfen nur ueber das Betriebssystem oder
das BIOS erfolgen. Eine Ausnahme bilden Bildschirmausgaben.
Anwenderprogramme duerfen direkt in einen simulierten
Bildwiederholspeicher schreiben. Es ist aber nur ein alphanumerischer
Mode (entsprechend der MDA-Karte) realisiert.
Alle Programme, die Grafikausgaben enthalten und
auf Bildschirmkarten wie CGA, EGA ... angewiesen sind, koennen
unter der WDOS-Umgebung nicht benutzt werden.
.LP
In der WDOS-Umgebung stehen 1 Systemkonsole (Tastatur/Bildschirm),
1 Drucker, max. 4 (Pseudo-)Floppy-Disk-Laufwerke und max.
2 (Pseudo-)Harddisk-Laufwerke zur Verfuegung. Serielle Schnittstellen
sind nicht vorhanden.
.LP
.NH 2
Verfuegbarer RAM
.LP
Dem Betriebssystem DCP und den Anwenderprogrammen stehen unter WDOS
von 0 bis 9ffff 640 KByte RAM zur Verfuegung, sowie zusaetzlich von
A0000 bis Affff weitere 64 KByte (in diesem Bereich liegt bei
einem normalen PC die Grafikkarte). Im Bereich von B0000 bis B1fff wird
von WDOS eine Monochrom-Bildschirmkarte simuliert. Der Bereich
von F0000 bis Fffff ist fuer das "ROM"-BIOS reserviert. Der
Bereich von B2000 bis Effff ist zur Zeit frei und kann unter DCP z.B. fuer
einen vom Anwender geschriebenen RAM-Disk-Treiber benutzt werden.
.LP
.NH 2
Tastatureingaben
.LP
Die Tastatur ist PC-kompatibel und liefert einen SCAN-Kode.
Unter DCP darf kein zusaetzlicher Tastaturtreiber installiert
werden, da dieser direkt auf die Hardware zugreift.
.LP
.NH 2
Bildschirmausgaben
.LP
Im 1 MByte RAM wird eine Monochrom-Karte simuliert. Diese besitzt
nur einen alphanumerischen Mode mit 25 Zeilen zu 80 Zeichen und
einer Seite.
Anwenderprogramme koennen direkt diesen
"Bildwiederholspeicher" beschreiben. Durch das "ROM"-BIOS wird
der Bildwiederholspeicher mit einem zweiten Abbild verglichen und
die Differenzen zum Terminal ausgegeben. Das Terminal besitzt bezueglich
der erweiterten ASCII-Zeichen und der VIDEO-Attribute Einschraenkungen.
Fast alle VIDEO-BIOS-Requests schreiben die Zeichen zuerst in den
"Bildwiederholspeicher". Eine Ausnahme bildet der
WRTIE-TTY-Request (0eh). Hier erfolgt die Ausgabe direkt zum
Terminal. Somit koennen auch ESC-Folgen (ADM31-kompatibel) ausgegeben
werden. Das Betriebssystem DCP benutzt in der Regel diesen BIOS-Request.
.LP
Unter WDOS kann in DCP auch der Bildschirmtreiber "ANSI.SYS" installiert werden.
Mit diesem Treiber werden ANSI-kompatible ESC-Folgen wirksam und die
Ausgaben werden zuerst in den "Bildwiederholspeicher" geschrieben.
Der Vergleich der "Bildwiederholspeicher" kostet aber Zeit und die Ausgabe der
Zeichen ist daher etwas langsamer als die direkte Ausgabe zum Terminal.
.LP
Bei Verwendung des CP/M-Emulators EM80 fuer DCP
(gehoert nicht zum Lieferumfang von WDOS)
sollte ANSI.SYS nicht installiert werden. OS/M-Programme, wie TP, sind
fuer das P8000-Terminal installiert und dann mit EM80 in der WDOS-Umgebung
sofort lauffaehig.
.LP
.NH 2
Diskzugriffe
.LP
Das Betriebssystem DCP erkennt durch Informationen im Urlader jeder
Diskette das entsprechende Format der Diskette und stellt sich
logisch darauf ein. Es kann aber bei realen Disketten nicht das
physische Format des Floppy-Disk-Treibers (im WEGA-Kern) beeinflussen.
Achten Sie bitte daher beim "Mounten" von realen Laufwerken im WDOS-Menue
darauf, dass das Format mit dem Diskettenformat uebereinstimmt.
.LP
DCP ermittelt beim Systemstart das physische Format seiner
Floppy-Disk-Laufwerke. Das Laufwerksformat ist aber
nur beim Formatieren von Disketten von Bedeutung. Es hat keinen
Einfluss beim Erkennen von Diskettenformaten. DCP erkennt z.B.
eine 720 KByte Diskette in einem 360 KByte Laufwerk.
Fuer die "physischen" Laufwerke
E: und F: wird das Laufwerksformat mit der Aktivierung
des Treibers DRIVER.SYS festgelegt
(Standardeinstellung: 720 KByte
Laufwerke). Fuer die Laufwerke A: und B: wird das physische
Format aus dem "ROM"-BIOS ermittelt. Ist im Laufwerk A: eine
1,2 MByte-Pseudo-Systemdiskette eingelegt, liefert das "ROM"-BIOS
die Werte fuer 1,2 MByte Laufwerke ohne Disk-Change-Signal,
sonst fuer 720 KByte Laufwerke ohne Disk-Change-Signal. Durch Fehlen
dieses Signals setzt nur PCDOS das richtige Laufwerksformat. MSDOS und
DCP stellen stets 360 KByte Laufwerke ein. Durch folgende Eintraege in die
Datei CONFIG.SYS kann das Laufwerksformat auf 720 KByte eingestellt
werden:
.DS L
drivparm=/d:0
Drivparm=/d:1
.DE
Mit drivparm lassen sich aber auch anderer Formate einstellen.
.LP
Das Disk-Change-Signal dient zum automatischen Erkennen von Diskettenwechseln.
Es wird von den (Pseudo-)Laufwerken nicht bereit gestellt. Das Signal kann
aber vom "ROM"-BIOS simuliert werden. Der Parameter /C von DRIVER.SYS und
DRIVPARM aktiviert das Signal. DCP fuehrt dann weniger Diskettenzugriffe
aus. Beachten Sie jedoch, dass dann ein Diskettenwechsel in einem
Laufwerk nur noch moeglich ist, wenn zuvor ein Zugriff auf ein anderes
Laufwerk erfolgte, z.B. mit dem Kommando DIR. Ein Wechsel des
aktuellen Laufwerks mit dem Kommando CD reicht nicht aus.
.LP
Zum Zugriff auf CP/M-Disketten und speziellen DOS-Disketten koennen
die Treiber CDRIVE.SYS und MDRIVE.SYS (nicht im Lieferumfang von WDOS)
installiert werden. Es koennen aber nur die physischen Formate angesprochen
werden, die in der WDOS-Umgebung zur Verfuegung stehen. Die Treiber
muessen so installiert werden, dass der Floppy-Disk-Treiber des
"ROM"-BIOS benutzt wird, z.B.:
.DS L
device=cdrive.sys -rah -u1 -g
device=mdrive.sys -rah -u1
.DE
In der WDOS-Umgebung wird von den DISK-BIOS-Requests FORMAT und
VERIFY keine Funktion ausgefuehrt. Es wird die erfolgreiche
Ausfuehrung der Funktion angezeigt.
Somit koennen Kommandos wie FORMAT zum logischen Formatieren benutzt
werden. Physisch koennen reale Disketten direkt unter WEGA oder
vom WDOS-Menue aus formatiert werden.
.NH 2
Systemuhr
.LP
Beim Start von DCP werden die Anfangswerte fuer Datum und Zeit von WEGA
uebernommen. Im "ROM"-BIOS ist eine Echtzeituhr realisiert. Diese erhaelt
vom WEGA-Kern Clock-Impulse mit einer Frequenz von 10Hz. Beim verlassen
von DCP wird die Uhr gestoppt. Wird anschlissend die Arbeit in
DCP ohne Neustart fortgesetzt (Kommando r im WDOS-Menue bzw. wdos -r in WEGA)
geht die Uhr nach.
.NH 2
Systemdiskette
.LP
Im Lieferumfang von WDOS ist die Pseudosystemdiskette wdos_sys
enthalten. Als Systemdiskette kann aber auch eine reale Systemdiskette
eines PC-kompatiblen Rechners benutzt werden. Folgende Systemdisketten
wurden in der WDOS-Umgebung getestet:
.DS L
- Systemdiskette DCP 3.20 fuer A7150
- Systemdiskette PCDOS 3.20 fuer IBM-PC
- Systemdiskette PCDOS 3.30 fuer IBM-PC
- Systemdiskette MSDOS 3.20 fuer Schneider-PC
.DE
Vor Verwendung einer fremden Systemdiskette, ist die Datei
CONFIG.SYS dieser Diskette zu Ueberpruefen. Diese Datei darf keine
Treiber aktivieren, die das "ROM"-BIOS umgehen. Deshalb sollten zuerst
alle Zeilen mit
.DS L
device=...
.DE
entfernt werden.
.LP
Folgende Eintraege in der Datei CONFIG.SYS sind fuer die Arbeit in der
WDOS-Umgebung guenstig aber nicht unbedingt erforderlich:
.DS L
drivparm=/d:0 ... (Format fuer Laufwerk A: setzen)
drivparm=/d:1 ... (Format fuer Laufwerk B: setzen)
device=driver.sys /d:4 ... (Laufwerk E: aktivieren)
device=driver.sys /d:5 ... (Laufwerk F: aktivieren)
.DE
Auf jeder Systemdiskette befindet sich ein "Disketten"-BIOS. Probleme
mit fremden Systemdisketten koennen entstehen, wenn dieses BIOS
direkt die Hardware anspricht. Das "Disketten"-BIOS koennte z.B. in
Abhaengigkeit der Version und des Datums des "ROM"-BIOS bestimmte
Treiber des "ROM"-BIOS ersetzen.
.LP
Bei der Installation einer DCP-Harddisk sind keine Besonderheiten
zu beachten. Sie erfolgt mit den Programmen FDISK, FORMAT und
COPY.
.LP
.NH 2
DCP-Kommandos
.LP
Folgende Kommandos funktionieren in der WDOS-Umgebung nicht:
.IP CTTY 10
Definition Primaerkonsole
.IP MODE
Einstellen Geraetemodus
.IP SELECT
Einstellen nationale Besonderheiten
.IP GRAFTABL
Laden zweiter grafischer Zeichensatz
.IP GRAPHICS
Vorbereiten grafische Print-Screen-Funktion
.IP KEYBxx
Ersetzten Tastaturprogramm
.LP
Bei folgenden Kommandos sind Einschraenkungen zu beachten:
.IP DISKCOPY 10
Physisches Kopieren von Disketten
.br
Unter WDOS ist das physisches Formatieren der Zieldiskette nicht moeglich.
.IP FORMAT
Formatieren von Disketten
.br
WDOS gestattet nur das logisches Formatieren von Disketten.
720 KByte "Laufwerke" gestatten nur das logische Formatieren
dieses Formats. "High-Density-Laufwerke"
gestattet das logische Formatieren von 1,2 MByte Pseudodisketten
und von 40-spurigen Disketten.
Physisch koennen
Disketten im WDOS-Menue oder direkt unter WEGA formatiert werden.
.LP
Das folgende intene Kommando dient zum Aendern der Parameter der internen
Laufwerke. In vielen Dokumentationen ist es nicht beschrieben:
.DS L
DRIVPARM=/D:ddd [Schalter]
Schalter:
/D:ddd logische Geraetenummer (0...255)
/F:f Geraetetyp (0=160/180,320/360k, 1=1,2M, 2=720k)
(Standard 720k)
/T:ttt Spuren pro Seite (Standard 80)
/S:ss Sektoren pro Spur (Standard 9)
/H:hh Koepfe (Standard 2)
/C Test auf Diskettenwechsel
/N nichtwechselbare Magnetplatte
.DE
.NH
WDOS-Testversion
.LP
Zur Inbetriebnahme der U80601-Erweiterungskarten wurde eine
WDOS-Testversion erstellt. Diese Version beinhaltet ein
modifiziertes Koppelprogramm und ein modifiziertes "ROM"-BIOS.
Die Test-Version dient vor allem zur Ueberpruefung der
Funktionsfaehigkeit der 1 MByte RAM der Erweiterungskarten
(DUAL-PORT-RAM) bei gleichzeitigem staendigen Zugriff durch
Haupt-CPU und CPU2.
.NH
Hardware-Testprogramm sa.diags
.LP
Das Hardware-Diagnoseprogramm sa.diags wurde um die Testschritte
zur Funktionspruefung der WDOS-Erweiterungskarten erweitert.
Die Testschritte entsprechen im wesentlichen der Testsoftware
des WDOS-Funktionspruefplatzes. Folgende Testschritte wurden realisiert:
.IP 1.
Test des MP600-RAM (1MByte) vom U8000 aus
.IP 1.1.
Alle Segmente werden mit einem Bytemuster vollstaendig beschrieben.
Regeln fuer die Mustererzeugung:
.br
- laenge l des Musters mit l <> 2^x, x e N = (0,1,2,3,...)
.br
(es wurde die Laenge l=17 gewaehlt)
.br
- Die Musterbytes muessen voneinander verschieden sein.
.IP 1.2.
Vergleich der beschriebenen Segmente mit dem Soll-Bytemuster.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.IP 2.
Paritaetstest des MP600-RAM durch den U8000
.IP 2.1.
Die Segmente %70 bis %7f (MP600-RAM) werden mit einem beliebigen
Muster gefuellt.
.IP 2.2.
Die Segmente werden Byte fuer Byte gelesen und dabei die Merkzelle
fuer Paritaets-NMI getestet.
.br
Fehler: Fehlernummer, Adresse, Ist-Daten
.IP 3.
Anlauf des MP600
.IP 3.1.
Der U8000 laedt ein kurzes Anlaufprogramm fuer den MP600 in den
MP600-RAM und loescht einen Kommunikationsbereich. Es wird eine
Transferkontrolle durchgefuehrt.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.IP 3.2.
Der U8000 setzt das RESET fuer den MP600 zurueck. Der MP600 beginnt mit
der Befehlsabarbeitung und fuehrt folgende Befehle aus:
.DS
MOV AX,CS
MOV DS,AX ;DSEG=CSEG=F000H
MOV AX,returncode
MOV RETCODE,AX ;Returncode im Kommunikations-
;bereich ablegen
HLT
.DE
(siehe dazu auch asm86-Listing 'MP600 TEST3')
.IP 3.3.
Der U8000 wartet ca. 1 ms und ueberprueft den uebergebenen Returncode.
.br
Fehler: Fehlernummer, Soll-Code, Ist-Code
.IP 4.
INT-Verkehr U8000 <--> MP600
.IP 4.1.
Vom U8000 werden ein INT-Initialisierungsprogramm, zwei
Interrupt-Service-Routinen (dienen dem Test des INT-Vektors) und eine
INT-Vektor-Tabelle fuer dem MP600 in seinen RAM geladen.
Es erfolgt wiederum ein Kontrollesen der uebertragenen Programmteile.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.IP 4.2.
Der U8000 setzt das RESET-Signal des MP600 zurueck.
.br
* Der MP600 initialisiert sich fuer VINT
.br
* Meldung der erfolgreichen Initialisierung an den U8000, durch
laden des Quittungsbytes 2 in den Kommunikationsbereich.
.br
* MP600 geht in den HALT-Zustand
.IP 4.3.
Der U8000 wartet ca. 1 ms und ueberprueft dann das Quittungsbyte 2 fuer
eine erfolgreiche INT-Initialisierung.
.br
Fehler: Fehlernummer, Soll-Code, Ist-Code
.IP 4.4.
U8000 sendet 256 Interrupts mit verschiedenen Vektoren (1,2,3,...,255,0) an
den MP600. In der INT-Vektor-Tabelle wird vor jedem INT, der Zeiger auf
die ISR1, auf den Tabellenplatz des naechsten Vektors geladen. Alle
anderen Zeiger in der INT-Vektor-Tabelle zeigen auf die ISR2. Diese
wird dann nur bei einem fehlerhaft gelesenen Vektor angesprungen.
Nach Ausloesung eines INT durch den U8000 springt der MP600 in die ISR1.
Dort wird der Stackpointer zurueckgesetzt, ein Quittungsbyte 3 fuer den
korrekten Ansprung der ISR uebergeben und ein NVI (nichtvektorisierter INT)
an den U8000 gesendet (durch OUT-Befehl). Danach geht der MP600 in den
HALT-Zustand und wartet auf den naechsten Interrupt.
.IP 4.5.
Nachdem der U8000 einen INT an den MP600 sendete, wartet er ca. 1 ms und
ueberprueft dann das Quittungsbyte 3 und seinen eigenen NVI-Status durch
kontrollieren einer Merkzelle.
.br
Fehler: Fehlernummer fuer falsches Quittungsbyte oder kein NVI.
.IP 5.
RAM-Test vom MP600 aus
.IP 5.1.
Der U8000 laedt ein RAM-Testprogramm fuer den MP600 mit Transferkontrolle.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.IP 5.2.
Der U8000 setzt das RESET-Signal fuer den MP600 zurueck und der MP600
fuellt den 1MByte RAM mit einem vorgegebenen Datenmuster und der jeweiligen
Segmentnummer.
.IP 5.3.
Der U8000 wartet ca. 1 s und testet danach den RAM des MP600 auf das richtig
Eingetragene Datenmuster.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.IP 6.
gemeinsamer Speicherzugriff
.IP 6.1.
Der U8000 laedt ein Programm fuer den MP600 mit Transferkontrolle.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.IP 6.2.
Der U8000 setzt das RESET-Signal fuer den MP600 zurueck und der MP600
arbeitet sein Programm im Block %0f ab und greift auf Bloecke %00 bis %0e
zu (schreiben lesen).
.IP 6.3.
Der U8000 greift gleichzeitig auf die Bloecke %00 bis %0E zu (schreiben
lesen).
.IP 6.4.
Danach testet der U8000 den RAM auf korrekten Dateninhalt.
.br
Fehler: Fehlernummer, Adresse, Soll-Daten, Ist-Daten
.LP