[zxspectrum] tape ultra speed
- From: "Alessandro" <apoppi@xxxxxxxx>
- To: <zxspectrum@xxxxxxxxxxxxx>
- Date: Sun, 30 Jul 2006 18:35:30 +0200
Buona domenica. <g>
Da un'idea di Mario, che mi chiedeva quale converter txz/wav usassi, per
vedere se poteva riprodurre il suono a doppia velocita` e dimezzare il tempo
di caricamento, ho fatto delle prove dall'esito interessante (si sa` che
spippolamento chiama spippolamento).
Usando il registratore di suoni di windows per raddoppiare due volte
consecutivamente la velocita` di riproduzione di "Arkanoid.wav" ed
impostando il clone ad un clock Z80 di 14MHz, ho ottenuto il seguente
caricamento (a buon fine); sorprendente soprattutto perche` il loader
integra gia` un turbo al 150% circa (che in pratica diventa 600%):
http://www.zxbada.bbk.org/img/14MHz_4x_tape_loading.avi
Sto cercando di arrivare al limite massimo (6x con 21MHz). Il problema e`
dato dal fatto che se raddoppio ancora ottengo 8x invece di 6. Allora ho
detto a txz converter di creare il wav con campionamento = 43.690Hz invece
di 44KHz, in modo da poterlo moltiplicare per 1.5 andando a cambiare quel
numero con un hex editor (la frequenza di campionamento e` salvata in due
bytes dell'header WAV, precisamente all'offset 0x18 (LSB) e 0x19 (MSB))
impostandolo a 0xFFFF (43690*1,5 = 65535) (il motivo per cui 44K non andava
bene e` che moltiplicato per 1,5 supera 65535, che e` il massimo
rappresentabile).
Questo file, di nuovo raddoppiato due volte con il registratore di suoni e
fatto ascoltare al clone a 21MHz ha dato un risultato vicino al successo,
ovvero ha caricato il loader, ha iniziato con le prime righette a 150% (che
a quel punto era in realta` 900%) ma poi si pianta.
Ho caricato invece con successo "Pssst" a 21MHz con riproduzione 6x, che non
usa un turbo loader.
Secondo me e` un limite della capacita` di riproduzione della scheda audio,
perche` aumentando la velocita` di riproduzione vanno perse informazioni (il
file diventa piu` piccolo). Dovrei trovare il modo di riprodurre il file
originale a 44*6 = 265KHz di campionamento invece di 44, in modo da non
perdere campionamenti ma bensi` proporli in uscita a velocita` sestupla.
C'e' per caso qualcuno che conosce la programmazione delle schede audio
abbastanza bene da sapere se questo e` possibile, o dovrei proprio fare un
hardware apposito?
Ciao!
Other related posts: