Ciao raga, mi è capitato tra le mani un programmino per lo ZX81 che mi ha incuriosito. Per chi non lo sapesse lo ZX81 lavora su cassetta a una lentezza esasperante (è lento addirittura come il C64).. e come se non bastasse è anche poco affidabile. Il problema è legato alla tecnica utilizzata (vado a memoria, perdonate le imprecisioni): invece di distinguere 1 e 0 con periodi (frequenze) diverse, produce treni di impulsi (se non sbaglio di circa 3khz) in e conta le oscillazioni: una sequenza di circa 3/4 impulsi rappresenta uno zero, se siamo intorno ai 6 impulsi abbiamo l'uno. Il silenzio tra un treno di impulsi e l'altro separa i singoli bit. zzzz.... Assomiglia molto alla tecnica della trasmissione "morse", anzi, l'unico vantaggio di questa tecnica è che si può migliorare molto il segnale applicando filtri aggressivi (mi è anche capitata una cassetta commerciale che a causa di questo conteneva impulsi perfettamente squadrati dove non dovevano essercene). Il tool della Musamy promette cose mai viste: rilocabile in qualsiasi area di memoria, compatto e veloce fino a 4800 baud. http://www.zx81stuff.org.uk/zx81/generated/tapeinfo/Musamy_Tapes.html http://www.sincuser.f9.co.uk/021/softwre.htm Per quel che ho potuto vedere è tutto vero !! Non ho provato, come l'autore, a salvare su un HI-FI per vedere se reggeva le velocità dichiarate, ma l'ho disassemblato e nel limite del possibile, collaudato con EightyOne. La velocità di SAVE è impostabile, e per quel che ho capito, il LOAD si calibra automaticamente, leggendo un primo treno di impulsi che funge da header. La codifica è analoga a quella dello Spectrum, e varia il "duty cycle" dell'onda per distinguere 1 da 0 e il codice è costruito *esclusivamente* con jump relativi (e naturalmente tante belle DJNZ). All'interno dellla parte di programma che gestisce il "LOAD" ci sono inseriti dei jump in avanti che, come i pilastri di un ponte, arrivano alla sezione del "SAVE", ma sono isolati dai loop in cui sono immersi: temporizzare quella roba deve essere stato allucinante. Inoltre il programma usa praticamente tutti i registri alternativi, mi sembra che si permetta anche di toccare AF', cosa abbastanza pericolosa sullo ZX81 (per liberare almeno un registro indice con Z88DK ho dovuto modificare la gestione delle interrupt, che nel caso dello ZX81 significa ritoccare la parte software che genera il quadro video). Comunque, chi tocca IX, muore. Prima del tool principale c'è un programma di diagnostica, ripetuto nella cassetta originale tre volte, registrato a volumi differenti (Alto, Giusto, Basso), che rileggendo se stesso da una sequenza numerica piuttosto precisa, evidenziando chiaramente l'eventuale effetto "WOW" del registratore, anche se, lo sappiamo bene noi Spectrumisti, quel tipo di codifica è estremamente stabile. Che volete, mi affascina il piccoletto ! In questo caso, sia l'auto-calibrazione che i diagnostici sarebbero servii anche sul gommoso,,