Go to the FreeLists Home Page Home Signup Help Login
 



[zxspectrum] || [Date Prev] [10-2007 Date Index] [Date Next] || [Thread Prev] [10-2007 Thread Index] [Thread Next]

[zxspectrum] Re: Rivista RUN

  • From: Giovanni Caristi <caristi@xxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Tue, 9 Oct 2007 09:17:53 +0200

Il giorno 09/ott/07, alle ore 00:22, Cesare Falco ha scritto:

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

Sì, perché portando la riga giù, all'atto del


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...

Era esattamente quello che volevo dire :) Probabilmente mi sono espresso male. Si tratta di alcuni byte posti dopo la rappresentazione ASCII del numero, nella copia del listato in memoria, e che, ovviamene, non compaiono a video, perché il comando LIST mostra solo la rappresentazione ASCII.


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.

Vero! :)

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.

Rivero! :) Che spasso ;)


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

Anche qui, volevo dire esattamente questo :) Evidentemente ieri sera non ero molto lucido.

   Giovanni




[ Home | Signup | Help | Login | Archives | Lists ]

All trademarks and copyrights within the FreeLists archives are owned by their respective owners.
Everything else ©2007 Avenir Technologies, LLC.