On Mon, 9 Apr 2001, Ruud Baltissen wrote: > > After this, you can use "Pseudo DMA", which > > consists of convincing the card that its on a (very slow) DMA channel by > > manually toggling the lines to clock data in. > > Thanks for this idea. I haven't read the doscs I have about DMA yet so I > have to find out which lines are needed to transfer data. DMA's straightforward enough. Your program sets up the DMAC up for the transfer, then gives the expansion card a note saying it can DMA. WHen ready, the card asserts DRQ, and waits for a DAK before sending data. You then use the RDY line to control the wait states (if needed) and throttle the speed of transfer. If you need more detail, I have the definitive ISA bus reference book ;) > > > Mind you, ISA's dma doesnt > > provide the destination address from the expansion card. It's actually > the > > DMAC's responsibility to do this, so we dont need to change the address > > lines. > > Of course, the 8237 provides the addresslines. I completely forgot. But if > so, why "tristating" the 6522 ? Am I misunderstanding? I thought the 6522 was used to recieve and send the data bus information to the expansion bus. (?) You would need to tristate the data bus section so that you can recieve the data that's being PDMA'd into the system. By the way, credits for "pseudo DMA" go to Zilog, Inc. It was mentioned in their z5380 SCSI pdf doc. Spartan (a 5380-based amiga scsi card) uses pseudo dma, and for its age, is pretty swift ;) An easier (8bit) PDMA method in that doc, fyi, involves decidong the DACK line to a decoded I/O location, and hooking the EOP line to the interrupt, so that you can infinite-loop your PDMA program via interrupt. Not always desirable I can imagine however. > > But I'm still thinking about adding an 8237 (optional) as I can imagine that > there are datatransfers which need a bigger throughput the a 6510/8502 can > provide. The trusty 6510 can access all 64k of its ram. ;) What else would you want to transfer? Or, perhaps, are you going fo r more speed? <grin> - This message was sent through the cbm-hackers mailing list. To unsubscribe: echo unsubscribe | mail firstname.lastname@example.org.
Archive generated by hypermail 2.1.1.