Jan-20-2008 Fix : Modify the driver to check interrupt status from interrup handler. ***************************** Aug-18-2006[v2.23] for Windows 2000/98/NT Fix:Fix DA Chanel initial Value.Output 0(v) ***************************** Jan-26-2006 [v2.22] for Windows 2000/98/NT Change: Combines the DLL Driver and OCX(ActiveX) Control into a single setup program. All manuals are removed from the setup program and placed in the manual folders. for Windows 2000 Add: Registers inf file into system during installation. Fix: Fix bugs to prevent crash when system has heavy loading. (Memory paged out!) ***************************** Oct-10-2004 for Windows 2000/98/NT Add dll suport newer control hip DAQ Card Old/New New PCI Hardware ID PIO-DA4/DA8 v3.0/v4.0 0xE1590001, 0x41800000, 0x00 PIO-DA16 v3.0/v4.0 0xE1590001, 0x41800000, 0x00 ***************************** Jul-30-2003 for Windows 2000 Fix : Remarks the printf() function in the DLL to disable error messages. (when get device interface error!) ***************************** Jun-14-2001 for Windows 2000/98/NT Fix : The VC demo "DaCal" (with calibration) calling the wrong function "PIODA_Voltage()" and "PIODA_Current()". Fix it to call the "PIODA_CalVoltage()" and "PIODA_CalCurrent()". Fix : The internal function PIODA_ReadEEPROMAll() computes the wrong delta-value for Current-Output, and causes the PIODA_CalCurrent() function output the wrong data. Fix it. for Windows 98/NT Fix : PIODA_ActiveBoard() function just can used to active the board for 0 to 3 under Windows NT. Fix it to 16. ***************************** May-21-2001 for Windows 2000/98/NT Fix : Fix bug for SearchCard() function. ****************************** Mar-26-2001 for Windows NT Fix : Fix the driver to prevents confliction with other drivers. Change : Supports more boards. ***************************** Mar-15-2000 for Windows 2000/98/NT Fix : Output the 0x01 to Base-Address will not allow the program to uses the DA functions. Fix to output the 0x11 to Base- Address to enable it. Change : Remove the PIODAu.PAS, PIODAu.CPP, PIODAu.BAS files. And move the PIODAu_XXX() function into the DLL file with the prefix "PIODA_" to be the function name. Change : In the PIODA_SearchCard() function, it will automatically call the PIODA_ReadEEPROMAll() for the each card that found. And, will automatically enable the each card to be allow to uses the DI,DO,DA,EEPROM functions. Thus, the PIODA_ReadEEPROMAll() doesn't have to be called any more. And, the user doesn't have to enable these cards. Change : Change the first parameter to be wBoardNo for the following functions: PIODA_DI(), PIODA_DO(), PIODA_Voltage(), PIODA_Current(), PIODA_CalVoltage(), PIODA_CalCurrent() Thus, the user doesn't have to call the PIODA_GetConfigAddressSpace() function to get the base-address. The user just have to indicate which board to active. Change : The PIODA_DI() function be changed to EXPORTS WORD CALLBACK PIODA_DI(WORD wBoardNo, DWORD *wVal); ***************************** Mar-08-2000 for Windows 2000/98/NT Fix : To support the Multi-Board access. > Change the buffer to 2-dimension. Fix : Change the variable-name (on the PIODAu.XXX file) with prefix "PIODAu_". Fix : The program must call the function PIODAu_ReadEEPROMAll() once before other PIODAu_XXX series function be called. Change : The first parameter for almost all of the function with prefix "PIODAu_" is changed to wBoardNo. Which is used to indicate the Board-Number that the program wants to access. Please ensure that the program has call the function PIODAu_ReadEEPROMAll() once before other PIODAu_XXX series function be called. Fix : The Voltage-Output and Current-Output uses the same channel. Thus, the program can't uses the Voltage-Output and Current- Output to the same cannel at the same time. Fix the demo programs and Diagnostic program. Add : Add the "EEPROM write to file" and "EEPROM restore from file" feature to the Diagnostic program "Diag.exe". The user can find the feature on the menu of "EEPROM". Note : It's recommend to use the feature "EEPROM write to file" to backup the EEPROM data to an file. ***************************** Feb-10-2000 for Windows 98/NT Fix : Fix the DA output without calbration PIODAu_Volt() or PIODA_Volt()... old : // Wrong //------------------------------------------------------------ void PIODA_Volt(DWORD wBase, WORD wChannel, float fValue) { WORD wData; float fStep; fStep=16383.0F/20.0F; wData= (WORD)(fValue*fStep+8192.0F); wData=wData+(wChannel%4)*0x4000; PIODA_OutputByte(wBase+0xf0,(BYTE)wData); // wData: 0x0000-0x3fff PIODA_OutputByte(wBase+0xf4,(BYTE)(wData>>8)); PIODA_OutputByte(wBase+0xe0+(wChannel/4),0xff); // Fix a bug in here } //------------------------------------------------------------- new : // Correct //------------------------------------------------------------- void PIODA_Volt(DWORD wBase, WORD wChannel, float fValue) { WORD wData; float fStep; fStep=16383.0F/20.0F; wData= (WORD)(fValue*fStep+8192.0F); wData=wData+(wChannel%4)*0x4000; PIODA_OutputByte(wBase+0xf0,(BYTE)wData); // wData: 0x0000-0x3fff PIODA_OutputByte(wBase+0xf4,(BYTE)(wData>>8)); PIODA_OutputByte(wBase+0xe0+4*(wChannel/4),0xff); } //------------------------------------------------------------- ***************************** Dec-28-1999 for Windows 98/NT Fix : Fix the Interrupt demo program of VC. old : // Wrong WaitForSingleObject(hEvent, 500); .... ... dwServiceCallCount++; new : // Correct if ( WaitForSingleObject(hEvent, 100) == WAIT_OBJECT_0 ) { .... ... dwServiceCallCount++; } ***************************** Dec-25-1999 for Windows 98/NT Fix : Change the Interrupt Architecture under Windows 95/98, and fixs the relevant demos. ***************************** Dec-21-1999 for Windows 98/NT PIODIO Development Toolkit for Windows NT Ver 1.0 ***************************** Mar-08-1999 for Windows 2000 PIODIO Development Toolkit for Windows 2000 Ver 1.0