4.9.5;GRTEST (GRAPHICS_TEST), revision 4.9.5, 11/14/86
GRTEST -- Perform Graphics Subsystem Test on a Node
usage: GRTEST [-Alltests [DIrect|BOrrow|NOVIsual]] [-BRIEF]
[-STOP_on_quit]
[-Test [test number(s)]]
[-DIrect|-BOrrow]
[-NO_delete ][-CLEAN_up]
[-Dma]
[-ERRor SHORT|Full HALT|NOHalt|NExt Trace|NOTrace]
[-ERRLog INIT name]
[-Pass n]
[-Unit n]
Introduction
GRTEST is an on-line graphics exerciser which runs under
system level software (YOU MUST HAVE AEGIS SR9.2.3 OR LATER IN
ORDER TO RUN GRTEST). GRTEST relies upon several system services
such as the stream manager and program manager, as well as disk
storage for its complete operation. All communications to the
graphics device will be performed through the exclusive use of
the Graphics Primitives and Graphics Metafiles packages. This
test is intended to provide the highest level of hardware
exercise and fault detection permitted by the graphics
packages.
Modes of Operation
There are two basic operating modes to GRTEST; INTERACTIVE
mode and REMOTE mode. Interactive mode assumes that an operator
is present and allows full control over all program parameters
and test selections by issuing a prompt and acting upon operator
input. Remote mode refrains from any operator intervention. The
mode of operation is selected via command line arguments as
listed below.
Command line keywords
The following keywords and their respective options may be
included on the command line which invokes GRTEST. Keywords on
the command line must be preceded by a hyphen. All options for a
specific keyword must immediately follow the keyword. Keyword
options are not preceded by a hyphen and are separated from one
another by at least one space. Keywords may be specified more
than once on the command line. If this is the case, operational
parameters will be assigned the last value specified on the
command line.
ex. 1 $ GRTEST -ERRLOG INIT MY_ERROR_FILE -PASS 10
This command line loads GRTEST, initializes an error log file
in the current directory named "MY_ERROR_FILE" and assigns a
maximum pass limit of 10. All other operational parameters will
assume their default values.
ex. 2 $ GRTEST -ERRLOG /SYSTEST/GRTEST_ERROR_FILE -ERROR NOHALT TRACE
This command line loads GRTEST, opens an error log file in the
directory SYSTEST named "GRTEST_ERROR_FILE", tells GRTEST to
continue after errors and report the level of program nesting on
the occurrance of an error. If a file named "GRTEST_ERROR_FILE"
already exists in the directory SYSTEST it will be opened in
"append" mode, otherwise it will be created.
NOTE : keyword abbreviations are shown in capital letters.
-Alltests select automatic (remote) mode of program operation.
Select and execute all valid subtests. No operator interaction occurs.
(options) DIrect runs all valid direct mode tests (within a window)
BOrrow runs all valid borrow mode tests (whole screen)
NOVIsual do not execute visual tests
The default is BOrrow mode, visual tests executed.
-Test select automatic (remote) mode of program operation.
Select and execute all following subtests. No operator interaction occurs.
(options) 'n n n ...' where 'n' = subtest number. The same subtest
number may be entered more than once; or 'n : m' where 'n'
is the starting subtest number of a range and 'm' is the
ending subtest number of the range. If no subtest number
is entered, default to all subtests. Up to 32 subtest IDs
may be entered when specifying individual test numbers.
-BRIEF Limit standard (non-error) output under automatic (remote) operation
(i.e., switch only valid with -Alltests switch).
(options) none
-STOP_on_quit This switch will pass a stop fault back to the shell if a
"DQ" (control Q) is entered. This allows greater feedback to a
calling program about pre-mature termination. This will also
signal the shell to stop.
(options) none
-NO_delete This switch will cause GRTEST to leave diagnostic microcode loaded
on the 3D Graphics Accelerator board.
If this switch is used, then after you have completed graphics testing,
you should invoke GRTEST with the -CLEAN_up switch ("Grtest -clean_up")
which will unload the diagnostic microcode and return the 3d Graphics
Accelerator to its normal state.
If this switch is not used, GRTEST will determine if other processes
are running GRTEST on the system. If no other processes are running,
GRTEST will unload the diagnostic microcode when it has completed
testing. Since this method requires the creation of a temporary file
in the /systest directory, it is not valid in a SAX environment.
Note: It is invalid to invoke GRTEST in one process with this switch
and then invoke it in another process without this switch.
(options) none
-CLEAN_up This switch will cause GRTEST to unload the diagnostic microcode and
return the 3d Graphics Accelerator to its normal state.
This switch will override all others and after completion of the unloading
of the microcode GRTEST will terminate.
(options) none
-Dma only execute that portion of GRTEST which performs large
data transfers.
(options) none
-DIrect causes all test that can run in direct mode to do so
when selected.
(options) none
-BOrrow causes all test that can run with full display to do so
when selected.
(options) none
-ERRLog specify error log file parameters. The error log
receives a copy of all error messages if enabled.
This error logging feature is in addition to that
afforded by the streams error out channel.
(options) Init initialize error file upon opening it. This
overwrites existing data if a file of the
specified name already exists.
None do not log errors to a disk file.
[text] any other text string up to 32 characters
specifies the new file name to log errors
to. If no name is specified, default to
`node_data/grtest_error_log.
-ERRor specify error handling parameters.
(options) Short short error report (error nnnn... brief message)
Full full error report (error number, descr, good/bad)
Halt halt on error
NOHalt continue after error
NExt goto next subtest after error
Trace include in the error printout the level of
program nesting by module and subroutine name.
NOTrace do not report program nesting.
-Pass set a maximum number of passes for test activity at
which time testing stops.
(options) n (16 bit signed number -32768..32767)
note: a negative value supplied with this argument
signifies an unlimited test loop. If a positive
number is supplied with this keyword, testing
continues until this pass limit reaches zero
or a halt on error occurs.
-Unit select a specific graphics unit to test.
(options) n a positive integer which defines the graphics
unit to be tested.
caution !! GPR and GMR currently support only one graphics
unit (unit 1).
note: -Alltest , -TEST and -Dma determine default test selections. If
none of these options are chosen, GRTEST will enter interactive
mode, otherwise the order of priority of these options is as
listed above.
GRTEST keywords
The above keywords may be entered in response to the GRTEST
prompt by excluding the hyphen before the keyword. The following
keywords may be entered only in interactive mode (in response to
GRTEST's prompt). Unlike the command line where many keywords
may be specified on a single line, interactive mode will only
process one keyword and its options per input line.
ex. GRTEST> PASS 10
GRTEST> ERRLOG INIT MY_ERROR_FILE
GRTEST> TEST 1 3 4 8
GRTEST> HELP
NOTE : keyword abbreviations are shown in capital letters.
ADjust enter adjust mode. menu of visual tests will be displayed.
Allows selection of a particular visual test. The image
generated will remain on the screen until the 'SPACE' bar
is depressed.
(options) none.
note: the visual routines available are as follows :
display boundaries
horizontal/vertical grid
diagonal grid
circles
color map spectrum
colored bars
shaded surfaces
zoom factors
double buffered animation
fill screen with selected color
interlace monitor
grey scale pattern
imaging mode pattern
2d gmr visual (logo)
3d gmr visual (teapot)
QUIT, return to GRTEST>
fill screen with selected color will bring up
another menu to select colors from.
NOTE : not all visuals are valid for every node type.
this menu shown will differ accordinly.
Help display GRTEST help file. (Help file must be in /sys/help directory.)
(options) none.
Mode display the current GRTEST operating mode
(options) none.
Quit exit GRTEST.
(options) none.
Rops allows execution of a particular Raster Op test. menu
of raster ops will be displayed.
(options) none.
( see description under test 6 )
STatus display a menu of available tests including current
pass counts and error counts.
(options) none.
Test cause the execution of subtests.
(options) 'n n n ...' where 'n' = subtest number. The same subtest
number may be entered more than once; or 'n:m' where 'n'
is the starting subtest number of a range and 'm' is the
ending subtest number of the range. If no subtest number
is entered, default to all subtests. Up to 32 subtest IDs
may be entered when specifying individual test numbers.
Descriptions of Tests
---------------------
The following describes for each test what should be seen on the screen for each
test. Note that all tests except 11 check data and report an error if the
test fails. Tests 11 is a visual tests and its correctness must be visually
verified by the user.
Note : not all tests are valid for all node types. (invalid tests will not
be displayed in the STatus menu)
TEST 1 - Plane Mask Verification test. The test will display
flashing short horizontal lines in the upper left corner of
the screen.
TEST 2 - Refresh Logic Functionality. Depending on the node you will see
a vertical line on the left side of the screen or a horizontal
line running across the bottom of the screen or both. These lines
will disappear after being displayed.
TEST 3 - Memory Array Test. This test will fill the whole screen with a
rainbow pattern from top to bottom and then verify the data for
accuracy.
TEST 4 - BLT's Within Display Memory. This test will display a square in
the upper left center of the screen, then a smaller square next to
it. The smaller square will grow to the size of the larger one.
Next a border pattern will be drawn around the screen starting
at the upper left hand corner. Next, a series of small squares
will be drawn in the upper left of the screen that move out
along a diagonal line. Then the small squares will move in
along the same line. Finally a square will be displayed in the
middle left center of the screen then a smaller square next to
it. The smaller square will grow to the size of the larger one.
TEST 5 - BLT's From/To Main Memory. This test will display a square in the
upper left corner of the screen. The square will grow out from the
corner in a diagonal direction. On some color nodes with zoom
capability the square will also grow in size or zoom in and out.
Color nodes will have rainbow colored squares. Then another
square will be displayed in the upper left corner above the
previous pattern.
TEST 6 - Raster OPs ALU Test. This is a test of the nodes raster opcodes.
During the test the display will show a horizontal rectangle in
the upper left corner and three vertical rectangles just off to
the right side. The horizontal recangle will be BLTed onto each
of the vertical rectangles using a raster op. The first of the
three BLTs (the left most vertical rectangle) will be a BIT BLT,
the next will use PIXEL BLTs, and the third will use ADDITIVE
BLTs. The BLTs start at the top of the display with raster
opcode 0 and progress down the display for the next opcode, so
that opcode 15 BLTs appear at the bottom of the screen.
Durring execution of this test progress messages will be
displayed below the test window.
TEST 7 - Multiply Logic Test. You will see a red line rotated at the
center of the display and then a green line and finally a
blue line. Note : the lines will be white , black and then
white on a monochrome display.
TEST 8 - Clip/Divide Test. The display will show a horizontal line
growing outward from the center of the screen and then a
growing vertical line cutting the horizontal line in half.
TEST 9 - Vector Draw Test. This test draws different types of lines to the
display. The pattern you see will be a diagonal line with a box
below it, and a square spiral drawn above it. This pattern will be
displayed three times during the test. The first pattern will be
just above the center of the screen, the second at the center
and the third just below the center. On color nodes the three
patterns will be drawn in red, green and blue.
TEST 10 - Area Fills Test. This test displays filled areas. The sequence
you should see is; solid rectangle, tile filled rectangle,
shaded rectangle, solid circle, shaded circle, solid triangle,
shaded triangle, solid trapezoid, shaded trapezoid, solid octagon
and shaded polygon. The shapes are all drawn in the upper left of
the display.
TEST 11 - Visual Tests. Please note that not all visual tests may be valid for
a node, depending on the type of graphics subsystem it has. There
are twelve subtests as follows;
display boundaries - outlines the boundaries of the screen.
horizontal/vertical grid - grid pattern.
diagonal grid - diagonal line grid.
circles - 9 circles
color map spectrum - Incrementally goes through all colors.
colored bars - vertical color bar pattern.
shaded surfaces - 8 Shaded spheres.
zoom factors - colored ring zoomed in x, y, and z directions.
double buffered animation - X Y Z zoom/rotate.
interlace monitor test - left and right side of screen are offset by a line.
grey scale pattern - shaded grey pattern from left to right.
imaging mode - pattern on screen either by8 mode for a 4 plane system
or by24 mode for a 8 plane system.
TEST 12 - Graphics Processor Unit Test. This test runs on nodes with a graphics
processor. It will put up a 3D wireframe image and randomly tumble it. If
the mode is "BORROW", GRTEST will perform a checksum comparison of the image.
NOTE : This test changes the Graphics Processor Unit's microcode - it is not
it is not recommended to run this test in conjunction with other 3DGMR
applications.
TEST 13 - 2D GMR Opcode Test. This test runs on 5xx nodes with gmrlib. It will display
a 2d metafile image. It will then rotate the image by 90 degrees until it is back
at the origin. It will then zoom and scale the image. It will then move the image
around the window or screen. Finally it will return to the position and size
first displayed. This is a valid test in both direct and borrow mode.