[zxspectrum] Re: I miei loaders: come funzionano

  • From: Paolo Ferraris <pieffe8@xxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Sun, 07 Apr 2013 15:28:19 -0700

On 4/5/2013 11:38 AM, Antonio S. wrote:

Interessante, e stupefacente: le temporizzazioni mi sembrano molto critiche!

La mia codifica è invece la classica BMC, a tre campioni per bit (ABB e AAA rispettivamente, più),

Frase troncata? Immagino che ABB e AAA vengano invertiti per creare un fronte d'onda all'inizio, cioe` immagino che diventino BAA e BBB rispettivamente se il segnale prima e` A, vero?

In qualunque caso, la tua codifica non mi sembra garantire l'assenza di componente costante. Cioe` potresti avere, per esempio,

ABB ABB ABB ABB ...

che ha piu` segnali bassi che alti. O mi manca qualcosa?

che danno 14700bps costanti a 44,1KHz e 16000bps a 48KHz.
Di tempo per Huffman durante il caricamento non me ne resta, tanto che sto pensando di fare tutto a posteriori - ma a quel punto la decompressione non sarebbe istantanea com'è attualmente: mi chiedo se ne valga la pena.

Non ho dati precisi per farmi un'opinione, dato che non ho ancora provato ad applicare LZ.

Quello che ho notato e` che il mio decompressore nel turbo - molto efficiente per velocita`, dato che usa due bit alla volta - impiega circa il 40-50% di tutto il caricamento turbo , cioe` 4-5 secondi se fosse esterno al loader. Chiaramente i dati da decomprimere sarebbero meno se c'e` gia` una compressione LZ applicata. Se il file fosse piccolo come uno deflated questo tempo scenderebbe a circa 2 o secondi e mezzo. Ho la sensazione che quasi tutto il risparmio nel caricamento venga perso dal decompressore, ma forse mi sbaglio.

(Comunque sconsiglio fortemente di usare l'inflate sullo Spectrum: la decompressione e` molto difficile su un 8 bit, e quindi terribilmente lenta.)

L'albero di H. come lo memorizzi nel loader? Lo comprimi in qualche modo?

Niente compressione, solo turbo. Per dirla tutta anche il decompressore e` caricato turbo: in questa maniera risparmio quasi 1/2 secondo :-)


Paolo


Other related posts: