[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