VAPP Versions and Updates
Below are copies of the release notes from each version of VAPP. Each upgrade lists:
- Features of the new version
- Bugs fixed in this version
- Known bugs
- Other notes.
Vapp version 1.07 Jun 24,
2001
Features new to this
version:
- This version has been upgraded to work exclusively with Display Doctor 7.0,
which is now included with this distribution. A change in the design of this
companion product means that no separate installation is required, and no
user-setup is necessary. VAPP will locate, load, and automatically use the
Display Doctor when it needs it. If you have SDD 6.53 or earlier installed on
your computer when using this version of VAPP, you should comment out the
UNIVBE call in your AUTOEXEC.BAT file and reboot prior to using VAPP. This
includes:
- The pause command has been
implemented. If the operator at the VAPP console hits 'P' (Shift+p), the current
stimulus will complete its presentation, the background image (if any was
specified) will be put up, and VAPP will wait until 'P' is pressed again on the
keyboard before proceeding. A pause may also be triggered by putting the
word 'pause' anywhere in the list of commands for a stim.
- Added 'logkeyup' startup
option to supress (the default) echoing keyboard key releases in the log
file. Presses are always echoed.
Bugs fixed in this version:
- Comments can now include the reserved words 'include', 'subimage' or 'pgi'
without probems. Previous versions could not allow these words to appear
inside comments.
- Sound-only stimuli no longer cause errors when the 'nosound' startup
option is used.
- LOG file entries for stimuli now no longer reproduce the entire contents
of included files when include/subimage/pgi commands are used. Also, the
requested SOA and DUR for each stim is echoed in the LOG file as part of the
original text.
- Echoing of keyboard keystrokes has been fixed. In the last version, only key
releases were echoed in the LOG file, also spurious entries were included for
Shift/Ctrl/Alt key presses.
Known bugs:
- See the errata107.doc document for a list of unimplemented features.
VAPP version 1.06 Aug 26, 2000
Features new to this version:
- I have added the 'oldlumitouch' config option which enables the old four-button style response device instead of the new 8 button
one.
Bugs fixed in this version:
- No other bugs were fixed in this release.
Known bugs:
- This version of VAPP has been written to go with the upcoming release of Scitech Display Doctor 7.0, which is not yet available (not even to me). It will run fine with the 6.0 Display Doctor, but some video acceleration features are not available. This has turned out to be unimportant for all of the stim files I have tested with, but if you have very complex drawing happening in images in quick succession, you may find VAPP running out of time preparing images. If this happens, please e-mail me, then fall back to the previous VAPP.
Other notes:
- VAPP now works correctly with the Scitech Display Doctor version 6.53. If you are still using the "special" 6.0 version, you should upgrade now. This will enable correct operation at 1024x768 resolution. This fix was first released in version 1.03, dated Aug 15 1999.
VAPP version 1.05 Aug 17, 2000
Features new to this version:
- The 'waitforport' command line/config option has been added which works just like
'waitforkey', but waits for the end of a negative going pulse on the d0 pin on the first
parallel port. This is for use with the GE MRI machine with the special cable provided.
- The response device code has been modified to work with the new Lumitouch model 05000 8 button device. Support
for the old style response device is no longer available in this version, though if the old format is still needed,
I could make it run time configurable in a later version.
Bugs fixed in this version:
- No other bugs were fixed in this release.
Known bugs:
- This version of VAPP has been written to go with the upcoming release of Scitech Display Doctor 7.0, which is not yet available (not even to me). It will run fine with the 6.0 Display Doctor, but some video acceleration
features are not available. This has turned out to be unimportant for all of the stim files I have tested with, but if you have very complex drawing happening in
images in quick succession, you may find VAPP running out of time preparing images. If this happens, please
e-mail me, then fall back to the previous VAPP.
Other notes:
- VAPP now works correctly with the Scitech Display Doctor version 6.53. If you are still using the "special" 6.0 version, you should upgrade now. This will enable correct
operation at 1024x768 resolution. This fix was first released in version 1.03, dated Aug 15 1999.
VAPP version 1.04 Mar 19, 2000
Features new to this version:
- I have added the 'textpalette' option to the configuration parameters. This controls the handling of the palette for the standing background image, if one is used. If it is on (textpalette=1), then the standing background will reproduce most faithfully when under text and line-drawn images (no bitmaps). When
textpalette=0, the default, there will be no mapping of the background image's palette, and it will display with its own palette in the ISI, and with the palette of the visual stimulus during each 'DUR'. For further explanation, see the reference manual.
- I have added a very simple palette-snooper program which takes a BMP file and displays the numerical contents of its palette, if one is present. It is called PALETTE.EXE and will be included in the VAPP distribution from now on.
Bugs fixed in this version:
- No other bugs were fixed in this release.
Known bugs:
- This version of VAPP has been written to go with the upcoming release of Scitech Display Doctor 7.0, which is not yet available (not even to me). It will run fine with the 6.0 Display Doctor, but some video acceleration features are not available. This has turned out to be unimportant for all of the stim files I have tested with, but if you have very complex drawing happening in images in quick succession, you may find VAPP running out of time preparing images. If this happens, please e-mail me, then fall back to the previous VAPP.
Other notes:
- VAPP now works correctly with the Scitech Display Doctor version 6.53. If you are still using the "special" 6.0 version, you should upgrade now. This will enable correct operation at 1024x768 resolution. This fix was first released in version 1.03, dated Aug 15 1999.
VAPP version 1.03 Aug 15, 1999
Features new to this version:
- I have added a feature to synchronize the times returned by the CPU clock with those returned by the less precise 8253 chip (the old system clock chip). If you want to see consistent times between VAPP and software on other computers that depends on the old 8253 chip (like
CIRC), you want this feature enabled. It is on by default, but can be turned off by setting the config option
timerfix=0 in the CFG file or on the command line.
Bugs fixed in this version:
- The times recorded in response device events were coming back with a large constant offset (but which were increasing
correctly). This has been corrected.
- A fix previously applied to the response device interrupt handler has also been applied to the sound interrupt handler.
- VAPP now (finally) works correctly with the Scitech Display Doctor version 6.53. If you are still using the "special"
6.0 version, you should upgrade now. This will enable correct operation at 1024x768 resolution.
Known bugs:
- This version of VAPP has been written to go with the upcoming release of Scitech Display Doctor 7.0, which is not yet available (not even to me). It will run fine with the 6.0 Display Doctor, but some video acceleration
features are not available. This has turned out to be unimportant for all of the stim files I have tested
with, but if you have very complex drawing happening in images in quick succession, you may find VAPP running
out of time preparing images. If this happens, please e-mail me, then fall back to the previous VAPP.
VAPP version 1.02 June 9, 1999
Features new to this version:
- I have re-written the log file handling so that it will write out the log contents on an ongoing basis during the stim run, rather than buffering it in memory and writing
it all out at the end. This is done in cooperation with the internal scheduler in VAPP so there is no risk of the disk access interfering with stim presentation. The result of this is that you can now make much longer stim runs (10,000 stim or more) without encountering errors, which happened on some machines with the previous version.
- I have added the "nolog" and "nocsv" config options to disable either or both of the log files. These are boolean flags that default to false, so can be ignored if you
want to generate both log files as before.
- I have fixed an error in the sound playback that played spurious noise after the end of WAV files in some circumstances.
Known bugs: none
Notes:
- This version of VAPP has been written to go with the upcoming release of Scitech Display Doctor 7.0, which is not yet available (not even to me). It will run fine with the 6.0 Display Doctor, but some video acceleration
features are not available. This has turned out to be unimportant for all of the stim files I have tested
with, but if you have very complex drawing happening in images in quick succession, you may find VAPP running
out of time preparing images. If this happens, please e-mail me, then fall back to the previous VAPP.
VAPP version 1.01 beta build Nov 11 1998
Features new to this version:
- The sound library has been completely re-implemented. This means that you no longer need (and should not use) the STKRUN companion program. The limitations on file size and speed have all been lifted, though you can now only play WAV format files. Mono, Stereo, and CD-Quality sound are all supported, as are large files.
- the "ear" command, which must precede a "Sound" command, provides simple balance control. Setting ear=l or L
limits sound output to the left ear, ear=r or R for the right, and ear=b for both. Note that the balance setting stays in effect until changed again, so to only send a single stim to one ear, you must set ear=b in the following stim to reenable both speakers.
Known bugs:
- The sound support is limited to Sound Blaster compatible cards only.
- You cannot interrupt the playback of one sound with another. If you attempt to cut off a sound that is still playing, you will get an error and the program will exit. To play sounds in quick succession, be sure
that the ISI of each stim is sufficient to allow the sound to play completely. Note that this only applies to interrupting one sound with another. If you have a sound that is longer than the ISI of its stim, it will continue to play during the presentation of
the next visual stim provided there is no new sound.
- 16 colour bitmaps are not colour rendering properly in some cases. Use your paint utility to increase the
colour depth to 256.
Notes:
- Under some circumstances, there may be an audible "click" at the beginning of a sound. If you get this consistently with a sound, try putting 1-2 ms of blank space at the beginning of the WAV file.
- The Volume command works as before.
- I have not had the opportunity to run the new library on other sound cards yet to see if the performance is consistent across other versions of the Sound Blaster card. I will conduct these tests before lifting the "beta" designation from this distribution.
VAPP version 0.96 build Aug 9 1998
To install vapp, follow the installation instructions in readme90.txt.
Features new to this version:
- The nosound option has been added to the config file. Set this option =1 (or just name it) if you do not have a sound card installed in your computer, or if you want to suppress sound playback on computers which have sound cards installed.
- The outpp command has been implemented, which sends bytes out the parallel port. Note that this command must appear in the stim line after all of the video and sound commands.
DB25 pinout for parallel port:
1 ~Data strobe
2 Data 0
3 Data 1
4 Data 2
5 Data 3
6 Data 4
7 Data 5
8 Data 6
9 Data 7
10 ~Ack
11 Busy
12 Paper Empty
13 Select
14 Afd
15 ~Error
16 ~Reset
17 Select in
18-25 Ground
These pin numbers can usually be read directly from the molded plastic on the cable end, or on the
panel mount socket at the back of your computer, though you often need a bright light and a magnifier
to read them.
A name with a tilde (~) indicates inverted logic. The byte indicated in the outpp command is placed
on the Data 0 through 7 lines. The logic is noninverted, meaning that if you program a bit to 1, the voltage on
that pin is 5V, logic 0 gives 0V. The least significant bit appears on D0, msb on D7. The other lines are
controlled and read through the parallel port status and control registers. They are concerned with printer
control, and are not programmed or read by VAPP.
Bugs fixed:
- The standing background image feature has been repaired. Note that the standing background image is always
rendered in the standard palette. This means first, that if the image has a high colour count, most of
the colour depth will be lost, and second, that if a stimulus image is loaded that has its own custom
palette, that the background image will be rendered in that palette without colour translation. This
usually means snowy looking background images. If this turns out to be a persistent problem, it
may be possible to render the background image in the custom palette of the loaded bitmap.
I have corrected a startup problem that was preventing the initial volume from being set, and the graphics drawing
environment from being set.
Doing this has lifted the restriction that the sbg must be a BMP file. It may now be PCX or JPG as well.
Known bugs:
- 16 colour bitmaps are not colour rendering properly in some cases. Use your paint utility to increase the
colour depth to 256.
- When a stim containing a pgi file is listed in the log file, the entire contents of the pgi file are reproduced there. This will be corrected in future versions to only list the name of the included file.
Notes:
- The programming of the hardware palette takes about 710 uS on a p133 machine, which could overrun the
the vertical blank period at higher frame rates. If this were to happen, it could cause a flicker in the first few scan lines of the first frame of display of an image. I will do further testing to determine if this can happen.
- Syntax compatibility with VVSP stim and pgi files is not yet complete. There is an errata sheet with the
accompanying manual describing which portions have not yet been put in place.
VAPP version 0.95 build Jul 29 1998
To install vapp, follow the installation instructions in readme90.txt.
Features new to this version:
- The initial implementation of include files has been done. At any point in a
stimfile, you can include other command files by using one of the tags "include","pgi" or
"subimage" followed optionally by an = sign, and then a file name. Commands from this file are processed as part of the current image up to the end of the
included file, after which processing continues at the next token on the original stimfile line. Included files may include other files to any depth, though there is no check for circular includes.
- Any error messages generated during parsing of the in the stim file or pgi files now include the file name and the line count in that file.
- The "logfile=" command line option has been repaired so you can override the default
YYMMDDnn LOG and CSV file names.
- Support for '=' as a token delimiter has been added. This means that you can use an = sign to separate any stim command that requires a
value from that value.
- New image file formats are supported. VAPP now reads 24 bit BMP files, 256 colour bitmaps with
custom palettes. Support for JPG files has also been added, though it has not yet been fully
tested. Use image=fname.jpg, just as with bitmaps.
Bugs fixed:
- Rendering of 256 colour bitmaps has been corrected. Previous versions did not make correct use of the
bitmap palette, when present.
Known bugs:
- The correction of the palette handling for 256 colour images has broken the standing background (sbg) option. This option will be repaired in the next release.
- 16 colour bitmaps are not colour rendering properly in some cases. Use your paint utility to increase the
colour depth to 256.
- When a stim containing a pgi file is listed in the log file, the entire contents of the pgi file are
reproduced there. This will be corrected in future versions to only list the name of the included file.
Notes:
- The programming of the hardware palette takes about 710 uS on a p133 machine, which could overrun the the vertical blank period at higher frame rates. If this were to happen, it could cause a flicker in the first few scan lines of the first frame of display of an image. I will do further testing to determine if this can happen.
- Syntax compatibility with VVSP stim and pgi files is not yet complete. There is an errata sheet with the accompanying manual describing which portions have not yet been put in place.
VAPP version 0.94 build May 17 1998
To install vapp, follow the installation instructions in readme90.txt.
Features new to this version:
- If a stimulus cannot be presented because it has not finished rendering when its presentation time has come, the program now exits at that point, writing out a diagnostic message in the log file. Previously, message would be written to the log file but the stim run would continue.
Bugs fixed:
- Occasional hanging when the response device buttons were pressed has been fixed.
VAPP version 0.93 build Feb 22 1998
To install vapp, follow the installation instructions in readme90.txt.
Features new to this version:
- Addition of CSV output file format. A second output file is created along with the previous log file. This file has the same base name as the log file, but with the extension '.CSV'. This is a standard delimited file format directly readable by Excel, 123, an other spreadsheet programs. The CSV file only contains information gathered during the stim run, without any diagnostic information about the startup and shutdown. It has a single line of column headers at the top,
"Current Time","Time Occurred","Code","Action","Requested
time","Message/Value" with a column of information beneath each heading. The information in the first
column is the time that the entry was made in the log file, NOT when the event took place. The column that you will normally be interested in is the second one "Time Occurred". The Code is the user code you specified for that stim in the stim file. The "Requested Time" is the time that the event was supposed to take place, so you may want to watch for discrepencies between that and the "Time Occurred".
The "Action" is one of the five following events:
Stim Presented
Stim Removed
Key pressed
Key released
Button pressed
which are all pretty self-explanatory. The "Message/Value" field will contain the text description of the stimulus for stim presentation and removal, the keystroke for key press/release, and the button number for button presses. If a keystroke is an unprintable character, its ASCII value will be printed after a backslash,
eg. \27 for the escape key. Try reading this file with Excel and see how much easier it is to measure your response times!
- Added the 'logfile' option to the config file and the command line. If you want to change the name of the output file, specify logfile=myfilename on the command
line or in the config file. The name shouldn't include a period or file extension. The two output files for the run will be named myfilename.LOG and myfilename.CSV
- Changed the anykeyquits startup option to escapequits, so now the only way to end a run early is by hitting escape, and then only when the option is enabled. Its default value is 1 (on).
Bugs fixed:
- No bugs fixed in this release.
Notes:
- With the change in the option name from 'anykeyquits' to 'escapequits', you will find that you get an error message and premature death when reading old config files. You will have to edit them and change the old entry to the new one.
- The logfile name that you specify is only applied to the output files when the program exits. For the duration of the run, they still have the default naming scheme of YYMMDDnn.LOG|CSV. If the program dies for some reason, any files will not have been renamed, so look for them with the old style names.
VAPP version 0.92 build Dec 28 1997
To install vapp, follow the installation instructions in
readme90.txt.
Features new to this version:
- A volume command has been added to the sound playback. The keyword is 'volume', and it is followed by a number between 0 and 255. The volume keyword must precede the sound keyword that it applies to,
and both must come after the last graphical command in a stim. It is easiest to read the stim file if you put the volume command and
the sound command on a separate line following the last graphical command (using the coninuation marker, '+' at the end of the preceding line). The volume, once set, remains in effect until set again - it does not revert to the default value at the end of each stim. The volume on startup is 160.
- Support for the response device has been added. The response device button up and down events appear in the log file with the exact time that the transition took place (to within about a microsecond).
The selection of the response device serial port is through a new option in the CFG file, responseport=n. Set the response port to the com number, ie responseport=1 or responseport=2. Currently only COM1
and COM2 are supported. If the response device is not present, set
responseport=0 (this is the default value).
- Serial output has been added. If the config file parameter setoutport is set to 1,2,3, or 4, then stim codes, keystrokes, and response
device button presses are all echoed out the selected serial port. Stim codes are sent as single characters whose ascii value equals
the numerical value of the stim code specified in the stim file, so 65 appears as 'A', 66 as 'B' and so on. It's a good idea to keep an ASCII table handy when making up the stimfile so you know what to
expect on the other end. The keyboard characters are echoed without translation, and the response device buttons show up as the numbers 1 through 4. Note that there can be overlap - if the keyboard number '1' is pressed, you can't distinguish at the receiver whether this was from a keyboard or from response button 1, so it's up to you to keep the subjects from pressing keys that correspond to your stim codes or the numbers 1 through 4.
Serial output parameters are always set to 9600 baud, no parity, 8 data bits, 1 stop bit, no handshaking. You must set the receiver's serial communication parameters to match. Also note that if you want to watch the output on another computer through a terminal program for testing, you will need a null modem cable or adapter connecting the serial ports.
Bugs fixed:
- The conflict between the mouse driver and the video library has been resolved. You may now leave the mouse driver in place and the
screen display will function properly and not display garbage after program termination.
Notes:
- There is a problem with the signal coming from button 3 on the response device. According to the hardware signal, the "on" pulse from the button is extremely short (less than 2 microseconds), and does not stay on while the button is pressed the way the others do.
- The order of appearance of items in the log file does not necessarily correspond to their order of occurrence! The timestamp in the left margin for each item is the time that the log file entry was made, not
necessarily the time that the event actually occurred.
For some items (like response button presses and keystrokes) the exact time of the event is recorded in the body of the message and may
differ from the timestamp in the left margin.
Until the log file format is updated, you must sort through the messages and check the timestamps for responses to see if they
differ from the time the log file entry was made.
VAPP version 0.91 build Dec 11 1997
To install vapp, follow the installation instructions in
readme90.txt.
Notes:
There is a problem with the video library conflicting with the mouse driver. You will see garbage on the screen after running VAPP if the mouse driver is installed. You can avoid this by removing the mouse
from your AUTOEXEC.BAT.
To play an audio clip, include the 'sound' command after any visual commands on a stim line. You must use the whole name of the file, including the.DWD extension.
There are several limitations on sound files:
- They must start out in .VOC format
- They are limited to 64kb in size for a single sound.
- The sample rate must be below 24kHz
- They must be mono (not stereo)
- They must be 8 bit samples (not 16).
Features new to this version:
- The program can now be run from any directory once the directory containing the executable has been added to the path. On execution, the current directory is checked for all files
needed by VAPP, and anything found in the current directory will be used in preference to any other files. If a file cannot be found in the current directory, VAPP will look in
and around the executable directory, where VAPP.EXE resides.
The VAPP.CFG file will be searched for in the executable directory, all other resource files will be searched for in subdirectories under this directory as follows:
.DWD sound files SOUNDS
.FNT font files FONTS
.BMP image files BITMAPS
.PCX image files BITMAPS
Note that the stim file will only be searched for in the current directory under all circumstances. Presently,
the log file is also only created in the current directory.
- Keyboard presses are now recorded in the log file, both the key down and key up events, guaranteed accurate to 1 microsecond.
Note that all characters are reported as lower case, and the state of the shift,alt, ctrl and caps lock keys is not reported.
Bugs fixed:
- If the sound utility program STKRUN has not been run before VAPP, the program now exits gracefully with an error message
in the .log file. You are free to then start STKRUN and re-run VAPP. Previously the program would hang with the display showing the background image.
VAPP version 0.9 build Dec 09 1997
To install vapp:
1) Take the two disks labelled "Scitech Display Doctor" and use pkunzip to put them onto a temporary directory on your hard drive.
2) Run the install.exe program that comes from the zip file. This will install the Scitech display doctor driver that is needed to access the video card. The user name
and password are located in the VAPP binder.
3) Install the programs "VAPP.EXE", "STKRUN.EXE", and "VOC2DWD.EXE"
in the vapp directory that you are currently using.
Every time you record new .VOC files
1) Take any new .VOC files and run VOC2DWD on them to produce a DWD file. You will name the
.DWD file in the sound command in the stim files.
Before every run
1) You must run the utility STKRUN.EXE after booting your computer. You needn't run it between vapp
settions, but it must be run before the first. If it is not run, the program will hang in the initialization. I intend to remove the need for this program as soon as possible, but it is required for this beta release.
Notes: There is a problem with the video library conflicting with the mouse driver. You will see garbage on the screen after running VAPP if the mouse driver is installed. You can avoid this by removing the mouse from your AUTOEXEC.BAT.
To play an audio clip, include the 'sound' command after any visual commands on a stim line. You must use the whole name of the file, including the
.DWD extension.
There are several limitations on sound files:
- They must start out in .VOC format
- They are limited to 64kb in size for a single sound.
- The sample rate must be below 24kHz
- They must be mono (not stereo)
Features new to this version:
- The stim file can now contain comments - a semicolon anywhere in a line will make the rest of that line a comment. Also, 'C' style comments are allowed anywhere - the combination /* begins a comment and */ ends one. Comments of this kind may span several lines.
- Error diagnostics on the stimfile. When there is a syntax error in the
stimfile, the logfile will include an error description with the exact line and column in the stimfile where the error was detected.
- Sound capability. VAPP can now play mono .VOC files once they have been converted to a proprietary
.DWD format. Files are limited to 64kb in size and 24kHz sampling rate. With 11khz sampling, you can get a 5 second file to play. The sound command must follow any visual stimulus commands on the command line. Don't forget that you can use the line continuation marker (+) to break up long lines.
Bugs fixed:
- The background image now loads dependably - occasionally it would not appear in previous versions.