.. Ausdruck mit Zeilenabstand=10, Linker Rand=12 auf A5-Format
Beschreibung der Version 2.1 von DEP.COM Mario Leubner
様様様様様様様様様様様様様様様様様様様様
Die vorliegende Beschreibung der neuen DEP-Version soll als Ergnzung
der Schnittstellenbeschreibung von DEP im "Handbuch fr den Program-
mierer" dienen. Die Version 2.1 von DEP.COM entstand durch Weiterent-
wicklung einer Idee von Uwe Felgentreu. Ihm danke ich auch fr die
bersendung des Quelltextes DEP.MAC und der Ausfhrungen zu MicroDOS.
Die nachfolgende Dokumentation habe ich ebenfalls von ihm bernommen und
entsprechend bearbeitet und erweitert.
Mehrere Diskettenlaufwerke unter CAOS
様様様様様様様様様様様様様様様様様様
Wer hat sich das noch nicht gewnscht: Ein zweites Laufwerk ist inzwi-
schen problemlos zu beschaffen. MicroDOS lt die Installation einfach
und schnell mit MSYSG.COM zu. Aber beim Programm CAOSDISK zeigten sich
die Mhlhausener Entwickler etwas einfallslos. Im Ergebnis unserer Ar-
beit entstanden eine Reihe von Dateien, die zum Lieferumfang des neuen
CAOS-Systems gehren. Hervorzuheben ist das Programm SYSCOPY.COM. Dieses
Programm macht MSYSG.COM fast berflssig. Das Installieren ist nur noch
einmal ntig. Das Kopieren der Systemspuren ist dann unter MicroDOS pro-
blemlos mglich (siehe unten). SYSCOPY ist in 'C' geschrieben und als
Quelltext auf Anfrage von Uwe Felgentreu erhltlich. 'C' ist unter
MicroDOS auf dem KC85 lauffhig!
Zum besseren Verstndnis der Vernderungen am CAOS-MicroDOS folgen eini-
ge allgemeine Erluterungen: Beim PC-Start wird aus den Spuren 0 und 1
der 780k-Systemdiskette MicroDOS geladen und Adresse 9000H im TPA des
D004-Aufsatzes angesprungen. Dort steht flchtig eine Initroutine, die
den 80-Zeichen-Mode des Bildschirms und eine ganze Reihe von Treibern in
das Grundgert bertrgt. Dann folgt ein Warmstart und CP/M (MicroDOS)
ist betriebsbereit. Bei CAOS-Disketten liegt in den Spuren 0 und 1 ein
modifiziertes CP/M-Betriebssystem vor. Der Ladevorgang ist der gleiche
wie in der PC-Betriebsart. Nur steht nun in der INITIAL.SUB-Datei der
Befehl zum Laden/Starten von DEP.COM. Smtliche Treiber der PC-Betriebs-
art werden nicht ins Grundgert bertragen, da dort schon CAOS-Treiber
vorliegen. DEP.COM fhrt ber ESCAPE "EXIT" einen Rcksprung zum CAOS
aus. Nun sind wir wieder in der CAOS-Menschleife, whrend im Hinter-
grund im D004 das Programm DEP.COM unter MicroDOS luft. ber den
Koppel-RAM findet nun der Datenaustausch von und nach MicroDOS statt.
.PA
Vernderungen an DEP.COM:
陳陳陳陳陳陳陳陳陳陳陳陳
DEP.COM wurde reassembliert und so erweitert, da nun ber ein zweites
Steuerbyte im Koppel-RAM die Laufwerk- und USER-Steuerung luft. Der
D004-RAM, der nach DEP.COM bis zum TPA-Ende bisher ungenutzt war, wird
jetzt als RAM-Floppy verwaltet. Das mit 'A' aufzurufende Laufwerk umfat
eine Kapazitt von 46 KByte bei einer Organisation von 47 Blcken zu je
1 KByte. Der erste Block ist vom Directory belegt, das 32 Eintrge zu-
lt. Auerdem wird mit dem neuen DEP eine Fehleranzeige im Klartext
mglich. Bei auftretenden Fehlern wird neben der Fehlernummer auch ein
kurzer Fehlertext im Koppel-RAM bereitgestellt. Fr Programme, die die
neuen Leistungen nutzen wollen, ist es weiterhin mglich, die Versions-
nummer des DEP im Koppel-RAM abzufragen. Wenn bei einer Directory-Anfor-
derung keine Datei gefunden wird, so gibt das neue DEP "keine Datei" zu-
rck. Dies ist jetzt besonders wichtig, da im RAM-Laufwerk oder auf an-
deren User-Bereichen oft keine Dateien vorhanden sind. In der STAT-Mel-
dung wird als erstes das Laufwerk und der User-Bereich ausgegeben. Bei
jeder Operation mit gesetztem "open"-Bit wird das Diskettensystem
zurckgesetzt um einen eventuellen Diskettenwechsel zu erfassen. DEP in
der Version 2.1 ist aufwrtskompatibel zur Originalversion von Mhl-
hausen, d.h. Programme, die die alte DEP-Schnittstelle nutzen, laufen
ohne nderung auch mit dem neuen DEP.
Erstellen einer neuen CAOS-Diskette/Laufwerkinstallation:
陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳
Vor Nutzung der Laufwerkfunktionen des neuen DEP, mu eine CAOS-Diskette
mit der gewnschten Laufwerkinstallation erstellt werden. Das MicroDOS
der PC-Betriebsart und das der CAOS-Betriebsart sind fast identisch. Es
liegt zwar ein Speicherversatz um 100H gegenber der PC-Version vor,
aber die BDOS- und BIOS-Rufe sind voll funktionsfhig! Also auch der
Laufwerkwechsel, soweit mehrere Laufwerke installiert sind.
Wie erstelle ich mir eine neue CAOS-Diskette, wo ja nun CAOSDISK nicht
mehr dazu geht? (An ein neues CAOSDISK.COM mit Laufwerkinstallation und
weiteren Leistungen ist zwar schon gedacht, aber vorerst hinter anderen
Projekten etwas zurckgestellt.)
1. PC-Betriebsart starten
2. Formatieren einer 780k-Diskette mit FORMAT.COM
3. berspielen folgender Programme auf die neue Diskette:
# DEP.COM neue Version !!!
# INITIAL.SUB
# Treiber BASEX, DEVEX, TEXOREX, FORTHEX ... je nach Bedarf!
# INITIAL.UUU mit CAOS-Startkommandos
4. Die Datei INITIAL.UUU kann entfallen oder auch neu erstellt werden.
Die beiliegende Datei INITIAL.UUU ist nur ein Beispiel fr die KC-
User, die die Mglichkeit der CAOS-Kommandodatei bisher noch nicht
kannten.
5. Nun mu das neue System berspielt werden, dazu gibt es zwei Mg-
lichkeiten:
.PA
5.1 Hat man 2 Laufwerke zur Verfgung, kann man mit SYSCOPY.COM sehr
komfortabel berspielen. Beispiel: Quell-Laufwerk ist B:, Ziel-
Laufwerk ist E:. SYSCOPY.COM kann z.B. auf der RAM-Floppy A: liegen.
Der Aufruf erfolgt mit SYSCOPY B E. Es sind also nur die Buchstaben
ohne den blichen Doppelpunkt ntig.
5.2 Hat man nun nur 1 Laufwerk, so kann man sich mit POWER auch helfen.
POWER.COM laden und dann Diskette mit dem neuen CAOS einlegen. Mit
READ 0 1 4000 160 die Systemspuren einlesen oder das File CAOS21.DOS
mit LOAD CAOS21.DOS 4000 einlesen. Dann die zu bespielende neue
CAOS-Diskette einlegen und mit dem Befehl WRITE 0 1 4000 160 das
neue System in die Systemspuren schreiben.
6. Wird eine andere als die vorgegebene Laufwerkinstallation gewnscht,
dann kann diese ebenfalls mit POWER gendert werden. Dazu die
Systemspuren wie unter 5.2 in den TPA laden und mit dem Kommando DS
die Diskettenparameterblcke so ndern, da sie mit denen der PC-
Systemdiskette bereinstimmen. Speicherversatz beachten! Nachfol-
gende Tabellen knnen dabei zur Hilfe genommen werden. Dann wird das
modifizierte System mit WRITE 0 1 4000 160 wieder in die System-
spuren geschrieben.
浜様用様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様
Lage der Diskettenparameterblcke (DPB) unter ...
LW 団陳陳陳陳陳陳陳堕陳陳陳陳陳陳陳堕陳陳陳陳陳陳陳陳陳陳陳陳陳超
PC-MicroDOS CAOS-MicroDOS POWER (ab 4000H geladen)
把陳津陳陳陳陳陳陳陳津陳陳陳陳陳陳陳津陳陳陳陳陳陳陳陳陳陳陳陳陳陳
A: EDD1H EED1H 6BD1H
B: EDE2H EEE2H 6BE2H
C: EDFEH EEFEH 6BFEH
D: EE1AH EF1AH 6C1AH
E: EE36H EF36H 6C36H
F: EE52H EF52H 6C52H
G: EE6EH EF6EH 6C6EH
H: EE8AH EF8AH 6C8AH
藩様溶様様様様様様様溶様様様様様様様溶様様様様様様様様様様様様様様
浜様用様様様様様様様様様様様様様様様様様様様様様様様様様様様様様様
installierte Laufwerke in CAOS21.DOS (DEP V 2.1)
LW 団陳陳陳陳堕陳陳陳陳陳陳陳陳陳陳陳陳賃陳陳陳陳陳陳陳堕陳陳陳超
Kapazitt physisches Laufwerk Organisation Offset
把陳津陳陳陳陳津陳陳陳陳陳陳陳陳陳陳陳陳陳田陳陳陳陳陳陳津陳陳陳陳
A: 46K RAM-Floppy im TPA (D004) 1024*47 0
B: 780K phys. Laufwerk 0 5*1024*80*2 2
C: 624K phys. Laufwerk 0 16* 256*80*2 2
D: 800K phys. Laufwerk 0 5*1024*80*2 0
E: 780K phys. Laufwerk 1 5*1024*80*2 2
F: 185K phys. Laufwerk 1 5*1024*40*1 3
G: 720K phys. Laufwerk 1 9* 512*80*2 0
H: 780K phys. Laufwerk 2 5*1024*80*2 2
藩様溶様様様様溶様様様様様様様様様様様様様詫様様様様様様溶様様様様
.PA
Laufwerkwechsel:
陳陳陳陳陳陳陳陳
Da fr jede Funktion ein Bit im Steuerbyte reserviert wurde, ist es auch
mglich, Laufwerk und Userbereich mit einer Anforderung zu steuern. Bei
einem Fehler in der Laufwerksforderung wird allerdings der Userbereich
nicht mehr bercksichtigt. Folgende Kombinationen fr das zweite Steuer-
byte sind zu verwenden:
01H Abfrage aktuelles Laufwerk/Userbereich
03H Wechsel des Laufwerks
05H Wechsel des User-Bereiches
07H Wechsel Laufwerk und User-Bereich
Die weiteren mglichen Kombinationen sind noch frei und sollten nicht
benutzt werden.
Fehlererkennung:
陳陳陳陳陳陳陳陳
Das neue DEP.COM ist auch hinsichtlich der Fehlererkennung und
-rckmeldung leistungsfhiger geworden. Die Liste der mglichen
Fehlermeldungen wurde erweitert. Der Fehler wird als Nummer (wie bisher)
und gleichzeitig als Zeichenkette mit maximal 40 Zeichen (eine
Bildschirmzeile im CAOS-Format) im Koppel-RAM bereitgestellt:
敖陳賃陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳
Code Fehlertext
団陳津陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳
00 Datei *.* nicht vorhanden
01 Diskettenfehler allgemein
02 Diskette voll
03 Datei *.* schreibgeschtzt
04 falsches Diskettenformat
08 Dateibezeichnung bereits vorhanden
09 Dateibezeichnung nicht eindeutig
43 Prfsummenfehler (CRC)
49 Indexfehler
52 Laufwerk nicht bereit
53 Diskette schreibgeschtzt
56 ID-Feld-Fehler (falsches Format?)
77 unzulssige Dateibezeichnung
81 Dateiende berschritten
82 Diskette voll
83 Directory voll
84 Falsches Laufwerk
85 Falscher USER-Bereich
undefinierbarer Systemfehler
青陳珍陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳
Anstelle von *.* wird der aktuelle Dateiname zurckgegeben. Die letzte
Fehlermeldung wird bei jedem anderen Fehlercode erzeugt.
.PA
SERVICE-Programme fr die CAOS-Betriebsart:
陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳
Die bekannten Programme FLOAD.KCC, FSAVE.KCC SERVICE.KCC... knnen
selbstverstndlich weiterbenutzt werden. Wer jedoch die neuen Leistungen
der Fehlerausgabe im Klartext nutzen mchte, der sollte auf FLOAD2.KCC,
FSAVE2.KCC, BASEX2.KCC und DIENST.KCC umsteigen. Die Programme sind
funktionskompatibel zu den Vorgngern. FLOAD2 kann aber nicht einfach
mit dem FLOAD, das beim Systemstart auf der Adresse 0 steht auf Adresse
0 geladen werden, da es dann zum Systemabsturz kommt. FLOAD2 sollte
deshalb mit dem Kommando FLOAD im DIENST-Men geladen werden.
Ein neues SERVICE-Programm mit den Namen DIENST.KCC kann die Laufwerk-
Steuerung nun bedienen und dient gleichzeitig zur Demonstration aller
neuen Funktionen. Der Quelltext liegt als DIENST.ASM im Edas-Format vor.
ACHTUNG! DIENST.KCC bentigt im KC den gesamten Speicherbereich von
BA00H bis BFFFH. Wer von BASIC oder anderen MC-Programmen aus die neuen
Leistungen von DIENST nutzen will, kann die Sprungverteiler aus
SERVICE.KCC unverndert weiterbenutzen. Die Ansprungadresse BE00H fr
die Nutzung der Routinen in Anwenderprogrammen gilt weiter, die neuen
Funktionen wurden entsprechend erweitert.
DIENST.KCC hat ein eigenes Men. Es wird mit "DIENST" vom CAOS-Men
aufgerufen und gibt als Prompt das Laufwerk und den User-Bereich aus
(also z.B.: B0>_). Es kann auch mit dem Original DEP.COM gearbeitet
werden, dann wird bei Aufruf der neuen Funktionen eine Fehlermeldung
ausgegeben und als Prompt erscheint **>. Wird nur schnell eine Funktion
von DIENST aus dem CAOS-Men bentigt, so kann DIENST mit Argument
aufgerufen werden. Als Argument ist die Nummer der Funktion (siehe
Tabelle!) als Hexzahl einzugeben. Der Aufruf "DIENST 2" gibt also das
Directory aus, "DIENST C" ruft die DUMP-Funktion auf. Fr FLOAD und
FSAVE ist zu beachten, da hier der Dateiname ab Adresse 0 stehen mu!
In DIENST sind neben DRIVE und USER auch noch DUMP, TYPTP und TYPKC als
neue Leistungen enthalten. Alle Fehler werden in Klartext ausgegeben,
wenn im D004 das neue DEP luft. Zur Verwendung der Fehlertexte kann
DIENST.ASM als Beispiel dienen. Beschreibung der neuen Befehle:
FLOAD Bei selbststartenden Programmen wird gefragt, ob gestartet wer-
den soll.
MENU DIENST-Men ausschreiben
QUIT zurck zum CAOS
USER USER-Bereich whlen
DRIVE Laufwerk whlen
DUMP Anzeige einer Datei im DISPLAY-Format. Die Adresse wird entwe-
der dem CAOS-Vorblock entnommen, bei einer Datei in anderem
Format wird 100H (Ladeadresse im CP/M) angenommen. Abbruch
erfolgt mit Dateiende, dabei wird der Fehler 81 (Dateiende
berschritten) ausgegeben.
TYPTP Texte ohne Vorblock anzeigen (z.B. von TPKC), Steuerzeichen
werden als Control-Codes (z.B. ^C fr 03H) ausgegeben
TYPTX Texte mit CAOS-Vorblock anzeigen (z.B. von Edas, TEXOR),
Steuerzeichen werden als Punkt ausgegeben
.PA
浜様様様様様様様様様様様様様様様様様様様様様様様様様様
Schnittstellenbeschreibung DIENST.KCC
把陳陳陳堕陳陳陳陳陳陳賃陳陳陳陳陳陳賃陳陳陳陳陳陳陳陳
Name: BASIC-Aufruf UP-Nr. (MC) Bemerkungen
把陳陳陳田陳陳陳陳陳陳津陳陳陳陳陳陳津陳陳陳陳陳陳陳陳
FLOAD CALL*D8 0 Name ab Adr. 0
FSAVE CALL*DB 1 Name ab Adr. 0
DIR CALL*DE 2 DIR & STAT
STAT CALL*E1 3 LW & STAT
REN CALL*E4 4 Namen eingeben
SETRO CALL*E7 5 Name eingeben
SETWR CALL*EA 6 Name eingeben
ERA CALL*ED 7 Name eingeben
把陳陳陳田陳陳陳陳陳陳津陳陳陳陳陳陳津陳陳陳陳陳陳陳陳
DRIVE CALL*F0 8 LW eingeben
USER CALL*F3 9 User eingeben
TYPTX CALL*F6 10 Name eingeben
TYPTP CALL*F9 11 Name eingeben
DUMP CALL*FC 12 Name eingeben
藩様様様詫様様様様様様溶様様様様様様溶様様様様様様様様
Belegung des Koppel-RAM:
陳陳陳陳陳陳陳陳陳陳陳陳
Der Koppel-RAM, das heit der 1K-Speicherbereich im D004, der vom KC
ber IO-Adressen erreicht wird, dient zum Datenaustausch der beiden
Prozessoren im KC-Floppy-System. In den nachfolgenden Tabellen ist die
Belegung mit Stand von DEP V 2.1 angegeben:
敖陳陳陳堕陳陳陳陳陳陳陳堕陳陳陳陳陳陳陳賃陳陳陳陳陳陳陳陳陳陳陳陳陳陳
Seite: D004-Adresse: IO-Adresse KC: Verwendung:
団陳陳陳田陳陳陳陳陳陳陳田陳陳陳陳陳陳陳津陳陳陳陳陳陳陳陳陳陳陳陳陳陳
0 FC00H..FCFFH 00F0H..FFF0H von MicroDOS verwendet
1 FD00H..FDFFH 00F1H..FFF1H Erweiterungen (bisher frei)
2 FE00H..FEFFH 00F2H..FFF2H Bytekoppelpuffer
3 FF00H..FFFFH 00F3H..FFF3H von MicroDOS verwendet
青陳陳陳祖陳陳陳陳陳陳陳祖陳陳陳陳陳陳陳珍陳陳陳陳陳陳陳陳陳陳陳陳陳陳
.PA
bersicht der kompletten Koppelsteuerung:
Name D004: KC: Bedeutung:
陳陳陳陳田陳陳陳田陳陳陳田陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳陳
ERRTX FD00H 00F1H Fehlertext (max. 40 Zeichen, Ende=00)
STBYT2 FD80H 80F1H 2. Steuerbyte:
Bit 0 - Anforderung
Bit 1 - Laufwerkwechsel
Bit 2 - Userwechsel
Bit 3-6 reserviert
Bit 7 - Fehlerrckmeldung
LWANF FD81H 81F1H gefordertes Laufwerk ('A'...'H')
UANF FD82H 82F1H aktuelle User-Nummer (00H ... 0FH)
VERSION FD83H 83F1H Versionsnummer von DEP.COM (21H = V2.1)
DATEN FE80H 80F2H Datenpuffer 128 Byte lang (ein Sektor)
STBYTE FF80H 80F3H 1. Steuerbyte:
Bit 0 - Anforderung
Bit 1 - 1 = schreiben / 0 = lesen
Bit 3 - open
Bit 6 - close
Bit 7 - Fehlerrckmeldung
Bit 5 4 2 Funktionsauswahl:
0 0 0 Sektor lesen/schreiben
0 0 1 DIR-Anforderung
0 1 0 ERA
0 1 1 STAT
1 0 0 REN
1 0 1 SETRO
1 1 0 SETWR
1 1 1 BASIC-Byte lesen/schreiben
FCODE FF81H 81F3H Fehlercode
DIRBUF FF82H 82F3H Puffer fr Dateiname oder Directory
BASBYT FF8EH 8EF3H Daten fr BASIC-Byte-Schnittstelle
Lieferumfang von DEP V2.1:
陳陳陳陳陳陳陳陳陳陳陳陳陳
SYSCOPY .COM Systemspuren von 780K-Disketten kopieren
CAOS21 .DOS Systemabzug CAOS-MicroDOS mit RAM-Floppy-Treiber
DEP .COM Neues Disketten-Erweiterungs-Programm Version 2.1
DEP21 .DOC Beschreibung DEP Version 2.1 (im WordPro6-Format)
DIENST .KCC BA00 C000 BA00 Erweitertes Service-Programm
DIENST .ASM Quelltext dazu
FLOAD2 .KCC 0000 00D7 neues FLOAD mit Fehlertexten
FLOAD2 .ASM Quelltext dazu
FSAVE2 .KCC 0000 00B3 neues FSAVE mit Fehlertexten
FSAVE2 .ASM Quelltext dazu
BASEX2 .KCC 0200 0300 026A Diskettenroutinen fr BASIC
BASEX2 .ASM Quelltext dazu
Alle entstandenen Programme und Quelltexte sind zur Nachnutzung frei. Es
darf jedoch kein privater Vorteil von Nachnutzern daraus gezogen werden.
Die Weitergabe ist erwnscht.
.PA
Kontaktadressen:
陳陳陳陳陳陳陳陳
Uwe Felgentreu Mario Leubner
Am Frstenberg 46 Chemnitztalstrae 25
99310 Arnstadt 09236 Markersdorf
(c) 20.09.1992 (c) 14.08.1993
ario Leubner
Am Frstenberg 46 Chemnitztalstrae 25
99310 Arnstadt 09236 Mark
Vorgefundene Kodierung: UTF-8 | 0
|