Quelltext /~heha/hs/kcemu/kcswberg.zip/DISK/DEP21.DOC

.. 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-80