Readme.txt ---------- ATS860 Install Disk for Windows 2000, Windows XP, Windows XP x64, Vista 32 bit and Vista 64 bit Version 5.7.6 Release date: November 23, 2009 1. What is ATS860 Install Disk ? ATS860 Install Disk provides device drivers and DLLs required to operate the ATS860 250MS/s 2-channel, 8-bit PCI Digitizer under Windows 2000, Windows XP, Windows XP x64 or Windows Vista (32 bit). ATS860 Install Disk also includes a free license of AlazarDSO application program that allows you to setup one or more ATS860 cards, acquire and view analog signals and save the data to disk. Note that AlazarDSO is available as a 32 bit application as well as a true 64 bit application. If you run the 32 bit AlazarDSO on a PC running 64-bit Windows, it will use the WOW DLL and 64 bit driver. If you run the 64 bit AlazarDSO on a PC running 64-bit Windows, it will use the 64 bit DLL and 64 bit driver. Windows does not allow 64 bit AlazarDSO to run on a 32 bit operating system. 2. Requirements One of the following operating systems: Windows 2000 Windows XP Windows XP x64 Windows Vista (32 bit) Windows Vista (64 bit) 3. How to install ATS860 drivers Run Setup.exe program before installing the hardware. Insert the card in a vacant PCI Express slot. Follow the instructions listed in the ATS860 User Guide. 4. How to install AlazarDSO Navigate to the appropriate AlazarDSO folder (32 bit or 64 bit) on the ATS860 Install Disk. Run Setup.exe. Follow instructions on the screen. 5. Please send your questions, suggestions and bug reports to support@alazartech.com 6. The latest version of ATS860 Install Disk can always be found at http://www.alazartech.com/support/downloads.htm 7. What is new in this version? Version 4.9.4 --------------- Version 4.9.4 is the first released version of ATS860 driver. Version 5.1.0 --------------- This release is intended as a new baseline for the versioning and neither adds nor removes functionality from Version 4.9.4. Version 5.2.0 ------------- Version 5.2.0 is the first fully-released version of 64 bit drivers for ATS860. Version 5.2.0 also supports WOW, allowing 32 bit applications to call 64 bit driver. Installation of WOW drivers is done simultaneously with the 64-bit driver installation. Starting with Version 5.2.0, AlazarTech products are installed in their own class in Device Manager. The ClassName is "AlazarTech PCI Digitizers". Version 5.3.3 ------------- No new ATS860 functionality is introduced in this version. Version 5.4.0 ------------- Version 5.4.0 of the driver uses the same integrated memory controller as ATS460 and ATS660, allowing greater reliability and faster throughput. Version 5.4.0 driver fully supports No-Pre-Trigger (NPT) operations for ATS860. These features were not available in previous versions. Version 5.4.0 fully supports asynchronous DMA from ATS460 to host PC memory using overlapped I/O. Overlapped I/O, (IO completion ports) are a high performance means of reading and writing simultaneously on the same socket. It is managed at system level, thus offering maximum performance. This technique has only been available since the advent of Winsock 2.0 in Windows NT, 2000, and XP. Note that this feature is not supported under Windows 98 SE. This is the highest performance dma possible under Windows, as the CPU usage stays at 0% even if data throughput is 100 MB/s. Some new API calls have been introduced in this version to allow asynchronous dma's: - AlazarBeforeAsyncRead - AlazarAsyncRead - AlazarAbortAsyncRead Version 5.4.0 fixes a bug in previous drivers, whereby a single-ported data transfer (using AlazarRead) that was greater than 4 Megabytes, would return corrupted data. Version 5.4.0 is fully Vista power management compliant, i.e. it fixes a power state handling bug in previous versions, which caused a Vista-based PC to crash if it was powered down with the ATS860 driver loaded. In some machines, this crash caused a re-boot. Version 5.5.0 ------------- Version 5.5.0 adds supports for helper functions for asynchronous DMA from ATS860 to host PC memory using overlapped I/O. Version 5.5.0 fixes a bug in AlazarGetNextAutoDMABuffer routine. In version 5.4.0 of the driver, this routine was returning only half the data in No-Pre-Trigger (NPT) mode. Version 5.5.0 driver also fixes a bug in previous versions that caused the driver not to load under Windows 2000. Version 5.5.1 ------------- Version 5.5.1 adds two new API functions: - AlazarStopAutoDMA - AlazarFlushAutoDMA These functions can be called if the user is capturing data using AutoDMA (synchronous DMA) and triggers stop coming. AlazarStopAutoDMA stops any further DMAs from being started. This function should be called before AlazarFlushAutoDMA. AlazarFlushAutoDMA generates the required number of software triggers to complete the current DMA, thereby guaranteeing an orderly end of the acquisition session despite the lack of user-supplied triggers. Version 5.5.1 also fixes a bug in AlazarAbortAsyncRead (asynchronous DMA) that could have caused false buffer overflow error. This overflow error would have appeared if the user had set infinite number of records, stopped the acquisition manually and then tried to start another acquisition. Version 5.5.1 also fixes a bug in V5.5.0 which did not allow the calibration EEPROM to be updated. Version 5.6.0 ------------- Starting in Versions 5.6.0, the device driver is being distributed with a Setup.exe installation program. Api’s, “AlazarSetParameter”, “AlazarGetParameter”, “AlazarSetParameterUL”, and “AlazarGetParameterUL” are documented. Asynchronous AutoDMA applications using the “AlazarWaitNextAsyncBufferComplete” API, (mostly used in LabView) can sense if an overflow situation is about to occur, and selectively discard data buffers in order to safe guard from overflowing. AtsApi.dll now indicates the architecture type in the Product Description field of the files property page. This is used to easily distinguish the x64 architecture SDK dll from the x32 architecture sdk dll. To view this information, Right-Button click on the dll file, select the Properties menu item and click the Version tab. Version 5.6.1 ------------- Version 5.6.1 fixes a bug in previous Versions , which could have prevented the full DMA transfer from completing for NPT AutoDMA transfers. Version 5.6.1 corrects that problem with a new FPGA image (8110012.ali). The ATS860.sys driver version has been changed to V5.6.1 but it is compatible to V5.6.0. Version 5.6.2 ------------- New build using the new Windows Vista DDK. Version 5.6.2 fixes a bug in the AlazarPostAsyncBuffer Api of the AtsApi.dll and AtsApiVB.dll files that set the asynchronous DMA length based on the BufferLength parameter passed to AlazarPostAsyncBuffer routine instead of using the values set in AlazarBeforeAsyncRead, i.e. SamplesPerRecord and RecordsPerTransfer. In previous versions, if BufferLength was greater than the value set in AlazarBeforeAsyncRead, data could get compromised. In Version 5.6.2, AlazarPostAsyncBuffer generates an error if BufferLength is less than the DMA length value set in AlazarBeforeAsyncRead. Version 5.6.2 introduces a new API called AlazarWrite. At present this API is for internal use. Version 5.6.2.1 --------------- Version 5.6.2.1 of ATS860 driver includes an updated FPGA file, A8110013.ali, that fixes a bug in NPT DMA mode. This bug caused data corruption at the end of data buffers returned by ATS860. Version 5.6.3 ------------- The accompanying FPGA image fixes a bug present in previous version that caused NPT Synch/Async DMA to return incomplete buffers when short Record Lengths were used. Version 5.6.3 fixes a bug that NPT and Traditional Synch/AsyncDMA would fail if the user was previously using Continuous Streaming or Triggered Streaming. The trigger settings were not being restored properly. The accompanying A8110015.ALI FPGA image fixes a bug in previous versions that could have possibly caused the DMA engine to lock up when a user initiated an abort. Know Issue: The last 16 samples of a record in Traditional SynchronousDMA and AsyncDMA may be invalid. For this reason, it is advisable to set the record length to be 32 samples more than is required. Version 5.6.4 ------------- Version 5.6.4 fixes a bug in previous versions that could have caused on-board DMA state machine to lock up in DmaPaused or DmaInProgress states. The accompanying FPGA files allow unconditional completion of an in-progress DMA in order to avoid this error. Version 5.6.4 fixes a bug in previous versions whereby if user attempts to do a No-Pre-trigger (NPT) acquisition using Asynchronous DMA after having done an acquisition with "Enable Headers", the first 16 points of the NPT data were corrupted. Version 5.6.4 resets the "Enable Headers" bit properly when doing an NPT acquisition. Version 5.6.5 ------------- Version 5.6.5 driver installation program provides full support for non-english language operating systems. Previous versions may have reported an error when user tried to install the drivers on a computer running non-english language operating system. Users can also start the driver installation program in quiet mode (with no user interface) by opening a command prompt in the "winxp" or "winxp_64" folder and typing "DPInst /q" or "DPInst /s". Version 5.6.6 ------------- Version 5.6.6 fixes a bug in the driver that could have caused a lockup of the computer at very high trigger repeat rates. The lockup may have exhibited itself by freezing the mouse and keyboard or by simply stalling the acquisition. Version 5.6.7 ------------- Version 5.6.7 fixes a bug in AlazarAbortAsyncRead in continuous or triggered mode where the in-progress DMA was not aborted. The PC would have to be rebooted to recover from this error. Version 5.6.8 ------------- Version 5.6.8 Adds GET_BOARD_OPTIONS_LOW and GET_BOARD_OPTIONS_HIGH to AlazarQueryCapability to ATSApil.dll Version 5.6.9 ------------- Version 5.6.9 properly installs all support files for WOW drivers that allow operation of the card in a 32-bit application, such as LabVIEW, while running on Vista 64-bit operating system. Version 5.6.10 -------------- Version 5.6.10 adds SETGET_ASYNC_BUFFSIZE_BYTES to AlazarSetParameter so that calls to AlazarBeforeAsyncRead using the ALLOC_BUFFERS flag (such as LabVIEW) can request data buffers whose size in samples is not equal to samples_per_record * records_per_transfer. Version 5.6.10 modifies AlazarAsyncRead to accept buffers whose size is not equal to the number of samples per transfer as specified in the call to AlazarBeforeAsyncRead. Version 5.6.10 introduces ATSApi.log. ATSApi.log file is debugging tool that allows us to record how programs call ATSApi.dll. For example if a program like LabView calls the AlazarPostAsyncBuffer function in ATSApi.dll and logging is enabled, then an entry similar to the following will be added to the log file: >> 2008/11/05 13:18:41.019 AlazarPostAsyncBuffer (0x00000C90, 0x07ED0020, 2048000) = ApiSuccess where: - "2008/11/05 13:18:41.019" is the date and time when the function was called. - "AlazarPostAsyncBuffer" is the name of the function that was called. - "0x00000C90" is the first parameter passed to the function (the board handle). - "0x07ED0020" is the second parameter passed to the function (the buffer address). - "2048000" is the third parameter passed to the function (the size of the buffer in bytes). - "ApiSuccess" is the return code that was passed back to the caller. Customers will probably never need to enable logging themselves. However, if customers create their own custom application and it doesn't work, and they call AlazarTech for support, then logging might be very useful. By examining this log file, we should be able to point out to the customer exactly what the problem is with their application WITHOUT requiring the application source code. It must be noted that such logging should only be turned on for debugging purposes, as it can slow down the performace of the system. To control whether or not to log all Api calls, we have introduced the ApiFlags program. The ApiFlags program allows a customer to enable or disable logging, and select log file options. ApiFlags is only supplied to customers who, in the opinion of AlazarTech Technical Support personnel, need it. Version 5.6.11 -------------- Version 5.6.11 ships with a new FPGA image, A8110020.ali, which fixes a bug in previous versions for Master/Slave operation of multiple ATS860s. In previous versions, slave board(s) could have a +/- 1 point (2-point peak to peak) trigger jitter at 250 MS/s rate. With the updated FPGA, slave boards now have the same trigger jitter as the Master board, +/- 0.5 point (1-point peak to peak) jitter. This FPGA version also allows the programmer to control whether the ATS860 output data is unsigned binary (default) or signed. Version 5.6.11 modifies AlazarAbortAsyncRead to remove an unnecessary 200 ms delay. This delay caused a noticeable pause in applications that call AlazarAbortAsyncRead frequently, such as AlazarDSO while dragging a trigger level. Version 5.6.12 -------------- There are no new capabilities for the ATS860 in driver version 5.6.12 Version 5.6.13 -------------- Version 5.6.13 fixes a bug in version 5.6.12, where the driver installation program installed an older version (v5.6.11) of the device driver file (ATS860.sys). Version 5.6.13 installs v5.6.13 of the DLL (ATSApi.dll) and also 5.6.13 of the device driver (ATS860.sys). Version 5.7.4 ------------- Version 5.7.4 modifies AlazarWaitAsyncBufferComplete() to return ApiBufferOverflow rather than ApiFailed when it detects a buffer overflow error. This is particularly important improvement for LabVIEW vi's. Version 5.7.6 ------------- Version 5.7.6 adds AlazarConfigureAuxIO function to allow applications to setup the AUX I/O connector. Version 5.7.6 fixes a bug in continuous streaming where AlazarWaitAsyncBufferComplete would fail with ApiWaitTimeout unless AlazarSetRecordSize was called before calling AlazarStartCapture.