1800 3f03 0000 I ... maintape 4.3
maintape 4.3.doc
                                ********************************
*                              **                              *
*                              **                              *
*     - M A I N T A P E -      **     ___________________      *
*                              **                              *
********************************


Beschreibung des Kassetteninter-faces (SAVE/LOAD) fuer den Z1013
================================

 MAIN- Tape ist ein Programm zumSpeichern, Lesen  und  Editieren
von Dateien/ Programmen auf bzw.vom Magnetband. Jeder Block wird
mit einer Block- und einer File-nummer abgespeichert. Diese las-
sen sich  auch  mitten  in einerFile auswerten und anzeigen. Da-
mit kann man sich jederzeit  undunabhaengig vom  aktuellen Stand
des Bandzaehlwerkes informieren,welche File sich  an der wieder-
gegebenen Bandstelle  befindet.
                                 Der schon vom  HEADER- Save her
bekannte Memorypointer wird beimMAIN- Tape  um  das Aktivitaets-
zeichen  und die  Filenummer er-gaenzt.  Das  Aktivitaetszeichen
ist  notwendig, da Memorypointerund Filenummer jetzt   jederzeit
anliegen, um Sie ueber die aktu-elle Bandstelle zu  informieren.
Es bedeuten:

xxxx S n    - Saven  einer  Filexxxx V n    - Verify     erfolgt
xxxx L n    - File  wird geladenxxxx  n }  - File   bzw.  Block
u.a      }    wird gesucht

 Die beim Saven  erzeugten MAIN-Files  sind   abwaertskompatibel
zu den Files, die mit dem Z1013-Monitor oder dem HEADER-Save er-
zeugt werden. Daraus folgt :
                                1. Laden  von MAIN- Files  durch
                                   den Z1013- Monitor
                                --------------------------------
                                -  Beim  Laden  von  MAIN- Files
   darf die  Enter- Taste   erst   beim  Ertoenen des  2.  Kenn-
   tones betaetigt werden.

2. Laden  von MAIN- Files  durch
   HEADER- Save
--------------------------------
-  Beim Laden von MAIN-Files mit   dem   HEADER- Save   bestehen
   keine Besonderheiten.

3. Laden von MONITOR-Files durch
   MAIN- Tape
--------------------------------
-  Ein Laden von MONITOR- Files    ist  ueber das Kommando  "@A"
   moeglich,  wenn kein 3. Argu-   ment,  d.h.  keine  erwartete
   Blocknummern  angegeben wird.   Bei anderen Kommandos erfolgt
   die Ausschrift  "kBlnr.". Die   Arbeit kann mit Shift-4/K ab-
   gebrochen werden. Nach Betae-   tigung  einer  anderen  Taste
   wird   das  Kommando  fortge-   setzt.

                                4. Laden von HEADER- Files durch
                                   MAIN- Tape
                                --------------------------------
                                -  MAIN- Tape    enthaelt   eine
   Routine   zur   automatischen   Erkennung  von   Filenummern.
   Dadurch kann jede HEADER-File   gelesen  werden,  obwohl dort
   die  Angabe  einer Filenummer   fehlt.   Im   Filenummernfeld
   wird  ein weisser  Fleck aus-   gewiesen.  Damit  sind  MAIN-
   von  HEADER- Files  zu unter-   scheiden.


FEHLERTOLERANZ    UND    FEHLER-
KORREKTUR BEIM EINLESEN
--------------------------------
 MAIN-Tape kann Fehler beim Ein-lesen  in einem  gewissen  Masse
selbstaendig  korrigieren,  ohnedass der Nutzer eingreifen muss.
Es  ist  damit  fehlertoleranterals  der  Z1013- Monitor und das
bereits  genannte  HEADER- Save.Damit  lassen  sich   Files, die
sonst auf  Fehler auflaufen, biszu einem  bestimmten  Fehlergrad
noch fehlerfrei einlesen. SollteIhnen das Ladeprogramm doch ein-
mal mit einer  Fehlermeldung ab-brechen,  so  koennen  sie,  wie
schon beim HEADER-Save, das Ein-lesen Ihrer File nach kurzem Zu-
rueckspulen  durch   Betaetigungeiner   Taste  ausser   Shift4/K
fortsetzen  bzw. mit  dieser zumMonitor zurueckspringen.


                                DAS LADEN DER MAIN-TAPE-ROUTINE
                                _______________________________

 MAIN- Tape  existiert  fuer denSpeicherbereich  ab   #3C00  bis
#3FFF und  ab  #E000 bis  #EFFF.Beide  Programme  sind  mit  der
Beginnadresse  zu  starten. Nachdem  Laden  der   Komandokuerzel
erscheint  die  Ausschrift "mt-"und  die  Versionsnummer.  Damit
ist MAIN- Tape arbeitsbereit.
                                 Es ist  zu beachten,  dass  das
MAIN-Tape-Programm  nicht kompa-tibel  zum HEADER-Save-Programm,
sondern eine eigenstaendige Ent-wicklung  ist.   Das   bedeutet,
MAIN- Tape  kann nicht ueber denSprungverteiler  der Computer-AG
Dresden  ohne  dessen  Aenderungangesprungen  werden, da  andere
Adressen fuer die Eintrittspunk-te  zur  Nutzung der MAIN- Tape-
Routinen  vorhanden sind und dieRegister   verschieden   genutzt
werden.

                                DIE  KOMMANDOS  DES   MAIN- TAPE
                                ________________________________

 **** LADEN von MAIN-Files ****
                                @LN name ENTER
typ :
   Es  wird  die  File mit Namen   und  Filtetyp geladen.   Beim
   Namen  sind alle eingegebenen   Zeichen  bis zum ersten Space
   signifikant,  d.h.  wenn kein   Name  angegeben  wurde,  dann
   erfolgt keine Namenspruefung.   Mit   Eingabe  des  Filetypes
   (ohne  Bestaetigung)  startet   die Loadroutine und sucht den
   naechsten  Kopfblock. Es wer-   den   alle  Typangaben  >=20H
   (ASCII-Zeichen  Space) ueber-   prueft. Wurde im @LN-Kommando
   also z.B. die  Entertaste als   Typ  betaetigt,  dann erfolgt
   keine Typueberpruefung. Files   vom  Typ  "C" starten automa-
   tisch,  wenn im  @LN-Kommando   ein "C" als  Filetyp eingege-
   ben wurde.
    Gefundene Kopfbloecke werden   ab  Cursorposition  angezeigt
   und vom jeweils nachfolgenden   Kopfblock ueberschrieben, bis
   die  gesuchte  File  gefunden   ist.  Damit entfaellt das vom
   Headersave  bekannte "Hinaus-   wandern" des Ladekommandos.
                                    Nach Ende des  Ladevorganges
   wird ueber  die   eingelesene   File die CRC(SDLC)-Pruefsumme
   berechnet und ausgeschrieben.   Stimmt sie mit dem beim Saven
   im   Kopfblock  eingetragenen   Wert ueberein, so  liegt eine
   garantiert  fehlerfreie  File   vor.

                                @L adr ENTER
                                    Die  als  naechste mit Kopf-
   block beginnende File wird ab   der angegebenen  Hexadezimal-
   adresse eingelesen. Die Para-   meter  "begin"  und  "end" im
   Kopfblock werden  so aktuali-   siert, dass  ein  Abspeichern
   mit "@S:" erfolgen kann.

 *** EDITIEREN von MAIN-Files***
                                @A begin end blnr ENTER
                                    Die  anliegende   MAIN- File
   wird in den mit  "begin"  und   "end"  begrenzten Speicherbe-
   reich   ab  der   angegebenen   Blocknummer  eingelesen, ohne
   dass  ein  Kopfblock erwartet   wird.  Dabei ist zu beachten,
   dass  als  Blocknummer  stets   die   hexadezimale   Anfangs-
   adresse des folgenden Blockes   abgespeichert wurde.

    Das Kommando eignet sich zum   abschnittsweisen   Lesen  von
   Files  und kann z.B. zum Kor-   rigieren  von nur mit Fehlern
   einzulesender  Z1013-MONITOR-   Files   genutzt   werden.  In
   einem solchen Fall sind mehr-   mals  die  jeweils fehlerhaft
   eingelesenen  Files   mittels   MAIN- Tape  abzuspeichern und
   zum Schluss  die jeweils feh-   lerfreien Bloecke einzulesen.
   Als  Ergebnis  steht ein feh-   lerfreies  Programm/ Datei im
   Speicher zur Verfuegung, wenn   jeder  Block  bei irgendeinem
   Einlesen  einmal   fehlerfrei   war.
                                    Wird   das 3. Argument, d.h.
   die  Blocknummer weggelassen,   so koenen mit dem @A-Kommando
   normale   Z1013- Monitorfiles   eingelesen  werden.  Aufgrund
   der groesseren Fehlertoleranz   des MAIN-Tape lassen  sich so
   Files  noch fehlerfrei einle-   sen,  bei denen das Original-
   L- Kommando   Fehlermeldungen   ausschrieb. Doch noch auftre-
   tende  Fehler  werden  analog   angezeigt.

@K ENTER
    Es werden die Parameter  der   eingelesenen      Kopfbloecke
   fortlaufend   ausgeschrieben.   Ausserdem erscheinen  ab Ver-
   sion  2.0  des MAIN-Tapes die   Block-  und  Filenummer   des
   jeweils eingelesenen Blockes.   Dadurch  ist  jederzeit  eine
   genaue   Bandpositionsbestim-   mung moeglich. Dieser Service
   wird auch beim  @LN- Kommando   waehrend   des Suchens garan-
   tiert.  Durch schnellen  Vor-   und  Ruecklauf des Magnetban-
   laesst  sich so die Zeit fuer   das Suchen verkuerzen.

 *** SPEICHERN von MAIN-Files***
                                @S begin end start name ENTER
typ:                            nr.:
                                    Der mit  "begin"  und  "end"
   eingegrenzte  Speicherbereich   wird  mit einer  Startadresse
   unter  dem angegebenen  Namen   als MAIN-File mit dem Filetyp
   und  der  anzugebenden Nummer   (beides  ohne   Bestaetigung)
   abgespeichert. Als Filenummer   kann eine Zahl, ein Buchstabe
   oder  auch  jedes andere Zei-   chen angegeben werden.  Damit
   sind theoretisch  256  unter-   schiedliche    Filekennzeich-
   nungen moeglich.  Es wird em-   pfohlen, die  Files auf einer
   Kassette oder  auf einem Mag-   netband durchgehend von 0 - 9
   und von  A - Z,  in  Uberein-   stimmung  mit dem Inhaltsver-
   zeichnis zu  nummerieren. Auf   diese  Weise  wird die  Suche
   nach  einer  bestimmten  File   unterstuetzt.

@S: ENTER                       nr.:
                                    Es wird eine  MAIN- File mit
   gleichem  Kopfblock abgespei-   chert.  Das  Kommando  laesst
   sich  nach einem vorausgegan-   genem @LN-, @L- oder @S- Kom-
   mando  nutzen  und  verkuerzt   die Zeit der Kommandoeingabe.

@C begin end
    Es wird die CRC(SDLC)-Pruef-   summe ueber den  mit  "begin"
   und    "end"    eingegrenzten   Speicherbereich errechnet und
   angezeigt.
                                --------------------------------

                Martin Duchrow
                Berlin                          ------
                                                1143