[Coco] Device module for (O)VCC continues. How to do DMA?

Gene Heskett gheskett at shentel.net
Sun Jun 2 03:30:26 EDT 2019


On Sunday 02 June 2019 12:17:24 am Walter wrote:

> Ok
>
>
>
> So I have my MPU pak module (PFU & GPU) successfully performing
> floating point operations and drawing under OS9.
>
>
>
> However it only works in synchronous mode.  In async mode it corrupts
> task memory and after several hours of debugging
> I now know why but I'm unsure how to fix the issue.
>
>
>
> The problem turns out to be the GPU can only DMA into the same 64k
> address that the process is running in.
>
>
>
> If OS9 switches the MMU memory map the GPU is completely unaware and
> continues drawing into wrong memory.
>
>
>
> The GPU has no way of knowing the MMU has pulled the memory rug from
> under its feet!
>
>
>
> So my question is:
>
>
>
> How does a physical pak device accomplish DMA given this limitation?
>
>
>
> Can a PAK device see (and DMA) into the full (512k/1M/2M) ?
>
No. There is no "dma" anyplace in the coco's design.
>
> If yes, how?
>
>
>
> If no, what is the work around?
>
>
>
> Walter


Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>



More information about the Coco mailing list