Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
homecomputer:ac1:kassetteninterface [2023/02/01 08:57] – volkerp | homecomputer:ac1:kassetteninterface [2024/12/05 12:49] (aktuell) – [USB .Z80-Dateien] volkerp | ||
---|---|---|---|
Zeile 12: | Zeile 12: | ||
Das Prinzip entspricht dem in [12] | Das Prinzip entspricht dem in [12] | ||
vorgestellten Kassetteninterface. Die dort angegebene Interfaceschaltung wurde | vorgestellten Kassetteninterface. Die dort angegebene Interfaceschaltung wurde | ||
- | dem Grundmodul des " | + | dem Grundmodul des " |
Aufzeichnungsformat entspricht etwa den in [10] verwendeten. | Aufzeichnungsformat entspricht etwa den in [10] verwendeten. | ||
+ | |||
+ | Achtung: Das Kassettenaufzeichnungsformat des AC1 enthält nicht nur Speicherbereiche. Vielmehr ist es ein Containerformat mit verschiedenen Abschnitten (so gibt es z.B. auch Ladebilder). BASIC-Programme zum großen Basic V1.1 müssen als Audio-Datei geladen werden, ein Laden eines binären Dumps ist nicht direkt möglich. | ||
Aufbau: | Aufbau: | ||
Zeile 28: | Zeile 30: | ||
Datei: | Datei: | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +--------+----+--------+--------+---------+---------+---------+ | + | #--------#----#--------#--------#---------#---------#---------# |
| vorton | E6 | U Name | vorton | < Block | < Block | < Block | ... | < Block | x sadr | | | vorton | E6 | U Name | vorton | < Block | < Block | < Block | ... | < Block | x sadr | | ||
- | +--------+----+--------+--------+---------+---------+---------+ | + | #--------#----#--------#--------#---------#---------#---------# |
- | </ditaa> | + | </a2s> |
Daten-Block '<': | Daten-Block '<': | ||
Zeile 39: | Zeile 41: | ||
hat nur der letzte Block < 256 Bytes | hat nur der letzte Block < 256 Bytes | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +---+------+--------+-----+--------+------+ | + | #---#------#--------#-----#---------#-----# |
| < | len | byte 0 | ... | byte255 | cks | | | < | len | byte 0 | ... | byte255 | cks | | ||
- | +---+------+--------+-----+--------+------+ | + | #---#------#--------#-----#---------#-----# |
- | </ditaa> | + | </a2s> |
Beispielprogramm CLIST@ von der Musterkassette. Der Datenstrom besteht aus 4 Blöcken (Name + 256x00, 256 Datenbytes, 224 Datenbytes, Startadresse). Das ist Dump des Bytestreams, | Beispielprogramm CLIST@ von der Musterkassette. Der Datenstrom besteht aus 4 Blöcken (Name + 256x00, 256 Datenbytes, 224 Datenbytes, Startadresse). Das ist Dump des Bytestreams, | ||
Zeile 49: | Zeile 51: | ||
{{: | {{: | ||
- | :!: Das 8K-Basic verwendet einen eigenen Dateiaufbau !!! | + | :!: Das **8K-Basic |
- 512 x 00-Byte Vorton | - 512 x 00-Byte Vorton | ||
Zeile 58: | Zeile 60: | ||
- xxx Bytes | - xxx Bytes | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +--------+----+------+----+--------+----------+ | + | #--------#----#------#----#--------#----------# |
| vorton | E6 | Name | D3 | laenge | Programm | | | vorton | E6 | Name | D3 | laenge | Programm | | ||
- | +--------+----+------+----+--------+----------+ | + | #--------#----#------#----#--------#----------# |
- | </ditaa> | + | </a2s> |
Beispielprogramm LOCATO von der Musterkassette, | Beispielprogramm LOCATO von der Musterkassette, | ||
{{: | {{: | ||
+ | |||
+ | **Beschreibung aus dem FA:** | ||
Die Aufzeichnungsgeschwindigkeit beträgt 1500 bit/s. Das bedeutet, daß bei einer | Die Aufzeichnungsgeschwindigkeit beträgt 1500 bit/s. Das bedeutet, daß bei einer | ||
Zeile 181: | Zeile 186: | ||
Datei: | Datei: | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +--------+--------+--------+-------+-------+-------+ | + | #--------#--------#--------#-------#-------#-------# |
| vorton | Header | vorton | Block | Block | Block | ... | Block | | | vorton | Header | vorton | Block | Block | Block | ... | Block | | ||
- | +--------+--------+--------+-------+-------+-------+ | + | #--------#--------#--------#-------#-------#-------# |
- | </ditaa> | + | </a2s> |
Block: | Block: | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +------+-------+-----+--------+-----+ | + | #------#-------#-----#--------#-----# |
- | | 0000 | word0 | ... | word15 | cks | | + | | 0000 | word0 | ... | word15 | cks | |
- | +------+-------+-----+--------+-----+ | + | #------#-------#-----#--------#-----# |
- | </ditaa> | + | </a2s> |
Kopfblock: | Kopfblock: | ||
Zeile 200: | Zeile 205: | ||
Eine Startadresse gibt es nicht! | Eine Startadresse gibt es nicht! | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ | + | #----#----#----#----#----#----#----#----#----#----#----#----#----#----#----#----# |
| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E | 0F | | | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E | 0F | | ||
- | |' | + | |' |
- | +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ | + | #----#----#----#----#----#----#----#----#----#----#----#----#----#----#----#----# |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F | | | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F | | ||
| .. aufgefüllt (16 Zeichen) | | .. aufgefüllt (16 Zeichen) | ||
- | +-------------------------------------------------------------------------------+ | + | #-------------------------------------------------------------------------------# |
- | </ditaa> | + | </a2s> |
Aufbau des Kopfblocks: | Aufbau des Kopfblocks: | ||
Zeile 252: | Zeile 257: | ||
Es gibt einen Kopfblock (Header), der zum Z1013-Headersave kompatibel ist. | Es gibt einen Kopfblock (Header), der zum Z1013-Headersave kompatibel ist. | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +--------+----------+ | + | #--------#----------# |
| Header | Programm | | | Header | Programm | | ||
- | +--------+----------+ | + | #--------#----------# |
- | </ditaa> | + | </a2s> |
Kopfblock: | Kopfblock: | ||
Zeile 262: | Zeile 267: | ||
Im Kopfblock ist Dateiname (16 Zeichen), Anfangs- und End-Adresse und der Dateityp (1 Zeichen) enthalten. | Im Kopfblock ist Dateiname (16 Zeichen), Anfangs- und End-Adresse und der Dateityp (1 Zeichen) enthalten. | ||
- | <ditaa noedgesep> | + | <a2s> |
- | +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ | + | #----#----#----#----#----#----#----#----#----#----#----#----#----#----#----#----# |
| 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E | 0F | | | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 0A | 0B | 0C | 0D | 0E | 0F | | ||
| | | | ||
- | +----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+ | + | #----#----#----#----#----#----#----#----#----#----#----#----#----#----#----#----# |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F | | | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F | | ||
- | | Programmname, | + | | |
- | +-------------------------------------------------------------------------------+ | + | #-------------------------------------------------------------------------------# |
- | </ditaa> | + | </a2s> |
der freie Bereich ist mit " | der freie Bereich ist mit " |