[Next] [Previous] [Up] [Top] [Contents] [Index]

Chapter 1. General PSYX information

1.1 Overview


A PsyScope Extension -- or PSYX -- is a small program that is used to extend the functionality of PsyScope in some way. A PSYX can be written to drive an input or output device, control a script-modifying dialog, compile the script into executable form, or extend the function set of the scripting language.

The purpose of a PSYX is indicated by its class; the primary classes are:

ODEV: output device driver
IDEV: input device driver
TIMR: timing device driver
DCOD: script-manipulating dialog or function
IMSB: experiment compiler
XRES: scripting function
DFIL data output/filtering extension
ACTN action extension

PSYXs are code resources of type `PSYX'. (See "1.3.1 Code resources" for information about code resources.) The PSYX system is message-based, and the basic structure of a PSYX is the same regardless of its class. A PSYX's class is primarily an indication of the kinds of messages the PSYX is expecting. In fact, any PSYX can belong to any number of classes.

PSYXs in the ODEV, IDEV, and TIMR classes must explicitly declare themselves to be in the class. This is because PsyScope needs to know all of the drivers that are available.

The other three classes -- DCOD, IMSB, and XRES -- are implicit: if some part of the system sends a PSYX a message appropriate for a DCOD, it is assumed that the receiver is a DCOD. If the receiving PSYX is not a DCOD, it will simply refuse the message.

A PSYX can be identified in two ways: by its name (< 32 characters), or by its four-character ID. A single PSYX may be given multiple names, but there should be a unique ID for each name, and no two PSYXs can have the same name.

Most PSYXs are loaded at start-up through the "PsyScope Extensions" folder, although they may also be opened through the "Resources" special entry.


PSYX Programmer's Manual - 24 AUG 95
[Next] [Previous] [Up] [Top] [Contents] [Index]

Generated with CERN WebMaker