Path: utzoo!attcan!uunet!aplcen!samsung!munnari.oz.au!metro!news From: lawson@extro.ucc.su.OZ.AU (P Lawson) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: Help doing DMA Message-ID: <1990Jun5.232840.25559@metro.ucc.su.OZ.AU> Date: 5 Jun 90 23:28:40 GMT References: <1990Jun4.152523.10486@focsys.uucp> Sender: news@metro.ucc.su.OZ.AU (news) Organization: Uni Computing Service, Uni of Sydney, Australia Lines: 26 From article <1990Jun4.152523.10486@focsys.uucp>, by mike@focsys.uucp (Mike Walma): > For an application my company is looking at doing, we need to develop > some expertise with DMA transfers on AT clones. The problem at hand involves > putting a DMA device in a pipe that would take data in memory, pass it > through the DMA device, and back into memory, all without processor > involvement. The amount of data involved is quite large, and local > buffers on the DMA device relatively small, so it would be a real pipe, > involving interleaved reads and writes, on different DMA channels. > > What I would like from the net is pointers to good references on DMA > programming. Thanks in advance. > > -- > Mike Walma -- Focus Systems -- Waterloo, Ontario > watmath!focsys!mike (519) 746-4918 There is a very good article on DMA in the January 1990 issue of "Dr. Dobb's Journal". The article is titled `Real-Time Data Acquisition Using DMA' by Tom Nolan. The author does all of his coding in Microsoft C, and gives a hardware example that will provide the DMA request and acknowledge. The example that Nolan gives is probably enough to get you started. Once you understand his code it should then be easy to get two channels going at once in the same manner. Peter Lawson.