========================================================================================================== History / MVSIGMA Driver 04/2003 MATRIX VISION ========================================================================================================== Start Configuration: mvsl32.dll 4.1.2.2 mvsigma.sys 1.0.0.15 matrixfg.sys 1.92.0.0 matrixfg.vxd 03.04.03 oswin32.dll 2.6.4.12 Date Subject Changed Files ---------------------------------------------------------------------------------------------------------- 07.04.2003 (ug) bugfix queuingmode: colormode only queued if using a mvsl32.dll 4,1,2,3 snapsequence ---------------------------------------------------------------------------------------------------------- 07.04.2003 (ug) internal simplification in kernel-drivers matrixfg.sys 1,92,0,0 ugrade queuing mode: now it is possible to change the size and matrixfg.vxd 2,42,0,0 the colorformat for each image mvsigma.sys 1,0,0,15 oswin32.dll 2,6,4,12 ---------------------------------------------------------------------------------------------------------- 28.05.2003 (ug) versionnumber corrected, no functional changes setdma.exe 2,0,0,0 ---------------------------------------------------------------------------------------------------------- 30.05.2003 (ug) bugfix offsetcalculation if using a userdefinied DMA-Memory mvsl32.dll 4,1,2,4 ---------------------------------------------------------------------------------------------------------- 02.06.2003 (ug) bugfix queueing mode: unlock queue immediately if using the live mode mvsl32.dll 4,1,2,5 bugfix snapmode: sometimes BT do not capture directly after live. matrixfg.sys 1,94,0,0 mvsigma.sys 1,0,0,16 matrixfg.vxd 2,43,0,0 ---------------------------------------------------------------------------------------------------------- 12.06.2003 (ug) bugfix mvMapUserMemory (): arraysize corrected mvsl32.dll 4,1,2,6 ---------------------------------------------------------------------------------------------------------- 25.06.2003 (ug) messagebox () called with TOPMOSt flag. bugfix message-handling instinf.exe 1.0.0.3 ---------------------------------------------------------------------------------------------------------- 14.07.2003 (ug) bugfix GetBoardInfo (), mappingsize corrected mvsl32.dll 4,1,2,7 ---------------------------------------------------------------------------------------------------------- 16.07.2003 (ug) default vgamemorysize increased to 64 MB error handling for wrong acquiredef parameter changed, now set acuqire-def parameter to default values and preventing capturing if detecting wrong sizes and offsets outside the DMA-Memory. mvsl32.dll 4,1,2,8 ---------------------------------------------------------------------------------------------------------- 16.07.2003 (ug) installation with Win98/Me, comment added for manually install instinf.exe 1,0,0,4 ---------------------------------------------------------------------------------------------------------- 18.07.2003 (ug) delay function: removing all polling function, now checks a oswin32.dll 2,6,4,16 timestamp bugfix SetProcessWorkingSetSize (), multiplikation removed memorylist for preventing multiple memory mapping debugversion uses now OutputDebugString ---------------------------------------------------------------------------------------------------------- 18.07.2003 (ug) bugfix setvideotiming: update riscsequence and register if vt will be changed. bugfix selexttrig: access violation deleted (osSetIsrCmd) mvWaitForSnap (): only size copied to result, internal check to size-parameter changed. mvsl32.dll 4,1,2,9 ---------------------------------------------------------------------------------------------------------- 31.07.2003 (ug) bugfix queueingmode: mask out index form acquire-start_addr mvsl32.dll 4,1,2,10 ---------------------------------------------------------------------------------------------------------- 20.08.2003 (ug) queueingmode: mVAbortSnap now signals and releases mvWaitForSnap (). WaitForSnap then returns WFS_ABORTED. bugfix triggermode: TriggerFlipflop was reseted at the wrong moment, so the fieldfreq can't be reached. This bug will be fixed with the new driver. matrixfg.sys 1,95,0,0 mvsigma.sys 1,0,0,17 matrixfg.vxd 2,44,0,0 mvsl32.dll 4,1,2,11 ---------------------------------------------------------------------------------------------------------- 27.08.2003 (ug) changes in installfunction to avoid problems with W2k-SP4 instinf.exe 1.0.0.5 ---------------------------------------------------------------------------------------------------------- 29.08.2003 (ug) all edit fields changed for user-friendly handling setdma.exe 2.0.0.1 ---------------------------------------------------------------------------------------------------------- 18.09.2003 (ug) bugfix ntsc-interlace mode: wrong colorfmt corrected if capturing to vga and pc-memory simultaneously mvsl32.dll 4,1,2,12 kerneldrivers: errorhandling added for livemode matrixfg.sys 1,96,0,0 mvsigma.sys 1,0,0,18 matrixfg.vxd 2,45,0,0 ---------------------------------------------------------------------------------------------------------- 24.09.2003 (ug) bugfix ntsc: wrong scalingsize corrected if capturing field0 and field 1 to different memory's. mvsl32.dll 4,1,2,13 ---------------------------------------------------------------------------------------------------------- 17.10.2003 (ug) bugfix stop/abortsnap (), stopcontinoussnap had partially no affect. This condition can only occur when calling stopcontinoussnap() directly after startcontinoussnap(). mvsl32.dll 4,1,2,14 matrixfg.sys 1,97,0,0 mvsigma.sys 1,0,0,19 matrixfg.vxd 2,46,0,0 ---------------------------------------------------------------------------------------------------------- 05.11.2003 (ug) bugfix opendevice () with 16 boards mvsl32.dll 4,1,2,15 ---------------------------------------------------------------------------------------------------------- 18.11.2003 (ug) bugfix queueingmode: accessviolation occured if aborting the function mvWaitForSnap (). matrixfg.sys 1,98,0,0 mvsigma.sys 1,0,0,20 matrixfg.vxd 2,47,0,0 ---------------------------------------------------------------------------------------------------------- 21.11.2003 (ug) bugfix linearbuffer: some conditions results to a false pointer changes mapping vga-mem: only visible area will be mapped, if necessary (overlay) driver remaps the internal lists. mvsl32.dll 4,1,2,16 ---------------------------------------------------------------------------------------------------------- 01.12.2003 (ug) synchron inputswitching added, now it is possible to switch inputs without any delay mvsl32.dll 4,1,2,17 mvsigma.sys 1,0,0,21 matrixfg.sys 1,99,0,0 matrixfg.vxd 2,48,0,0 ---------------------------------------------------------------------------------------------------------- 19.12.2003 (ug) interface added for MV internal performancetests mvsl32.dll 4,1,2,18 mvsigma.sys 1,0,0,22 matrixfg.sys 1,100,0,0 matrixfg.vxd 2,49,0,0 ---------------------------------------------------------------------------------------------------------- 12.02.2004 (ug) bugfix planarmode: splitting riscprogram corrected mvsl32.dll 4,1,2,19 ---------------------------------------------------------------------------------------------------------- 09.03.2004 (ug) Improved log messages oswin32.dll 2.6.4.17 mvsl32.dll 4,1,2,20 interlaced filter disabled (fast input switch) mvsigma.sys 1,0,0,23 ! only available for windows 2000 / XP ---------------------------------------------------------------------------------------------------------- 20.04.2004 (ug) SQ-boardvariant added, risprogram memory can be mvsl32.dll 4,1,3,0 set to driverexternal allocated buffer sigma-capturecontrol ported to linux matrixfg.sys 1,101,0,0 matrixfg.vxd 2,50,0,0 ---------------------------------------------------------------------------------------------------------- 28.04.2004 (ug) pci-log: strings for know pcichips added constants pci_max_slots pci_max_bridges raised oswin32.dll 2,6,4,18 ---------------------------------------------------------------------------------------------------------- 28.04.2004 (ug) advanced error handling only available if debuglevel is set to 1 or higher constant pci_max_slot and pci_max_bridge raised for PCI-Systems with slotnumber > 32 and busnumber > 16 mvsl32.dll 4,1,3,1 ---------------------------------------------------------------------------------------------------------- 03.05.2004 (ug) bugfix multiplesnapasync (), in previousversion this function doesn't work (ver. 4,1,1,19 last known working version) mvsl32.dll 4,1,3,2 ---------------------------------------------------------------------------------------------------------- 13.05.2004 (ug) bugfix inf-file: unnecessary infcopy removed, names corrected wdm-startoption changed to DEMAND_START mvsl32.inf ---------------------------------------------------------------------------------------------------------- 13.05.2004 (ug) bugfix queueingmode, fill snapqueue independent from dma-list-generating bugfix multiplesnapasync, driverthread for multiplesnapasy wasn't started. some debugout, only debug-version funct WriteDWORDPCIRegCC () as userfunct. added mvsl32.dll 4,1,3,3 registerupdate check added snapstarterror always logged mvsigma.sys 1,0,0,24 ---------------------------------------------------------------------------------------------------------- 02.06.2004 (ug) linear dmabuffer: needed riscprogram (dmalist) is currently located in a virtual buffer, --> complete linear buffer can be used for capturing mvsl32.dll 4,1,3,4 ---------------------------------------------------------------------------------------------------------- 21.06.2004 (ug) check baseclass and subclass identifier oswin32.dll 2,6,4,19 ---------------------------------------------------------------------------------------------------------- 21.06.2004 (ug) bugfix last line capture: internal identifier to stop capture modified. singlesnapasync (): signal event independent from dev_error mvsl32.dll 4,1,3,5 ---------------------------------------------------------------------------------------------------------- 23.06.2004 (ug) bugfix: check baseclass and subclass identifier oswin32.dll 2,6,4,20 ---------------------------------------------------------------------------------------------------------- 19.07.2004 (ug) new colorformat: COL_YC_PL_BLOCK, transfer planarmode into separate planes Eeprom ReadFunction adapted mvsl32.dll 4,1,3,6 ---------------------------------------------------------------------------------------------------------- 27.07.2004 (ug) only snapqueue: errorhandling for detecting an absent camera changed and errorhandling can be changed with debuglevel. important: ERR_FIFO_OVERRUN only available with a debuglevel > 0 mvsl32.dll 4,1,3,7 mvsigma.sys 1,0,0,25 ---------------------------------------------------------------------------------------------------------- 05.08.2004 (rs) bugfix: osMapMemorySpace(), reason: test purposes oswin32.dll 2,6,4,21 ---------------------------------------------------------------------------------------------------------- 16.08.2004 (ug) bugfix timeout waitforisr (): function returns immediately when using negative timeoutvalues, but type of timeout is unsigned long. Now complete 32 bit can be used for timeout. oswin32.dll 2,6,4,22 ---------------------------------------------------------------------------------------------------------- 17.09.2004 (ug) setgain (): if using queueingmode gainvalue will be set for each channel if anything is changed Digital IO: digital io's can be influenced during opendevice with writedigio () called before initboard (inifile) a user defined value will be written to the outputs or a new userfunction keepdigitaloutput () prevents any changes of digital outputs during opendevice. Previous value will be keeped. mvsl32.dll 4,1,3,8 mvsigma.sys 1,0,0,26 ---------------------------------------------------------------------------------------------------------- 24.09.2004 (ug) changes in setgain() for SQ and Delta: gain-curve corrected mvsl32.dll 4,1,3,9 ---------------------------------------------------------------------------------------------------------- 19.10.2004 (ug) bugfix selinput (): if selecting another channel, then channel depent gain- and offsetvalue will be set automatically from the driver. This feature is now working correctly. mvsl32.dll 4,1,3,10 ---------------------------------------------------------------------------------------------------------- 19.10.2004 (ug) only mvSIGMA CaptureControl: registerupdate check added snapstarterror always logged errorhandling for detecting an absent camera changed Gain-Value added to queueingmode --> gain can be set for each input matrixfg.sys 1,102,0,0 matrixfg.vxd 2,51,0,0 ---------------------------------------------------------------------------------------------------------- 19.11.2004 (ug) bugfix SnapQueue: some function sequence results in wrong errorhandling in SingleSnap. e.g. SingleSnap always set err_no_camera although a camera is connected. This behaviour is fixed. bugfix errorhandling SetAcquireDef: memory calculation corrected, previous version miscalculates wrong pitch for needed memory. This results in wrong error_codes ERR_NO_MEM although there is enough memory. mvsl32.dll 4,1,3,11 mvsigma.sys 1,0,0,27 matrixfg.vxd 2,52,0,0 bugfix watchdog: removing a device from transfering data corrected. Only if closing the fileaccess to matrixfg aborts any outstanding dma-transfer. matrixfg.sys 1,103,0,0 ---------------------------------------------------------------------------------------------------------- 29.11.2004 (ug) mvsetgain (): this version checks the range of the gain parameter. Gainvalues < 1024 are set to 1024 mvsl32.dll 4,1,3,12 ---------------------------------------------------------------------------------------------------------- 30.11.2004 (ug) bugfix MAX_BRIDGE_NUM and MAX_SLOT_NUM corrected in os.h Now these constants are set to values defined in the pci-spec this means max_slot = 32 and not 64, max_bus = 256 and not 16 oswin32.dll 2,6,4,24 recompiled with current oswin32 version mvsl32.dll 4,1,3,13 ---------------------------------------------------------------------------------------------------------- 14.12.2004 (ug) bugfix setgain () only SQ: wrong warning removed if setting gain to a different channel. Adaptive AGC: new interpreter function: SetAdaptiveAGC (mode [on 1, or off 0], whitecrushupcnt [0 - 0x3f], whitechrushdowncnt [0 - 0x3f]) BT878 and Fusion 878 have a adaptive AGC to handle videosignals with different video/sync proportion. use it in the inifile with: setadaptiveagc 1 0x4000 0x4000 (param = 0x4000 means no change) mvsl32.dll 4,1,3,14 ---------------------------------------------------------------------------------------------------------- 14.12.2004 (ug) changes in the capturecontrol related to setgain (), only for queueingmode. (write off DAC-Value moved from vsync to lastline interrupt to set the DAC-Value before next vsync) This avoids any errors related to strongly attenuated signals mvsigma.sys 1,0,0,28 ---------------------------------------------------------------------------------------------------------- 11.01.2005 (ug) bugfix snapqueue: errorhandling improved if queue is filled bugfix setvideotiming: if changing vertical startposition now next snap captures correct images mvsl32.dll 4,1,3,15 ---------------------------------------------------------------------------------------------------------- 21.01.2005 (ug) bugfix mvMapUserMemory (): algin to 4 KB (Pagesize) corrected mvsl32.dll 4,1,3,16 ---------------------------------------------------------------------------------------------------------- 24.02.2005 (ug) driver install: inf-file copy added again mvsl32.inf ---------------------------------------------------------------------------------------------------------- 16.03.2005 (ug) bugfix selinput (): only SLC SLG revision 3.10 - 3.12 input select will not be queued anymore mvsl32.dll 4,1,3,17 ---------------------------------------------------------------------------------------------------------- 22.03.2005 (ug) some functions added for testing the luma peakfilter mvsl32.dll 4 1 3 18 ---------------------------------------------------------------------------------------------------------- 04.07.2005 (ug) recompiled with actual header mv.h mvsl32.dll 4 1 3 19 ---------------------------------------------------------------------------------------------------------- 28.07.2005 (ug) bugfix opendevice(): some PC enumerates the devices different to our method. The problem can be, OpenDevice returns NO_ERR but has opened the wrong device. With this constellation the driver couldn't work in a correct manner. Now this problem is fixed, driver calls during opendevice additional information from the kernel. mvsl32.dll 4 1 3 20 oswin32.dll 2 6 4 25 mvsigma.sys 1 0 0 29 ---------------------------------------------------------------------------------------------------------- 03.08.2005 (ug) bugfix mvGetInfo() and mvGetBoardInfo(). Reading wrong EepromInfo if differences in pci-enumeration. This issues is now fixed. oswin32.dll 2 6 4 26 mvsl32.dll 4 1 3 21 ---------------------------------------------------------------------------------------------------------- 30.08.2005 (ug) bugfix osIinitKernel() only Win98/NT: missing kernel-access initialization added oswin32.dll 2,6,4,27 ---------------------------------------------------------------------------------------------------------- 30.08.2005 (ug) additional bugfix mvGetInfo() from 03.08.2005 wrong internal boardhandling used during reading eeprom only if working with more then 4 devices. This bug is now fixed. mvsl32.dll 4 1 3 22 ---------------------------------------------------------------------------------------------------------- 05.10.2005 (ug) new os-interfacefunction: osAllocLinearDMABuffer() and osFreeLinearDMAbuffer(). These functions access a buffer-handler for administrate the linear buffer for multiple use (more then one grabber in a system) oswin32.dll 2,6,4,28 matrixfg.sys 1,104,0,0 ---------------------------------------------------------------------------------------------------------- 06.10.2005 (ug) recompiled with current header mv.h mvsl32.dll 4 1 3 23 ---------------------------------------------------------------------------------------------------------- 03.11.2005 (ug) oswin32dll: new function osGetMaxLinearDMABufferSize_kB() matrixfg rebuild with win2kddk build environment oswin32.dll 2,6,4,29 matrixfg.sys 1,105,0,0 only version incremented mvsl32.dll 4 1 3 24 ---------------------------------------------------------------------------------------------------------- 16.11.2005 (ug) bugfix opendevice() switch always to channel 1 after init mvsl32.dll 4 1 3 25 ---------------------------------------------------------------------------------------------------------- 17.11.2005 (ug) oshandle check added to function osDisplayInfo() oswin32.dll 2,6,4,30 ---------------------------------------------------------------------------------------------------------- 01.03.2005 (ug) sigma sqe added mvsl32.dll 4 1 3 26 ---------------------------------------------------------------------------------------------------------- 30.03.2006 (ug) installer: searching new hardware improved instinf.exe 1,0,0,7 ---------------------------------------------------------------------------------------------------------- 31.03.2006 (ug) recompiled driver-dll, some changes for handling boardtype SQe mvsl32.dll 4,1,3,27 ---------------------------------------------------------------------------------------------------------- 05.04.2006 (rs) mvSetLogDevice() is now device specific, muliple Logfiles in mvsl32.dll 4,1,3,28 one process now possible ---------------------------------------------------------------------------------------------------------- 06.04.2006 (ug) bugfix GetBoardInfo(): boardid from info_t struct was missed mvsl32.dll 4,1,3,29 ---------------------------------------------------------------------------------------------------------- 07.04.2006 (ug) mvSetLogDevice() is now device specific, muliple Logfiles in mvsl32.dll 4,1,3,30 one process now possible ---------------------------------------------------------------------------------------------------------- 12.04.2006 (ug) bugfix queueingmode, now first snap sets all register changes correct, previous versions have problems if changing the videotiming (vertical startpos) and starts directly with snapqueue mvsl32.dll 4,1,3,31 ---------------------------------------------------------------------------------------------------------- 21.04.2006 (rs) Bugfix: mvSetLogDevice() mvsl32.dll 4,1,3,32 ---------------------------------------------------------------------------------------------------------- 28.04.2006 (rs) bugfix: SLC revision 5.0 with driverversions 4,1,3,29 .. 4,1,3,32 it is not possible to switch channels. mvsl32.dll 4,1,3,33 ---------------------------------------------------------------------------------------------------------- 20.06.2006 (ug) bugfix acquiredef lineinc. Older version (since 4 1 3 5) calculates wrong pitch if app sets a acquiredef lineinc. mvsl32.dll 4,1,3,34 ---------------------------------------------------------------------------------------------------------- 27.06.2006 (ug) timebase moved from cpuclkcounter to performancecounter. The resolution of this counter is enough for our purpose. mvsigma.sys 1,0,2,0 ---------------------------------------------------------------------------------------------------------- 27.06.2006 (ug) only version incremented mvsl32.dll 4,1,3,35 ---------------------------------------------------------------------------------------------------------- 05.09.2006 (hg) for Windows: only version incremented 4,1,3,36 for Linux: more robust initialisation, board number ordering works correctly ---------------------------------------------------------------------------------------------------------- 28.09.2006 (hg) for Windows: only version incremented 4,1,3,37 for Linux: corrected segmentation fault seen on some mainboards ---------------------------------------------------------------------------------------------------------- 05.10.2006 (ug) only version incremented mvsl32.dll 4,1,3,37 ---------------------------------------------------------------------------------------------------------- 06.11.2006 (ug) bugfix devicehandle->devicetype: previous drvVersions do not set a legal devicetype if using a DELTA. all constants which defines in any form a maximum number for PCI bus/slots deleted and substitutes with the definitions from os.h oswin32.dll 2,6,4,31 mvsl32.dll 4,1,3,38 ---------------------------------------------------------------------------------------------------------- 08.02.2007 (ug) bugfix SQe WriteEeprom: set/reset writeprotection added mvsl32.dll 4,1,3,39 ---------------------------------------------------------------------------------------------------------- 19.03.2007 (ug) Vista Compatibility improved, Aero will only be disabled when mvsl32.dll 4,1,3,40 using 'hardlive' (direct display memory access) oswin32.dll 2.6.4.32 ---------------------------------------------------------------------------------------------------------- 20.09.2007 (ug) bugfix: wrong error message from function selcolormode() removed. This was a sideeffect of disabling hardlive. mvsl32.dll 4,1,4,41 ---------------------------------------------------------------------------------------------------------- 16.11.2007 (ug) bugfix mapping of a systemresource, protectionmode changed matrixfg.sys 1.106 ---------------------------------------------------------------------------------------------------------- 16.11.2007 (ug) osAllocNonPagedPool() win98 compatibility oswin32.dll 2,6,5,33 ---------------------------------------------------------------------------------------------------------- 21.11.2007 (ug) only version number increased because of new oswin and matrixfg mvsl32.dll 4,1,5,42 ---------------------------------------------------------------------------------------------------------- 11.02.2008 (ug) bugfix mvWaitForSnap, waitforsnap will now be released with mvAbortSnap and returns in this case with WFS_ABORTED mvsl32.dll 4.1.6.43 mvsigma.sys 1.0.3.1 ---------------------------------------------------------------------------------------------------------- 28.02.2008 (ug) new behaviour added to mvAbortSnap: if calling with wParam = 2 only current snap_request will be removed from capturecontrol. wdm_driver general files for power- and plugandPlay handling updated to newer versions. mvsl32.dll 4.1.7.44 mvsigma.sys 1.1.4.2 ---------------------------------------------------------------------------------------------------------- 29.02.2008 (ug) bugfix initboard: external triggermode set to off mvsl32.dll 4.1.8.45 ---------------------------------------------------------------------------------------------------------- 10.09.2008 (ug) related only windows: bugfix calculation timestamp for snap result structure. mvsl32.dll 4.1.9.46 wdm-kernel replaced with certified driver mvsigma.sys 1.1.5.3 note: this driver installation is not prepared to install the whql certified driver ---------------------------------------------------------------------------------------------------------- 24.02.2009 (ug) usereeprom handling added to wdm kernel oswin32.dll 2.6.6.35 mvsl32.dll 4.1.10.47 ---------------------------------------------------------------------------------------------------------- 03.04.2009 (ug) changes in bufferhandling, risc buffer will permanently be mvsigma.sys 1.1.6.4 allocated from wdm-kernel. Usermode DLL ask kernel for the mvsl32.dll 4.1.11.48 risc buffer address. ---------------------------------------------------------------------------------------------------------- 10.11.2009 (ug) dmabuffer allocation changed: DMA_ADAPTER Object added and HalAllocCommonBuffer replaced with AdapterObjectfunction; commonbuffer memory pool prepared; if commonbuffer allocation failed Allocator is now initialised with Zero to avoid any system halts; matrixfg.sys 1.107.0.0 ---------------------------------------------------------------------------------------------------------- 10.11.2009 (ug) version number incremented mvsl32.dll 4.1.12.49 ---------------------------------------------------------------------------------------------------------- 22.02.2011 (ug) changes related to WOW64 support for sigma-grabber. Now all matrixfg.sys 1.109.0.0 sigma grabber are able to run under Windows x64 systems in mvsigma.sys 1.1.8.6 WOW64 mode. This means the applications which capture the oswin32.dll 2.6.7.36 images runs under 32 bit, only the necessary kernelmodedrivers runs under 64 bit. The install process is different to the 32 bit Windowsversions and will be achieved from a separat msi file (mvSDKSigma-x64.msi) ---------------------------------------------------------------------------------------------------------- 22.02.2011 (ug) version number incremented mvsl32.dll 4.1.14.51 ---------------------------------------------------------------------------------------------------------- 25.03.2011 (ug) version number incremented mvsl32.dll 4.1.15.52 bugfix allocating virtual buffer for x64 driverversion matrixfg.sys 1.110.0.0 oswin32.dll 2.6.8.37 ---------------------------------------------------------------------------------------------------------- 04.04.2011 (ug) version incremented mvsl32.dll 4.1.16.53 bugfix free dma-buffer improved, previous version has a problem matrixfg.sys 1.111.0.0 if closing the devices in a different order. ---------------------------------------------------------------------------------------------------------- 21.04.2011 (ug) version incremented mvsl32.dll 4.1.17.54 bugfix osAllocLinearDMABuffer() - set dma_addr oswin32.dll 2.6.9.38 ----------------------------------------------------------------------------------------------------------