043
27.05.2014, 07:35 Uhr
volkerp
Default Group and Edit
|
aus KCLOAD.PAS von H. Haftmann:
{KC-Format: Die Angaben im KC-Handbuch sind FALSCH! Ursache: Die Mühlhäuser Programmierer haben die Latenzzeit der Interruptserviceroutine unterschlagen. Z.B. Vorton: TC=$2F=47->1179Hz(848µs), es sind aber ca. 1060Hz(943µs). In dieser Zeit wird der Timer 2x per ISR neu programmiert, 943-848=95µs, pro Aufruf also 47.5µs->83 Takte. Der IM2 verbraucht 19 Takte, in der ISR vergehen 11+7+11+19+11 Takte, macht zusammen 78 Takte. Da die Warteschleife aus einer Schleife mit 19+4+12 Takten besteht, ist die mittlere Latenz 5 Takte (wegen mittlerer Befehlsausführungszeit von 11 Takten). Kommt genau hin! (Dummerweise wird die CTC rückgesetzt, eigentlich Schwachsinn!)
0-Bit: Vollschwingung 1950 Hz (11 Samples, 7-16) 1-Bit: Vollschwingung 1050 Hz (21 Samples, 17-26) Trennzeichen: Vollschw. 557 Hz (39 Samples, 27-50)
Byte: Bit0, Bit1, ... Bit7, Trennzeichen (TZ)
Block: Vorton (>160 1-Bits), TZ, Byte (BlockNr), 128 Bytes, Byte (Summe)
Datei: Vorblock (Nr. 0 oder 1), n Datenblöcke, Schlussblock (Nr. FF)
Vorblock: 11 Byte Name, 117 Byte verschieden verwendet oder Datenbytes
Schlussblock: Kann Daten enthalten
Idiotien: * Keine vernünftige Definition des Vorblock-Inhaltes, verschiedene Auslegung für BASIC oder MC, unsichere Block-Nr. * Block-Nr. FF kann, muss aber nicht Schlussblock sein; Auslegung verschieden: VERIFY und LOAD machen Schluss, BASIC lädt weiter und interessiert sich mitnichten für den FF-Block (dieser enthält keine Daten und wird gar nicht gelesen) KC87-BASIC generiert keinen FF-Block Dateien >31K haben einen FF-Block mittendrin * Schwer behebbare Differenzen zwischen Kassetten- und Disketten- Aufzeichnung (das mache man erst mal dem Normalverbraucher klar...)
(s.a. 002: "...das Programm KCLOAD. http://hc-ddr.hucki.net/wiki/doku.php/programme:kassetten_faq . Das ist ein Pascal-Programm, aber vielleicht kannst Du diesem Programm Anregungen (und vor allem diverse Kleinigkeiten) entnehmen, wie das Audiosignal aufbereitet werden muss...") -- VolkerP
http://hc-ddr.hucki.net (Z9001, Z1013, LC-80, ...) Dieser Beitrag wurde am 27.05.2014 um 07:42 Uhr von volkerp editiert. |