Autore Topic: Soluzione Al Quesito  (Letto 2106 volte)

Alberto

  • Utente
  • **
  • Post: 589
  • Gioco Preferito: Grand Prix Circuit
Soluzione Al Quesito
« il: 20 Maggio 2004, 11:51:26 »
 Soluzione al quesito del topic precedente ( Dubbio... )

Dopo le prime due istruzioni,viene stampato l'indirizzo di schermo che ci si aspetta,perchè,quando il C64 stampa il numero 5,il cursore si trova nella stessa pagina di memoria in cui si trova quando stampa 24.
Invece,dopo le ultime due istruzioni,il C64 stampa come primo numero 224;ciò significa che il cursore si trova nella riga a cavallo tra la quinta e la sesta pagina di memoria.
Perciò,quando il C64 va a capo per stampare il byte alto dell'indirizzo,il cursore non si trova più nella quinta pagina di memoria,ma bensì nella sesta.
Ecco spiegato perchè il C64 stampa,nel secondo caso,un indirizzo apparentemente anomalo.
Quindi,il problema si presenta ogni volta che il primo numero stampato è compreso tra 216 e 255.
Questo può essere risolto facilmente,direttamente da Basic;poichè il vettore 209-210 punta all'INIZIO della riga in cui si trova il cursore è sufficiente fare in modo che,nel momento in cui il C64 esamina le due locazioni,il cursore si trovi sulla stessa riga di schermo,ad esempio battendo

PRINT PEEK(209);PEEK(210)

P.S.:vista la partecipazione e la facilità del quesito,deduco che i dischetti 5'1/4" non interessino a nessuno :D
 :c64: