Daqarta for DOS Contents



Free Registration

Contact Us
Daqarta for DOS
Data AcQuisition And Real-Time Analysis
Shareware for Legacy Systems

From the Daqarta for DOS Help system:



If the data acquisition board is being used in DMA mode for RTime operation, then DDisk recording should work just fine. DMA mode is standard on most consumer sound boards, but some lower-cost laboratory-grade boards don't offer it, and parallel port and PCMCIA card devices don't have access to it. In these cases, RTime mode is done via an interrupt on each sample. This method is also used even on certain lab-type boards that support DMA, if they are also called upon to generate stimuli via the DAC or digital I/O during data acquisition.

But each sample requires an interrupt, and if your hard drive BIOS locks out interrupts during transfers, as most do, some samples could be missed. Daqarta sends data from the internal buffer to the disk once each 32 KBytes (16 Ksamples, unless you have an 8-bit board), so discontinuities could appear regularly in your data at that interval.


Daqarta sample interrupts are very brief and don't affect hard drive data transfers in the systems tested so far. So it is possible to replace your BIOS with one that leaves interrupts enabled. Such a replacement is provided with Daqarta as a plug-in module called DDISK13A.DRV. If you include this in your DQA.CFG file, it will be used to replace the BIOS INT 13h for DDisk recording ONLY... all other file transfers will use the normal BIOS.

In contrast to the earlier version of this driver (DDISK13), DDISK13A can handle much larger drives (up to 8.4 Gbyte) and fully supports LBA (Logical Block Addressing). More importantly, when Daqarta starts up this driver will conduct tests to insure that it understands the geometry of your drive. It will move the heads to 17 different positions that span the entire drive, and check to make sure that they moved where they were supposed to. You will hear a brief "zip" on start-up when this takes place. These are "seeks" which do not write anything, just move the heads. Only if DDISK13A is satisfied that it can work properly with the drive will it then proceed with the installation. Otherwise, it will cause Daqarta to exit immediately (right after the logo) with:

    'Non-standard drive geometry translation.'

You'll also see this message with non-IDE/ATA drives such as SCSI... DDISK13A won't work with them.

DDISK13A.DRV will not load with drives over 8.4 Gbyte, since those drives require a special BIOS interface that this driver does not yet support. Daqarta will exit with:

    'DOS is using INT 13h extensions
      (Drive over 8.4 GB.)
    Not supported by DDISK13A.'

It will also not load on PC/XT computers that use the 8088 CPU chip, since those typically use DMA for disk transfers anyway. The exit message will be:

    'Not for use on 8088 (PC/XT) machines.'

DDISK13A normally assumes drive primary drive C:, but if you have a second drive (not another partition on your primary drive) you can tell DDISK13A to only be used on secondary drive accesses via a D:1 parameter on the DDISK13A line of DQA.CFGDQA.CFG:

    DDISK13A.DRV    D:1

Although DDISK13A has been carefully written, and tested on a variety of drives, and although it performs its own tests when it loads, there are simply too many drives out there to test them all. So use this at your own risk... it is most definitely NOT, NOT, NOT guaranteed! No problems have been found so far, even at sample rates over 100 KHz, but you don't want to become the first.

One precaution you can take is to load DDISK13A, but not actually activate it by starting DDisk. Use ALT-H to see the list of installed drivers, and scroll down to DDISK13A and hit ENTER. You will see a summary screen that tells what the driver found on start-up, namely the number of Cylinders, Heads, and Sectors/Track, as well as total sectors on the drive. (A sector holds 512 bytes.) If these values don't agree with what you think the drive has, proceed with caution.

One additional test you can run is the DRV_TEST utility (available from the Daqarta download page). This does a larger number of seek operations (64) to verify proper access, and it provides more information about the drive. However, note that this tests the size of the drive as reported by DOS, which is apparently limited to 8.4 GB. Larger drives may pass this test, but still won't be accepted by DDISK13A.

The most sensible thing to do for safety (even if everything appears OK and you want to be extra-secure) is to back up your entire drive. Then include DDISK13A.DRV somewhere in your DQA.CFG file after the first 4 lines. Test THOROUGHLY, with the maximum sample rate and with the maximum number of active STIM3A outputs that you will use. You want to make the system fail here under your watchful eye, not down the road somewhere. PLEASE REPORT ANY PROBLEMS.


But maybe you don't really need DDISK13.DRV to get useful results. You might be able to live with the occasional glitches, depending on your application. If you want to see just how bad the glitch problem is under any given condition, one easy way is to use the DEMO.ADC board driver in place of your normal board driver as the first line of your DQA.CFG file.

This "board" looks at the system timer output of your mother board and converts it to data values that increase in a ramp or staircase fashion, then drop back and repeat. The advantage of this signal is that it is very regular, so any glitch will show up easily as a discontinuity in the smooth ramp, and as a change in the timing between peaks. Use the scrolling playback method to simplify the search for problems.


Systems such as laptops or some "green" PCs that shut down the hard drive after a certain period of inactivity can cause problems during DDisk recording. If the time-out interval is shorter than the time required for Daqarta to acquire 32 Kbytes of data at the sample rate you are using, the drive motor will be OFF when Daqarta tries to write to it. The drive will then need to go through a power-up cycle to get the motor up to speed, which is very slow compared to typical incoming data rates. There will almost certainly be a loss of data under these conditions.

In order to avoid this problem, you will need to modify the power management settings of your system. Ideally, your laptop will provide some special key combination like Fn-ESC to invoke a menu for changing these settings without rebooting your system. Finding this key combination may require a careful reading of the owner's manual. If a hot-key method is not provided, you will probably need to run the standard SETUP utility, perhaps invoked via some control-key combination like CTRL-ALT-S. Consult your system documentation for details. Unfortunately, SETUP programs tend to be exceedingly user-hostile in that they force you to reboot your system for ANY change, whether the reboot is really needed or not.

In determining the optimum shut-off time, consider the effects of disk cacheing, which can increase the time between disk accesses. You may want to avoid the Cache option in the DDISK WRITE menu to reduce problems.

There is also the standard POWER.EXE driver that comes with DOS. This attempts to control your system's power management hardware directly, but it offers only very crude control. You will probably not find this approach useful, but it might be worth a try.


Instead of a RAM drive, you will always be much better off to use the DDisk Memory write mode. This is not only much quicker and easier to use, but also allows for better sharing of memory with Play files used by STIM3A. It also allows you to save DDisk files to floppy drives.

Besides hogging memory, the big problem with RAM drives is that they are VOLATILE, and contents must be saved to a "real" drive before you shut off your machine. Daqarta does not contain any provisions to do this automatically.

If you have RAMDRIVE.SYS in your CONFIG.SYS file, it is strongly recommended that you remove it.


Questions? Comments? Contact us!

We respond to ALL inquiries, typically within 24 hrs.
25 Years of Innovative Instrumentation
© Copyright 1999 - 2006 by Interstellar Research