[zxspectrum] Re: Chaos construction 2020

  • From: Cesare Falco <wallyweek@xxxxxxxxx>
  • To: zxspectrum <zxspectrum@xxxxxxxxxxxxx>
  • Date: Tue, 10 Dec 2019 16:15:35 +0100

Il giorno mar 10 dic 2019 alle ore 14:37 Enrico Maria Giordano
<e.m.giordano@xxxxxxxxxxxxxxx> ha scritto:

Cesare, ho cercato di capire come funziona il programma del bordo rosso
ma non ci sono riuscito. Prima imposta la tabella degli interrupt ad un
indirizzo molto basso (prima del video) e poi? Lo analizzerò con più
con il sorgente è più facile... :-)

"init" attiva la routine personalizzata di interrupt
"reset" ripristina la routine standard di interrupt (quindi qui
l'avevo messa... :-) )
"brdrt" è la routine di interrupt vera e propria:
- imposta il bordo a rosso
- il ciclo "wait" serve a "perdere tempo" quel tanto che basta per
sapere che il colore deve essere cambiato (in bianco)
- passa il controllo alla routine di interrupt standard

Sfruttare lo spazio inutilizzato in rom a partire da 14848 come
tabella dei vettori di interrupt è un vecchio trucco per risparmiare
spazio in memoria. In questo modo si esegue il codice a partire da
65524 ("im2rt"). Per questo dicevo che funziona solo in modalità 48:
le rom del 128 non hanno quest'area inutilizzata.
Ho predisposto le locazioni "rtaddr" per mettere diversi indirizzi, in
modo da poter richiamare una diversa routine ad ogni interrupt (ad
esempio una di scroll avanti, una in alto e così via).

Augh!
Cesare

Other related posts: