Re: [stella] A new way to bankswitch

Subject: Re: [stella] A new way to bankswitch
From: "Kroko" <Nil.Krokodil@xxxxxxx>
Date: Thu, 10 Mar 2005 14:44:30 -0500
Hi !

>I wonder if it would work in a 16k scheme

We need RTS on all hotspot adresses (except for the last hotspot) in each 
bank
In addition, we need one RTS which is located one adress below the first
hotspot. I think that doesn't matter too much, because it is difficult to 
use this
ROM space for other things anyway.

F8:

FFF7: RTS
FFF8: RTS
FFF9: ...

F6:

FFF5: RTS
FFF6: RTS
FFF7: RTS
FFF8: RTS
FFF9: ...

F4:

FFF3 RTS
FFF4 RTS
FFF5 RTS
FFF6 RTS
FFF7 RTS
FFF8 RTS
FFF9 RTS
FFFA RTS
FFFB  ...

No matter in which bank we are, if we have RTS in these adresses
in every bank, we can switch banks by

1. push target adress to stack

And then for
F8: jump to $(FFF7+TargetBankNr)
F6: jump to $(FFF5+TargetBankNr)
F4: jump to $(FFF3+TargetBankNr)

When the adress of the jump target is on the bus, we first switch to a wrong 
bank, which
does not matter as long as the processor finds an RTS there. The following 
dummy fetch
will then bring us to the right bank and the execution of the RTS brings us 
to the correct
location in that bank.

So yes, I think it should be usable also for F6,F4 and even EF ...

I did not test it, but I think it could work :-)

Armin



Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://stella.biglist.com

Current Thread