Das Schneider CPC Systembuch

Die Abteilungen des Betriebssystems

Amsdos

Header

Der bereitet Die Abteilungen des Betriebssystems: AmsdosAmsdos nämlich ziemliche Schwierigkeiten. Einerseits soll es CP/M-kompatibel sein. Dort kennt man aber keinen Amsdos: HeaderHeader. Andererseits soll es kompatibel zu den Kassetten-Dateien sein. Und die haben einen.

Herausgekommen ist deshalb ein fauler Kompromiss. Und fehlerhaft ist er leider auch noch.

Zunächst einmal werden alle Dateien, die en Die Speicherkonfiguration im Schneider CPC: Blockblock gespeichert werden, mit einem Amsdos: HeaderHeader versehen. Der ist fast identisch mit dem Kassetten-Header, beansprucht aber einen vollen CP/M-Record mit 128 Datentypen: Bytes
Datenbreite: Bytes
Bytes
. Folgende Datentypen: Bytes
Datenbreite: Bytes
Bytes
sind belegt:

Disketten-Header:
Datentypen: Bytes
Datenbreite: Bytes
Byte
00: User-Nummer Datentypen: Bytes
Datenbreite: Bytes
Byte
01 bis 08: File-Name Datentypen: Bytes
Datenbreite: Bytes
Byte
09 bis 11: Extension Datentypen: Bytes
Datenbreite: Bytes
Byte
18: Typ-Byte (wie MAIN FIRMWARE JUMPBLOCK: CASSETTE MANAGER
Die Firmware des Schneider CPC: CASSETTE MANAGER
Cas
.) Datentypen: Bytes
Datenbreite: Bytes
Byte
21 und 22: Original-Adresse der Datei, von der sie gespeichert wurde. Datentypen: Bytes
Datenbreite: Bytes
Byte
24 und 25: Gesamt-Länge der Datei. Datentypen: Bytes
Datenbreite: Bytes
Byte
26 und 27: Einsprungs-Adresse für Maschinencode-Programme. Datentypen: Bytes
Datenbreite: Bytes
Byte
64 und 65: Prüfsumme über Datentypen: Bytes
Datenbreite: Bytes
Byte
00 bis Datentypen: Bytes
Datenbreite: Bytes
Byte
66 Datentypen: Bytes
Datenbreite: Bytes
Byte
67 und 68: (Gesamtlänge der Datei.)

Die Prüfsumme ist einfach die Summe aller Datentypen: Bytes
Datenbreite: Bytes
Bytes
von Datentypen: Bytes
Datenbreite: Bytes
Byte
0 bis Datentypen: Bytes
Datenbreite: Bytes
Byte
66. Anhand dieser Prüfsumme erkennt Die Abteilungen des Betriebssystems: AmsdosAmsdos beim Einladen der Datei mit Adressierungsarten der Z80: Relativrelativ hoher Wahrscheinlichkeit (aber nicht sicher), dass diese Datei einen Amsdos: HeaderHeader hat. Der eigentliche Datei-Inhalt beginnt dann erst mit dem zweiten Datenspeicherung und Datenstrukturen: RecordsRecord.

Demgegenüber haben Dateien, die zeichenweise geschrieben werden, keinen Amsdos: HeaderHeader. Das sind unter Einleitung: BASIC
Anhang: Basic
Basic
alle Dateien, die mit OPENOUT und mit SAVE"basicprog",Operationen: BD5B / 349A / 349A: FLO SUBa gespeichert werden. CP/M-Dateien haben ebenfalls keinen Header-Record.

Unter Einleitung: CP/MCP/M ist das genaue Ende einer COM-Datei unwichtig, weil hier prinzipiell immer ganze Datenspeicherung und Datenstrukturen: RecordsRecords eingeladen werden, und die Anzahl der Datenspeicherung und Datenstrukturen: RecordsRecords wird im Directory-Eintrag vermerkt.

Das exakte Ende einer ASCII-Datei innerhalb des letzten Datenspeicherung und Datenstrukturen: RecordsRecords erkennt man am Zeichen 26 (&1Operationen: BD5B / 349A / 349A: FLO SUBA), das für diesen Zweck vorgesehen ist.

Normalerweise werden Dateien, die en Die Speicherkonfiguration im Schneider CPC: Blockblock gespeichert wurden, auch wieder en Die Speicherkonfiguration im Schneider CPC: Blockblock gelesen, Dateien, die zeichenweise geschrieben wurden, werden meist auch wieder zeichenweise gelesen. Dann gibt es auch keine Probleme.

Valid HTML   Valid CSS