[Coco] DMA in (Nitr)OS-9 LII?
Phill Harvey-Smith
afra at aurigae.demon.co.uk
Sun Jul 23 10:57:08 EDT 2006
Mike Pepe wrote:
> Actually, it's not that hard to do at least in theory. I was thinking
> about this long ago. If you multiplexed the DMA controller with the
> cpu on a daughterboard, it might actually work.
>
> With the BA/BS signals and/or a circuit that looks for a read at
> $FFFF will indicate the cpu is not using the bus for that cycle. You
> could then switch over to the DMA for that cycle. Doing DMA in this
> way would not collide with the cpu, video, or refresh. the downside
> to this is that the DMA would appear to the hardware (MMU especially)
> as the cpu, and reads and writes would use the same translated memory
> map as the processor.
The other way you could possibly do this if using a daughter board is to
use the TSC signal which will allow access to the bus without contention
with the CPU, (the 6809E data sheet actually suggests this as a use for
TSC :) ). Of course whilst doing this the processor would effectivly be
halted, but if you did this in small bursts or with cleaver interleaving
, then it might not be so noticable....
I'd actually thought of using this method for interfacing an AVR to the
6809, if I could get it somehow to generate propper motorola signlas :)
Of course the mapping problem is only a problem for the CoCo 3 :)
> Maybe one of these days I'll build one. I think I have some 6844 DMAC
> chips in my junk box.
Which are probably designed to work with the 68xx series, though might
be harder to source these days....
Cheers.
Phill.
--
Phill Harvey-Smith, Programmer, Hardware hacker, and general eccentric !
"You can twist perceptions, but reality won't budge" -- Rush.
More information about the Coco
mailing list