Date : Sun, 30 Oct 2005 16:58:00 +0000
From : Tom Seddon <tom@...>
Subject: Re: BBC using 3.5 high density format
Tom Seddon wrote:
> The NMI routine would go a bit like this:
>
> \ +7 (7) -- NMI overhead
> &D00 LDA FDC_DATA \ +6 (13)
> STA (&C0),Y \ +6 (19)
> INY \ +2 (21)
> BNE NO_BUMP:INC &C1 \ +7 (worst case) 28 <-- point A
> .NO_BUMP TXS \ +2 (30)
> NOP \ +2 (32)
> NOP:NOP:NOP \ +6 (cater for best-case timings)
> NOP \ the lucky NOP
> JMP READ_END
>
My calculations are incorrect, I think. The STA could potentially take
10 cycles writing to the I/O area, because you have 1 read from the
target address (whilst the MSB of the EA is fixed up) and 1 write.
Assuming the high byte doesn't need fixing, that's 2 x 1MHz accesses.
(This may be 9, actually, because if one read takes an extra 2 then the
next one takes an extra 1... or something like that! It's been a while
since I looked at this stuff :)
--Tom