
|
[zxspectrum]
||
[Date Prev]
[10-2007 Date Index]
[Date Next]
||
[Thread Prev]
[10-2007 Thread Index]
[Thread Next]
[zxspectrum] Re: Rivista RUN
- From: Cesare Falco <wallyweek@xxxxxxxxx>
- To: zxspectrum@xxxxxxxxxxxxx
- Date: Tue, 09 Oct 2007 00:22:35 +0200
> Esempio classico i loader dei programmi protetti, che mostravano uno
> striminzito listatino basic, che faceva delle delle poke ad indirizzi
> misteriosamente sballati; se si provava ad editare il listato, non
> funzionava più! (forse addirittura a listarlo, non ricordo)
no, solo editando le righe
> Il tutto perché lo Spectrum faceva "caching", memorizzando i valori
> numerici in dei campi nascosti dopo i byte che rappresentavano le
> cifre, per accedervi più velocemente.
più propriamente, non sono campi nascosti... il Sinclari Basic è un
linguaggio interpretato e i numeri vengono memorizzati già in forma
binaria per velocizzare l'esecuzione. Normalmente il numero memorizzato
in forma binaria coincide con quello digitato e mostrato dal comando
LIST, ma bastano un paio di poke ben assestate per cambiare le carte in
tavola...
> Dunque era possibile creare delle linee che mostravano dei numeri
> mentre in realtà ne usavano altri!
esattamente! un trucco usatissimo, insieme a quello di modificare il
numero di riga per renderla non editabile. E aggiungere caratteri non
ascii in coda al listato (sempre a mezzo di poke o simili) impediva anch
e l'esecuzione del comando MERGE (che come noto veniva utilizzato per
impedire l'autorun di un file di tipo basic.
> Editando la linea veniva rieffettuato il caching, distruggendo
> l'informazione nascosta!
semplicemente il numero memorizzato veniva ricalcolato come se tu avessi
nuovamente inserito il numero
Ciao!
Cesare.
|

|