[zxspectrum] Re: News
- From: "Alessandro" <apoppi@xxxxxxxx>
- To: <zxspectrum@xxxxxxxxxxxxx>
- Date: Tue, 26 Sep 2006 23:29:03 +0200
On Tuesday, September 26, 2006 10:00 PM [GMT+1],
Paolo Ferraris <pieffe8@xxxxxxxxx> wrote:
Nuova versione del +3e che ora supporta la DivIDE!
Mi hai fatto venire voglia di implementare quell'assurdo registro
$1FFD, tanto per poter indirizzare le 4 rom del +3.
Buona idea.
Sto facendo delle prove ed ho una stranezza.
Per controllare se le mappature vengono effettuate correttamente, ho scritto
un pezzetto di assembly che "numera" gli 8 banchi di ram (accedendovi
all'indirizzo $C000 mediante il solito RAM_BANK sui bit D2:D0 di $7FFD e
scrivendo un numero progressivo nel primo byte).
A quel punto commuto in una delle 4 modalita` "speciali" e poi, utilizzando
la seriale, trasmetto 4 bytes letti dalle locazioni 0, 16384, 32768, 49152
per vedere qual'e' il banco che si trova attivo a ciascun indirizzo.
Dall'altro capo ricevo dati corretti in tutti i casi: 0,1,2,3 per il modo
uno, 4,5,6,7 per il secondo, 4,5,6,3 per il terzo e 4,7,6,3 per il quarto.
Sembrerebbe funzionare tutto bene.
Nella seconda e terza modalita` speciale, dove il banco n.5 rimane al suo
posto ($4000-$7FFF) come in modo "normale", posso addirittura copiare la ROM
sul banco 4 e poi lasciare la modalita` speciale attiva, perche` agli
indirizzi 0-$3FFF compare appunto il banco 4 che contiene una copia della
rom mentre la ram non si e` mossa (e` necessario un CLEAR 29999 (la routine
LM e` su 30000)).
Dal basic, in queste condizioni, posso vedere i banchi con dei semplici
PRINT PEEK (a parte quello in cui c'e' la rom, che ha "perso il numero"). Se
eseguo un OUT 8189,3 oppure OUT 8189,5 posso passare dalla modalita`
speciale n. 2 alla 3 rispettivamente, e vedo che il banco $C000 cambia
correttamente da 7 a 3.
Allora, visto che funziona, qualcuno mi spiega perche` se provo a fare la
stessa cosa con la modalita` 1 o 4, copiando anche la zona di ram nel banco
giusto, il rientro al basic blocca la macchina?
Mi spiego meglio:
1) copio 0-$3FFF --> banco 4
2) copio $4000-$7FFF --> banco 7
3) seleziono la modalita` speciale n. 4 (l'ultima)
4) trasmetto i bytes di numerazione dei banchi e constato che sono corretti:
4,7,6,3 (quindi ho il 4 con la ROM ed il 7 con le variabili)
Rientro al basic e si paralizza (non appare l'OK).
Notare che prima di iniziare il lavoro disabilito gli interrupt e li
riabilito all'uscita, ed il sistema e` CLEAR 29999 per cui tutta la ram piu`
in alto non ha nessuna influenza.
Perche` si blocca? I banchi sono al loro posto e contengono quello che
devono contenere (la rom l'ho provata nell'altro modo, mentre la ram viene
copiata perche` altrimenti nemmeno la mia routine potrebbe proseguire (gira
in 30000) mentre invece trasmette i 4 bytes senza problemi, dopo la
commutazione).
http://www.zxbada.bbk.org/test1.asm
Ciao e grazie a chiunque abbia voglia di dare un parere. Dev'esserci
qualcosa che mi sfugge nel banco di ram del basic.
- Follow-Ups:
- [zxspectrum] Re: News
- From: Paolo Ferraris
- References:
- [zxspectrum] News
- From: Stefano
- [zxspectrum] Re: News
- From: Alessandro
- [zxspectrum] Re: News
- From: Paolo Ferraris
Other related posts:
- » [zxspectrum] News
- » [zxspectrum] News
- » [zxspectrum] News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] Re: News!!
- » [zxspectrum] News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] Re: News...
- » [zxspectrum] News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
- » [zxspectrum] Re: News
Nuova versione del +3e che ora supporta la DivIDE!
Mi hai fatto venire voglia di implementare quell'assurdo registro $1FFD, tanto per poter indirizzare le 4 rom del +3.
Buona idea.
Sto facendo delle prove ed ho una stranezza.
- [zxspectrum] Re: News
- From: Paolo Ferraris
- [zxspectrum] News
- From: Stefano
- [zxspectrum] Re: News
- From: Alessandro
- [zxspectrum] Re: News
- From: Paolo Ferraris