Il 06/10/2014 08:47, Cesare Falco ha scritto:
Altro strano messaggio: Block 51 => Bytes: screen$ - Header: Length= 17, Pause=812ms. Block 52 => F:255 - Speed: 94% - Start=16384, Length= 6914, Pause=993ms. Che vuol dire?- il blocco 51 è stato convertito correttamente (lo capisci dal "-" prima della scritta "Header") e si tratta di un "Header", quindi lungo 17 byte, di unn blocco di tipo "Byte". - il blocco 52 è stato convertito correttamente ("-" prima di "Start), ma con una velocità riconosciuta pari al 94% del loader standard della rom; il primo byte è 255 (F:255), informazione che MakeTzx restituisce per i blocchi di dati (diversi dall'header), indipendentemente dalla velocità (sia standard che turbo). Se hai dimestichezza con l'assembler, è il valore che va assegnato al registro A prima di chiamare la routine di load. Spesso per situazioni come queste puoi provare a forzare il flag di riconoscimento del loader standard della rom (-ln se mi ricordo bene).
Ok, grazie. Immagino che il motivo di quel 94% possa essere che il nastro è andato leggermente più lento in quel punto. Può essere? O ci possono essere anche altri motivi?
Argomento "CRC". Più che di un vero CRC si tratta di un "parity byte", secondo la definizione di "The Complete Spectrum ROM Disassembly". Per ogni byte da salvare, la routine di save esegue un'operazione di XOR memorizzando il risultato per usarlo per il byte successivo; salvati tutti i byte il risultato viene salvato a sua volta e rappresenta l'ultimo byte del blocco.
Sì, ricordavo qualcosa del genere, grazie. E grazie di tutte le preziose informazioni.
Però rifaccio per la terza volta la domanda: dove diavolo le avete trovate???
EMG -- EMAG Software Homepage: http://www.emagsoftware.it The EMG Music page: http://www.emagsoftware.it/emgmusic The EMG's ZX-Spectrum Page: http://www.emagsoftware.it/spectrum The Best of Spectrum Games: http://www.emagsoftware.it/tbosg