1801 2978 0000 I ... maintp.5.4(BD)
Beschreibung *maintape* 5.4 (BD)
--------------------------------




In dieser kurzen Beschreibung wurden nur die Dinge aufgenommen, die die
vorliegende Version von vorherigen unterscheidet:


1. Kommandos:
-------------

@S begin end start name


Saven eines Files. Im Gegensatz zu HEADERSAVE erfolgt die Namenseingabe bereits
in der Kommandozeile. Abgefragt wird der Filetyp und die Filenummer. Die
Filenummer ist ein beliebiges Zeichen, welches bei den Load-Kommandos im
Memorypointer angezeigt wird (z.B. 0-9,A-Z,a-z). Im Kopfblock wird an den
Positionen #EA die Filekopf-CRC (Z-Summe) und an #EB die File-CRC eingetragen.
Nach dem Saven wird abgefragt "Verify/Retry", welches mit dem Anfangsbuchstaben
beantwortet werden kann.


@S:


Saven mit gleichem Kopf. Hat sich die File-CRC inzwischen veraendert, dann
erfolgt eine Fehlermeldung. Control-C unterbricht die Kommandoausfuehrung.


@LN name


Laden eines Files mit Namen. Wird kein Name angegeben, dann erfolgt keine
Pruefung. Typabfrage erfolgt in jedem Fall. Stimmt die File-CRC nicht ueberein,
dann erfolgt eine Fehlermeldung mit Tastaturabfrage. Control-C unterdrückt den
Autostart. Stimmt die Kopf-CRC nicht ueberein, geht *maintape* davon aus, dasz
keine File-CRC vorhanden ist und unterdrückt die Fehlermeldung. Auch in diesem
Fall kann mit @S: abgespeichert werden, da die CRC aktualisiert wird. Autostart
wird angefordert, indem als Filetyp ein "C" eingetragen wird.


@L


Laden eines Files mit Kopfblock ohne Kontrolle der Filenummern.


@L addr


Laden eines Files ab Adresse


@L begin end


Entspricht originalem Monitorkommando "L".


@L begin end blocknr


Laden eines Files ab einer Blocknummer in den angegebenen Bereich.


@LC


Anzeige der Kopfbloecke auf Kassette. Eingelesen wird in die oberste
Bildschirmzeile entsprechend eingestelltem Bildschirmfenster (nicht bei A.2-
Monitor!).


@C


Kontrolle der CRC-Summe des zuletzt eingelesenen Files entsprechend der
Eintragungen im Kopfpuffer.


@C begin end


Berechnung der CRC-Summe ueber den angegebenen Bereich.



@1


Einstellen der Zeitkonstanten analog 1MHz. (z.B. 2MHz-Files bei 4MHz lesen)
Die Adresse der jeweilig aktuellen Tabelle ist auf #2E/#2F eingetragen.


@2


Einstellen der Zeitkonstanten analog 2MHz.


@4


Einstellen der Zeitkonstanten analog 4MHz. (z.B. 4MHz-Files bei 2MHz lesen,
nur bei guten Aufzeichnungen sinnvoll).



2. Memorypointer
----------------


addr 4 S     - Saven des Files 4

addr A V     - Verify des Files A

addr w *     - Suche eines Filekopfes

addr 0 L     - Laden des Files 0

addr 3 <     - Blocknummer beim Laden gröszer als erwartet.(entspricht
               "record not found").Abbruch mit Control-C moeglich.

addr 6 >     - Blocknummer beim Laden kleiner als erwartet.(eventuell
               Vorspulen). Kein Abbruch mit Control-C moeglich.


3. Lesefehler
-------------


Bei Lesefehlern wird der Memorypointer unterdrueckt. Erst der naechste
fehlerfreie Block wird mit entsprechendem Memorypointer wieder angezeigt.
Zusaetzliche Fehlermeldungen werden nicht ausgegeben. Dadurch entfaellt die
Tastaturbetaetigung analog HEADERSAVE bei Wiederholung des Leseversuches.
Waehrend fehlerhafter Bloecke wird die Tastatur abgefragt (Abbruch moeglich).



4. Kompatibilitaet
------------------


*maintape* ist kompatibel zu HEADERSAVE. Ab #E000 sind die ueblichen Spruenge
in das Kassettenprogramm eingetragen. Wird dieser Sprungverteiler genutzt, dann
wird der Filename gesondert abgefragt. Fuer die Blocksaveroutine ist die
Filenummer im Alternativregister A zu uebergeben. Dort kann sie auch bei
Verwendung der Blockladeroutine ausgewertet werden.



5. Tonausgabe ueber Piezzosummer
--------------------------------


Bei fehlerhaften CRC-Summen und zu groszen Blocknummern (Lesefehler) wird
die Tonausgabe ueber den Sprungverteiler angesprungen. Dadurch sind diese auch
aus Entfernung bemerkbar. Dieser Aufruf erfolgt nur in der Variante fuer den
4k-Monitor.



6. Einbau des *maintape* in den 4k-Monitor
------------------------------------------


Beim Autor existiert ein zum Brosig-Monitor kompatibler main-Monitor fuer
unterschiedliche Tastaturen und mit erweiterten Kommandos (z.B. Wildcards bei
FIND, ASCII-Eingabemoeglichkeit bei MEMORY, Mehrfachspruenge bei NEXT, VIEW-
Kommando, erweiterte Registeranzeige ...). In diesem Monitor ist auch
*maintape* enthalten. Der Aufruf der Load- und Saveroutinen erfolgt ohne
@-Praefix mit "L" und "S". Das Savekommando ist abbrechbar.