[Coco] Re: Speed up and slow down POKE
KnudsenMJ at aol.com
KnudsenMJ at aol.com
Tue Aug 3 22:12:34 EDT 2004
In a message dated 8/3/04 8:39:41 PM Eastern Daylight Time,
alxevans at concentric.net writes:
>If you are running a BASIC program the interpreter will pass through
> the 256 byte band necessary to refresh all of memory often enough so it
> wasn't an issue. If you were running machine code, particularly with
> tight loops it could be a problem.
Right. The trick was to design your machine code so that the tight loops ran
thru at least 256 consecutive bytes of program memory. I unrolled a tight
loop to 5 copies of itself, before it looped back, to get this effect. Worked
great for music synthesis, and I'm sure it would for graphics too (except that
you wouldn't see the graphics till your Coco 1/2 dropped back out of
speed-poke mode).
Another way around was to just assume that DRAMs could hold data for one to
four seconds without refreshing, on the average -- and compute at full speed in
short bursts, dropping back to normal speed to allow refreshing. Of course
that meant living on the edge.
I heaved a sigh of relief when the "Tre" put an end to all this fudging
around.
--Mike K.
More information about the Coco
mailing list