On Mon, Jan 31, 2005 at 10:41:52PM +0100, Aley Keprt wrote:
> I know this is not "Spectrum users", but I must ask: how does Spectrum 
> memory contention work? How is it possible to run Spectrum software on Sam, 
> when it [Spectrum] definitely uses very different memory contention scheme?
> 
> I remember that memory 16384-32767 seemed to be the only contended area.

See http://www.sinclairfaq.com/cssfaq/reference/48kreference.htm#Contention

You're right. On the 48k/128k/+2, the memory can be accessed for two
t-states in every eight. On the 48k, only 16384-32768 is contended. On
the 128k/+2, banks 1, 3, 5 and 7 are contended.

On the +2A/+3, the memory can be accessed for one t-state in every
eight. Banks 4, 5, 6 and 7 are contended.

AFAICS, the SAM's MODE 1 contention will affect Spectrum software even
when it's using memory outside of 16384-32767, but since most games
spend most of their time manipulating video memory anyway, this seems
like a reasonable approximation.

When I read about the SAM's extra contention in MODE 1, I couldn't help
feeling that this was a shame, since there are Spectrum games that
benefit from being played at a slightly faster speed.

Cheers,
-- 
Stuart Brady

Reply via email to