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

