[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