Re: [stella] FE Bankswitching

Subject: Re: [stella] FE Bankswitching
From: "Kroko" <Nil.Krokodil@xxxxxxx>
Date: Wed, 26 Feb 2003 22:55:02 +0100
1>a= $1000, d= $60
2>a= $01FE, d= $d0 or $f0 (depending on bank)
3>a= $01FF, d= $d0 or $f0 (depending on bank)
1> So this is RTS
2> The LO Byte
3> The HI Byte
This is how i understood it, too. I am glad we agree on this :-)

> Look again at
1>a= $1000, d= $20
2>a= $1001, d= $d0 or $f0 (depending on bank)
4>a= $01FF, d= $ff (shouldn't matter)
5>a= $01FE, d= $ff (shouldn't matter)
6>a= $1002, d= $d0 or $f0 (depending on bank)
ok, i will try again:
        #  address R/W description for JSR
       --- ------- --- ---------------------------------------------
        1    PC     R  fetch opcode, increment PC
        2    PC     R  fetch low address byte, increment PC
        3  $0100,S  R  internal operation (predecrement S?)
        4  $0100,S  W  push PCH on stack, decrement S
        5  $0100,S  W  push PCL on stack, decrement S
        6    PC     R  copy low address byte to PCL, fetch high Adress byte to PCH
<1 processor fetches the opcode for JSR ($20)     I could see this on the databus, right ?
<2 processor fetches low byte of target adress    I could see this on the databus too ... !?
<3 now adress changes and I can see a stack hit .. so its starting to be interesting here :-)
<4 hm .. does the address change here ? (does predecrement S?) mean that the address will change ?
   if yes, i could detect an address change and again i could see a stack hit (the second hit)
   We just pushed the HI-Byte of the return address. THis one is not interesting so i forget about it
   I am not interested in the databus at this time.
<5 another address change. This could be our 3rd stack hit in a row (or the second (see predecrement S?))
   The low byte of the return address is pushed. I don't care about that, because i am not interested in
   where to return to, but in where to jump to.
<6 now the controller is changing the adresslines again. The new PC is on the Adressbus.
   and it fetches the High Byte of the target adress, WHICH I COULD SEE ON THE DATABUS NOW !?? RIGHT ?
Do I totally misunderstand this, or could it be like this.
Does anybody know how to interpret (predecrement S?)
Current Thread