:: Style
:: Demos  

Here is a description of the CORTEX demo files included in the \source\demos directory

Speed Demo - perfect for testing the speed of bitmaps on your video card
SPEED.1 timing file for speed - toggles between horizontal and vertical sinusoidal gradiants of varying sizes to assess the uniformity of page flipping (e.g. ensure there is no "stutter") and the maximum speed at different screen and bitmap-size resolutions. The results of our analyses on a number of boards are listed here and in video_speed_comp.xls
SPEED.ITM items file for speed demo program
SPEED.CND conditions file for speed demo program
 
Main Demo - includes a heavily commented generic CSS file with some added frills
DEMO.1 timing file for main demo - shows multiple movies, keyboard control of object postion, and adding CSS interrupts
DEMO.ITM items file for main demo program
DEMO.CND conditions file for main demo program
   
A Second Demo
TOUCH.1 CSS file to test touch screen (or mouse emulation thereof) - shows items, and which item pressed, along with storage of collected data to the EPP buffer, which is saved to disk at the end of each trial. Run:toUch menu shows timing and position of touches
TOUCH.ITM items file for touch screen demo
TOUCH.CND conditions file for touch screen demo
   
Real Experiment - courtesy of Driss Boussaoud
BRAS.B20 shows selective branching/training based on touch screen responses
OEIL.B20 shows branching based on saccades to items
OEILBRAS.B20 shows branching based on saccades to items AND touch screen responses
ITEMS.B26 items file for *.B20 files
CONDS.B26 conditions file for *.B20 files
   
These files test all supported graphics functions - use gtest.itm and gtest.cnd, except where noted
GTEST.1 tests panning and scrolling
GTEST.2 tests pan and sweep
GTEST.3 tests window resizing
GTEST.4 tests non-kernel graphics functions (e.g. ones not beginning with 'G')
COLOR.1 uses number pad to test single color and palette changing functions - load 4LUTs.plt from Lut:Restore
LUTTEST.1 shows several methods for changing individual or blocks of colors - use demo.itm and demo.cnd, and use Lut:Restore on 4LUTs.plt to load demo palettes
MOVIE.1 shows two movies (one stationary, the other sweeping) and a number-pad controlled fixspot - use demo.itm and demo.cnd
TITEST.1 tests low level TIGA commands - only valid for ticortex.exe
   
The files test non-graphics related functions - use any .itm or .cnd file, except where noted
BARTEST.1 dynamically reads bar state and prints results
BTEST.1 tests blocking (staircase) functions - use gtest.itm and gtest.cnd, and create 3 blocks with varying parameters to visualize the use of these functions
DEV.1 tests DEVinp() and DEVoutp() functions - dynamically reads data from I/O ports and displays values
EOG.1 tests eog and epp storage functions - also demonstrates how data can be read from and written to these buffers directly from within CSS
EXTERNS.1 test of Run:ExternVars:create_Subset - read in externs.1 from Run:ExternVars:create_Subset, and also from Timing:Add - will initialize arrays of variables, and allow easy modification of them using ExternVars:Use_subset
FASTTEST.1 fast (500ms per trial) test of a prototype CSS function (initializing data collection, displaying histograms, etc.)
FTEST.1 example of complex macros and file functions
GETAKEY.1 displays the keycode values returned by GetAKey()
IFTEST.1 tests boolean && and || functions
PRINTF.1 tests printf() and sprintf() functions
SCANF.1 test of scanf() and sscanf() functions - also demonstrates how convenient complex macros can be
SER_TEST.1 test of serial port functions. Needs to also be read in from ExternVars:create_Subset to ease selection of communication parameters
SIZEOF.1 test of sizeof() function
STEST.1 complex demo of all screen functions plus timers, keyboard, marking item positions, binding fixspots, and more. Use circ.itm and circ.cnd
SYSTEST.1 validates most of the math and system functions
TIME.1 speed test of CSS operations - indicates the number of CSS operations performed per second
TIME.2 demonstrates multiple simultaneous CSS interrupt threads, and their cooperative functioning
UTEST.1 tests many \ufns\_userfns.c functions
VGA.1 tests drawing of simple objects on user screen
VGA.2 draws random colored shapes on user screen
   
Support Files
CSS_INC.H general #include file necessary for most CORTEX timing files
ENCODES.H #include file specifying encode values: automatically included by css_inc.h
TOUCH.H #include file for CSS files using touch screen - good example of pre_- and post_main, and of adding interrupt threads
   
GTEST.CND conditions file for most demos
CIRC.CND conditions file for circle demos - shows up to 16 objects on a single test screen
500.CND conditions file - useless other than to demonstrate that more than 500 conditions can be loaded
GTEST.ITM items file for most demos - includes all supported graphics types
CIRC.ITM items file for circle demos
   
BW.LUT color lookup table - 128 colors - black and white
DEFAULT.LUT color lookup table - 256 colors - NNIOS default
LINEAR.LUT color lookup table - 256 colors - linear gray scale
RED.LUT color lookup table - 256 colors - linear red scale
4LUTS.PLT 4 CLTs (palettes) (of 5 allocated) saved from Lut:sTore, and restorable from LUT:Recall
   
BIRD small bitmap of a bird
CANON.MVI small movie (23 frames)
CANON177.MVI large movie (177 frames)
CATMOVIE.C source file for concatenating two movies together, updating header fields appropriately
   
ARROW arrow pattern for NNIOS and TIGA
CHECKER checker patten for NNIOS and TIGA
DIAGS diagonal patterns for NNIOS and TIGA
DOTTED dotted pattern for NNIOS and TIGA
FACE face pattern for NNIOS and TIGA
STRIPE stripe pattern for NNIOS and TIGA
CHECKER.PAT ascii representation of checker pattern
DIAGS.PAT ascii representation of diagonal pattern
DOTTED.PAT ascii representation of dotted pattern
STRIPE.PAT ascii representation of stripe pattern
FACE.PAT ascii representation of face pattern
ARROW.PAT ascii representation of arrow pattern
MAKEPATT.C source code for program to convert ascii pattern to binary form used by TIGA and NNIOS
   
SD50.CTX … horizontal sinusoidal gradient bitmap for Speed demos. Step values are 50x50,100x100, 200x200, 300x300, 400x400, 500x500, 640x480, 1024x768, 1280x1024
UP50.CTX … vertical sinusoidal gradient bitmap for Speed demos. Step values are 50x50,100x100, 200x200, 300x300, 400x400, 500x500, 640x480, 1024x768, 1280x1024


NIMH CORTEX was written by a team of dedicated researchers for the NIMH Laboratory of Neuropsychology.
Questions or problems regarding this web site should be directed to CortexSite@salk.edu.