Subject: Re: [stella] Supercharger Bankswitches and RAM access!|
Date: Sat, 15 Mar 1997 08:54:41 -0500 (EST)
Might as well answer to the list as well :-) Hi! << >How is the value determined using indirect-x and indirect-y? >How is the address determined using indirect-x and indirect-y? The value is accessed address minus $F000 The address to write to is the address that is accessed 3 or 4 cycles after the access to $F0xx. >> OK, lets look at the following cmp 1000 nop lda (2000),y // don't worry about the nonsense addresses // at location 2000 is 1234 stored // y=6 is that like a BASIC: poke 0,2000 poke 0,2006 poke 0,1240 (that's what I do now, it 'seems' to be OK) ? << Also you should keep in mind, that the controll byte at $FFF8 allways is write enabled. Does that mean, that every access to $fff8 is allways a write? (I'm sure that I haven't implemented that yet...) >PS. My stella now runs Frogger, Dragonstomper, Rabbit and a few others > It doesn't run (well) Suicide Mission, Phasor Patrol, Communists... Does this include the load capability of Dragonstomper or do you mean only the first part? Ciao, Eckhard Stolberg >> Well, I haven't played Dragonstomper till it loaded another part, but I'd guess that it works OK, since survival island works... << Again intructions don't matter. The value is stored to the address that is accessed 3 or 4 processor cycles after the access to $F0xx. I am not sure about the timing though. But indirect accesses work too and they first have to read the address from the zeropage, which takes some cycles. Also in my programm I have to put a NOP between the two accesses, like >> Does that mean, that the address has to follow after a certain number of cycles? I mean, if I insert 100 NOPs after a 'lda RAM', that a 'cmp f123' wouldn't be a poke anymore? (I certainly haven't included cycle counters for RAM access yet!) Thanks and bye Chris -- Archives available at http://www.biglist.com/lists/stella/archives/ E-mail UNSUBSCRIBE in the body to stella-request@xxxxxxxxxxx to be removed.