[net.micro] 6502 "random" accesses

knudsen (11/23/82)

I beg to differ with two points of recent 6502 discussion (NOT the HCF,
thank Darwin!).  First, the 6502 does not read truly "random" addresses
on indexed modes; it would read only the address exactly one page
(256. bytes) below the desired target.  Likewise it might hit an
I/O register on the way to an addr 256. bytes higher.
The cure is to pack your I/O device regs together in one page
and have nothing in the page preceding or following (and decode ALL
the high-byte address leads when enabling those regs!).
Yeah, that's uncool, but it sure beats "random" peeks.

Also, if the highly-touted 6502 prefetches are all discarded,
how do you explain the oft-quoted statement that
"a 6502 can move a string/array with plain old firmware
faster than a Z80 using its block-moves"?  Maybe that claim is untrue;
but without prefetching by the 6502, it's just plain ridiculous.
(Wish I could recall where I last read it).


I didn't divorce KIM just to marry COCO (one more way computers are
better than women)	mike k

msm@sri-unix (11/24/82)

While I haven't seen the Z80 block move timings, I think that they
stand a good chance of being slower than those for the 6502.
The main reason for this is that the 6502 takes only a single clock
cycle to access memory instead of the 8080 family's 3 cycles.

					Michael S. Maiten
					Silicon Gulch, California
					<...!{ucbvax!menlo70,decvax}!sytek!msm>