Xref: utzoo comp.binaries.ibm.pc.d:638 comp.sys.ibm.pc:17878 Path: utzoo!utgpu!water!watmath!watdragon!crocus!rmpinchback From: rmpinchback@crocus.waterloo.edu (Reid M. Pinchback) Newsgroups: comp.binaries.ibm.pc.d,comp.sys.ibm.pc Subject: Using the DMA Controller in PCs and ATs. Keywords: Intel 8237 DMA controller Message-ID: <8166@watdragon.waterloo.edu> Date: 8 Aug 88 20:39:57 GMT References: <2988@nicmad.UUCP> <6240@chinet.chi.il.us> <8159@watdragon.waterloo.edu> Sender: daemon@watdragon.waterloo.edu Reply-To: rmpinchback@dahlia.waterloo.edu (Reid M. Pinchback) Organization: U. of Waterloo, Ontario Lines: 26 . . I'm looking for source code or a reasonably detailed explanation of how to use the DMA controller in my AT clone (or any other PC-type machine) to do block moves of data. I understand that the chip has four channels, 0 and 2 being used for refresh and disk transfers. I don't have any of those handy-dandy IBM Tech Ref manuals or Intel manuals, so if anybody out there knows how to do this, could you either (a) send me a sample of assembler that does this kind of block data move; or (b) post it to the net so everybody could play with it. Thanks in advance, Reid replies(usenet,R) :- usenet_addresses(R). replies(bitnet,R) :- bitnet_addresses(R). usenet_addresses("dahlia.waterloo.edu"). usenet_addresses("watmum.waterloo.edu"). bitnet_addresses("RMPINCHB@WATDCS.BITNET"). % WATDCS.NETNORTH for dumb mailers bitnet_addresses("RMPINCHB@WATER.BITNET"). % WATER.NETNORTH " " "