[zxspectrum] Domanda tecnica sull'algoritmo di save/load
- From: Paolo Ferraris <pieffe8@xxxxxxxxxxxxx>
- To: zxspectrum@xxxxxxxxxxxxx
- Date: Fri, 16 Jan 2004 14:02:07 -0600
Ciao a tutti,
e` da un po' di tempo che la domanda mi frullava in testa, ma visti i
vari esperti qua, spero che qualcuno mi sappia rispondere.
La maniera in cui i dati sono salvati su nastro e` in fin dei conti
molto semplice: gli zeri e gli 1 sono memorizzati con onde quadra intera
di lunghezza diversa a seconda del dato mandato.
Mi domando pero` perche` non sia stata implementata, invece, una
codifica ancora piu` semplice, credo simile a quella usata dalle seriali:
uno zero e` codificato da un segnale basso lungo T, uno zero e`
codificato da un segnale alto anche esso lungo T. Per esempio, per
codificare
10001010 basterebbe un segnale del tipo.
+--+ +--+ +--+
| | | | |
+--+--+--+ +--+ +--+
I vantaggi in termini di velocita` di trasferimento sono evidenti:
usando le stesse frequenze massime riesci a salvare almeno il doppio dei
dati.
Questa codifica pero` richiede l'uso di basse frequeze: in particolare
una sequenza di 0 o 1 non ha armoniche ma solo banda base.
In qualunque caso ogni N bit (sulle seriali 8, ma lo puoi fare ogni 4 o
due bit) ci devi mettere due bit di sincronia:
+--+
... | | ...
+--+ +
Cio` aggiunge armoniche se non ce ne sono e riduce la componente in
banda base.
Per curiosita`, qualcuno ha idea se funzioni? Come viene filtrato il
segnale registrato su cassetta?
Ciao
Paolo
Other related posts: