GUIDE TO IBM XT C FUNCTIONS FOR THE U of P PSYCHOLOGY

advertisement
GUIDE TO IBM XT C FUNCTIONS FOR THE U of P PSYCHOLOGY LAB
Updated:
Ben Backus 11/25/86
BB 12/01/86
BB 12/15/86
BB 1/1/87
BB 2/27/87
NOTE: This is the master statement of functions and their formats.
Protocol is to make additions and changes, test them, then install them
with full support in documentation and include files.
NOTE: The XT closest to the door in room C-28 always contains the master
code and documentation.
There currently exist 5 modules:
clock
text
keyboard
sound
graph
The clock and sound routines require that a Metrabyte CTM-05
counter/timer
card be installed in the PC/XT at base port hex 300. The clock and sound
routines do not call each other.
The text routines were developed using an STB Enhanced Graphics Adaptor
(IBM
clone) with 256K memory, but might work with a CGA too. The graphics
routines
use mode 16, which is available with the EGA but not the CGA.
At present, the only interdependency between the modules is that some
keyboard
functions call clock functions.
For each MODULE there exits:
c:\lab\src\MODULE.c
Source code (eg. clock.c contains all
clock funcs)
c:\lab\doc\MODULE.doc User documentation of the functions in the
module
c:\lab\include\MODULE.h Include file with macros and function
declarations
There also exist:
c:\lab\lib\lab.lib
MODULEs
c:\lab\lib\param.lib
Object code library for the above
Functions to read run-time parameter files
c:\lab\include\macro.h Generally useful macros
Other documentation in c:\lab\doc:
font.doc
param.doc
fnames.doc
How to build fonts and use them in programs
Run-time parameter-file reading functions
File naming conventions
For each experiment there exists a directory c:\lab\NUMBER, where NUMBER
is
101*
Memory search experiment (Sternberg task)
Version A*: Item recognition
Version C*: Context recognition
201* Sperling partial report experiment
301* Triesman visual search experiment
401
Posner nominal & physical matching experiment
501* Short-term memory for vocabulary words experiment
601
Word in sentence perception and word superiority effect
701* Farah lateralization of image generation experiment
Version A*: No instructions to localize the
generated image
Version B(*?): Localization of the generated image
702
A modification of 701 by student(s) Mark Monheit (et.
al.)
801
Decision making
901
Categorizing
* after number indicates that lab is ready to run.
The directory contains the source code, executable code and support
files needed to run the experiment. Stimulus generation programs
are
typically placed in the subdirectory "gen".
In addition, there exists an analysis program or set of programs to
analyze the data generated by each experiment. A set of slower but
more
general purpose routines has been written for the sorting,
extraction by
column, and statistical manipulation of data. The analysis
programs and
general purpose routines were developed by David L. Turoc.
Software that we own:
IBM PC-DOS for all the machines in the lab. Includes BASIC and
BASICA.
Microsoft C Compiler version 4.00.
This compiler produces fast,
efficient
code, but is not particularly speedy. Comes with "Codeview",
an easy
to learn, menu-driven debugging tool with tutorial.
Microsoft linker.
Microsoft Macro Assembler.
PC/VI. This powerful editor is indistinguishable from vi, the UNIX
screen editor.
Essential Graphics package of graphics routines. The font
utilities are
too slow to be useful for real-time programming, but many of
the
other routines are useful. Only works with one of the two
available
graphics pages.
Books that we own:
Kernighan & Ritchie, The C Programming Language. The standard
reference.
Peter Norton, Inside the IBM PC. Introduction to PC architecture.
Peter Norton, Programmer's Guide to the IBM PC. More introduction,
plus
a very useful distillation of the DOS Technical Reference
Manual.
Useful tables at end of book. Doesn't know what he's talking
about
when discussing EGA memory.
Sargeant & Shoemaker, The IBM PC from the Inside Out. Great
discussion
of video memory. Well written, very helpful for Assembly
programming.
Good tables at end of book.
Hunt, The C Toolbox. A beginner's guide to C and a not-very-useful
set of
program listings. Learn C from Kernighan & Ritchie.
IBM publications:
DOS User's Manual
DOS 3.1 Technical Reference Manual
BASIC User's Manual
Guide to Operations for the Personal Computer XT
Technical Reference for the Personal Computer XT
There is also documentation for software and a thin stack of
computer
magazines.
People resources:
John Andrews-Labenski, hardware consultant
Ben Backus, graduate student with primary responsibility for
producing
and running the labs
Alden Levy*(?), undergraduate programmer (especially knowledgeable
about
experiment 401)
Ruth Koppelman*, undergraduate programmer (especially knowledgeable
about
experiments 101, 301, 501 and 601)
Cliff Longino, undergraduate programmer (especially knowledgeable
about
the clock routines and text mode display routines)
David Magerman, undergraduate programmer (especially knowledgeable
about
experiment 701)
Mark Monheit*, undergraduate programmer (especially knowledgeable
about
experiment 701)
Saul Sternberg, professor (especially knowledgeable about the
literature,
experimental design, educational purpose, funding, and
university
politics)
Chin Tao, graduate student in computer science (especially
knowledgeable
about the graphics functions and experiment 201)
Steve Tell, undergraduate programmer (Duke University) (especially
knowledgeable about experiments 401 and 501)
David Turoc, post-doc in Psychology with Computer Science
background
(especially knowledgeable about the data analysis programs,
hardware
configuration, and general lab design philosophy)
* Leaving the University of Pennsylvania after spring, 1987.
(End)
Download