Graham,
DMA transfers are much faster than interrupt-based transfers, especially for pattern I/O. By default, this board will be configured for DMA transfers instead of interrupt-based transfers. Unless you have specifically configured your board, in software, to perform interrupt-based transfers, you are most likely performing a DMA operation.
Since the DIG_Block_In or DIG_Block_Out calls will initiate the DMA transfer to/from the buffers this is where most DMA errors will be generated. I recommend examining and running some of our examples which ship with the NI-DAQ driver. Please look in the directory C:\Program Files\National Instruments\NI-DAQ\Examples\VisualC\Di or ..\Do for the examples titled, "DIdoubleBufPatternGen653x.C" or "DIsingleBufPatt
ernGen653x.C". Both of these examples will use Traditional NI-DAQ function calls. Please let me know if either one of these examples, or their digital output counterparts, generate the -10455 DMA error you are seeing.
Regards,
Justin Britten
Applications Engineer
National Instruments