The PXL distribution diskettes contain several demo and test programs that
are not full applications but only demonstrate the use of certain features.
The demo programs have
their own command line options. Options that are identical to those of PXL
applications are those for setting screenwidth and
screenheight by -w n and -h n respectively, -v n for
setting videocode, and -t n for setting switchtype. In
addition to that the demos have -g filename for explicitly setting the
file name of the gamma table to be used.
Some of the programs take additional options. In order to get a complete
list of options and their meaning, start the programs with option -?.
Installation Check: pxlcheck
The program pxlcheck can check whether PXL has been installed
correctly. It verifies the existence of the environment variable
PXL. It tries to find the table files, the font files and tries
to run the preprocessor. PXL programs should not be run as
long as pxlcheck reports any installation error.
Screen Size Mesurement: scrnsize
scrnsize draws a horizontal and a vertical rule on the screen. These
should have small ticks at every millimeter and large ticks at every
centimeter. If the setting of screenwidth and screenheight is not
correct, then the ticks will not have the correct distance. This demo can
help in finding the correct settings of the physical screen width and
height. Compare the scales on the screen with a ruler and
adjust the horicontal and vertical scales with the cursor keys such that the
screen scales exactly reflect the physical scaling. Then use the END-key to
stop scrnsize. The programm will then offer to change the startup file
startup.pxl for you such that the definitions of screenwidth and
screenheight exactly specify the physical dimensions of the display.
For some monitors the effective screen size depends on the video mode. In
this case scrnsize should be used with the respective mode option
-v n to adjust the screen for the mode to be used.
Adaptive Procedure Simulation: adp
This is a demonstration experiments which may be used to study the adaptive
procedures of PXL. adp does nothing but present a numeric stimulus
protocol on the screen and expect a yes/no response from the keyboard via
the left and right cursor keys. The parameter files for adp may be used
to define adaptive procedures and then check them out. See Chapter
adaptive for a detailed description of the adaptive procedures
Response Device Check: event
The event program is used to check response devices like keyboard,
mouse and switches. Use the option -t n with n being the response
device number to test. event will wait for a response event and then
report its values. The option -i may be used to request interrupt
driven events. See Table scode on page \pagereftab:scode to
find the appropriate response device parameters.
Some programs have parameters which require keyboard codes as values.
Examples are the parameters yeskey, nokey, and stopkey. The
program event may be used to find the appropriate key code values.
Monitor Gray Level Adjustment: grayscal
The program grayscal may help in setting up the brightness and
contrast controls of your video monitor. It presents a logarithmic gray
scale which should look approximately equally spaced. Adjust brightness such
that the background is black and contrast such that the background remains
black and the highest intensity is as high as possible without the image
Vector Font Samples: hfonts
The program hfonts displays the vector fonts included in
PXL. One may choose to get a sample text or a display of all available
characters. One may also select a single font for display.
Check the Timing Software: ttcheck
The program ttcheck tests the proper working of PXL's internal time
measurement functions. It also gives an idea of how precise the time
measurement routines are. ttcheck can measure the duration of the
following events (the numbers give the arguments for ttcheck necessary
to measure the respective event):
ttcheck always uses the current video mode when measuring the vertical
refresh rate. The vertical refresh rate for any of PXL's graphics modes
can be measured by the program vmode.
- 0: Video Frame Duration. This is the duration of a single video frame in
the current video mode.
- 1: Vertical Retrace Pulse. This is an extremely short time interval of
approximately 0.064 ms duration. It corresponds to the duration of the pulse
which initiates the vertical retrace.
- 2: BIOS Timer Tick Interval. The BIOS timer tick is derived from the
system timer tick which is run at a frequency of 1193180 Hz. The BIOS timer
tick is incremented every 65536 system ticks. Thus the BIOS timer tick
interval should be 54.925 ms.
Graphics Hardware Detection and Video Mode Parameters: vmode
The program vmode describes a PXL graphics mode and may also be
used to measure the vertical refresh rate in any of the
available graphics modes. The graphics mode is selected by the option
-v n where n is any valid mode number. See Table
vmodes on page \pagereftab:vmodes in Chapter graphics
for a list of the available modes.
Parameter Estimation for Psychometric Functions: logpmf
The program logpmf can be used to estimate parameters of a logistic
psychometric function from frequency data. The program accepts
data from one or more files given as arguments in the command line or
from standard input if no file names are given. The data format expected
is organized similar to the format used by the UNIX|STAT package.
Each line contains a single data point. The first column contains the
value of the independent variable, the second column the number of
trials represented by this line of data, the 3rd column finally
gives the number
of "yes"-responses for the given value of the independent variable.
Line order is irrelevant and multiple
lines for the same value of the independent
variable are automatically collected.
The psychometric function type used is a logistic function with the
parameters a, corresponding to the just noticable difference and the
parameter c corresponding to the constant error:
P(yes|x_j) = (1-exp(-(x_j - c)/a))^(-1)
The minimization function is the Chi^2:
Chi^2 = Sum(j=1,M) ((n_j - N_j P(yes|x_j))^2)/(N_j P(yes|x_j))
where x_j is the jth value of the independent variable, N_j is the
number of times that x_j was presented and n_j is the number of
"yes"-responses found with that value x_j. M is the number of
levels of x_j. Note that minimizing Chi^2 is equivalent to a
maximum likelihood estimation of the parameters a and c but is more
save to compute than the original likelihood equation. logpmf is
able to find minima even if there are many different values of x_j and
only few observations per value. This may be useful for adaptive
procedure data where the whole data set me be used to get a final
The output of logpmf is written to stdout. By default the values of
the point of subjective equality c, the just noticable difference
a, and the final value of Chi^2 are given as output.
If the command line option -g is given then the estimated
psychometric function is printed out. This means that the output is a
series of lines, each one containing a pair of values for the level of
the independent variable and the response probability. If the option
-d is given then the data are echoed to the output.
In some cases the psychometric function as given in Equation
\eqrefLogisticPMF is inappropriate since there is a nonzero guessing
probability involved. The probability of guessing may be given by the
command line option -a g, where g is the guessing parameter. In
this case the actual psychometric function used is
P(yes|x_j) = g + (1-g) * (1-exp(-(x_j-c)/a))^(-1).
This results in a psychometric function which has g as its
left asymptotic value. In case the option -a is used it does not
make sense to consider c = x_0.5 with P(yes|x_0.5) =
0.5 to be the point of subjective equality.
Thus one may use the option -p e to define the probability value
e which should be considered to be that probability which corresponds
to the point of subjective equality. Its actual definition is
P(yes|x_e) = e,
where by default e=0.5 is assumed, but may be changed with the option
-p. This does not affect the estimation
procedure at all. It only affects the value which is printed as point of
subjective equality to the output. The option -h gives a short help
text for logpmf.
The minimization algorithm used by logpmf is based on the principal
axis algorithm PRAXIS of Brent(1973) as implemented by Gegenfurtner
Parameter Estimation for Psychophysical Functions: ppf
The program ppf may be used to estimate parameters of various
psychophysical functions. Use option -? to find out more about using
Generation of Random Noise: noise
The program noise is able to generate random noise sequences.
Use option -? to find out more about using
Back to table of contents