Help: ICE_DRIVERS_WIN

Windows ICE-DSP Driver Installation Notes


Load the ICE software tree onto the system.  The environment symbol ICEROOT
should be defined pointing to root of this tree.  

The driver files are in the %ICEROOT%\drv\w2k, \wnt, or \w9x directories. 

This driver uses the WDM generic driver model supporting Win98 and Win2000 
platforms.  A non-PnP version was developed to support older NT4 platforms.
Windows-NT users are advised to upgrade to Windows-2000.

If this is your first time, read the special RAM handling section below.

To install the driver on Win98 or Win2000:

1. Edit the BOOT.INI file to reserve physical RAM for high speed DMA.
2. Edit the Icepic.inf file in the  %ICEROOT%\drv\w2k or \w9x directory 
to setup the RAM allocation parameters for your platform. 
3. Reboot the system.
4. If the system does not automatically detect the new hardware,
select 'Add Hardware' from the Control Panel and let it find the new 
Plug-n-Play PCI devices.
5. Select 'Browse for new driver files' and find the %ICEROOT%\drv\w2k 
or \w9x area depending on your platform. 

To install the driver on WinNT:

1. Edit the BOOT.INI file to reserve physical RAM for high speed DMA.
2. Edit the icepic.reg file in the  %ICEROOT%\drv\wnt directory 
to setup the RAM allocation parameters for your platform. 
3. Run icepic.reg and reboot the system.

That's all there is to it.  The device names are Icepic0, Icepic1, ... IcepicN. 

NeXtMidas users should enter this name in the device name slot in the
hardware configuration table as shown in the examples below:  

  PIC1==ICEPIC,DEVNO=0,IOM=xxx, 
  PIC2==ICEPIC,DEVNO=1,IOM=xxx, 
  PIC3==ICEPIC,DEVNO=2,IOM=xxx, 
or
  PIC1==ICEPIC,PCI-DEV,Icepic0,,,IOM=xxx, 
  PIC2==ICEPIC,PCI-DEV,Icepic1,,,IOM=xxx, 
  PIC3==ICEPIC,PCI-DEV,Icepic2,,,IOM=xxx, 

See HELP PIC_OPEN for hardware file setup details.
   
To exercise the cards, use the mid-level driver libraries in the ./lib area of
this software tree.  A small test program in the ./test area may be used to run
a series of tests on the card.  An NeXtMidas macro and primitive are also 
available to run more diagnostic tests on each card.  See test/readme.txt.

********************************
 Special RAM Handling in Windows
********************************

Since Intel machines cannot map contiguous PCI address space into contiguous
virtual address space, it is necessary to allocate contiguous physically 
addressable RAM buffers to support high speed dma and mmap() them to virtual 
addresses for user programs to access the data.

In Win2000, this is done by reserving a piece of physical memory for the 
ICE-PICs high speed DMA.  This physical memory can be mapped to a ramdisk, as
in NeXtMidas, for allocation management and convenient access.

To reserve the upper part of memory, add the /maxmem=n switch in the BOOT.INI
file which sits on the boot drive root directory, normally c:\boot.ini .
This tells the operating system to not use any of the memory above this value.
The following shows an example BOOT.INI file for Windows-2000 with the mods:

 [boot loader]
 timeout=30
 default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
 [operating systems]
 multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional" /fastdetect /maxmem=112

The Icepic.inf file also needs to be modified to reflect your system.  The 
[Strings] section at the top of the icepic.inf file has the following entries:

 Ram.Start="112"
 Ram.SizeDisk="4"
 Ram.SizeMap="12"

In this example, the system has 128Mby of memory: 112Mby will be used 
by the operating system, and the rest (16Mby) will be reserved for a 
4Mby ramdisk (starting at 112M) and 12Mby mappable (starting at 112+4M).