** Welcome to PsyScope 1.2 **

If you haven't done so, please read the README file.


Psyscope 1.2.5

Released: 11/19/99

- Fixed problem with use of Mac timer under OS9


Psyscope 1.2.4

Released: 2/2/99

- Fixed problem with playing of sound files without labels


PsyScope 1.2.3

Released: 1/6/99

- Fixed problem with sounds in lists

PsyScope 1.2.2
Released: 7/30/98

* Bug fixes

- Fixed PPC-only bug that caused group objects to turn into superblock
objects when opened.

- Fixed PPC-only bug that caused crashing and/or instability when using
"Degrade" attribute on screen stimuli.

PsyScope 1.2.1
Released: 2/16/98

This release contains mostly internal changes to support the
forthcoming PsyExtension kit update. Some users of third party extensions
will require this version.

- Note that this version has been split into separate PPC and 68K versions
for faster downloading and easier transportation on floppy disk.

- No 68K version of the Movie Extension has been released for this version.
It should be released soon.

PsyScope 1.2
Released: 8/18/97

- Out of Beta!
- BBoxOut crashing bug fix
- New "Trial Start Time" data field

** Out of Beta **

We're pleased to announce that with this release PsyScope formally
leaves "beta testing". We believe that this version is stable enough
for running subjects on 68K and PPC Macs. There are some known bugs,
which we will fix in future releases. We also plan future work on
existing PsyScope extensions, and the PsyExtension SDK.

* BBoxOut bug fix *

This version contains version 2.0.4 of the BBox extension,
which fixes a crashing bug related to the use of the BBoxOut[]

* "Trial Start Time" data field.

Also in this version is a new data field, "Trial Start Time" which
prints in the data file the start time of each trial, relative to
the start of the experiment. This value can be used to compute the
absolute onset of any event in the experiment.

PsyScope 1.2b5 beta release 5 for version 1.2
Released: 7/11/97


This release is very close to the "Final Candidate" release for
PsyScope 1.2. We believe this version is very stable on both PPC
and 68K Macs.

We do know of a some bugs, but few, if any, that
would prevent running subjects. If you have a bug that's
stopping you from running your study, get a report to us soon.

Note: The QuickTime Extension will be upgraded after the release
of PsyScope 1.2. You're still, welcome to send QuickTime-related bug
reports, and we'll handle them after the release.

** Bug Fixes in this release
- RerunTrial bug
- Startup Animation bug on PPC Macs
- "Flip" attribute bug with images greater than 8 bits deep

* RerunTrial bug - scripts using RerunTrial[Random End] sometimes
had spurious "new" trials inserted after all original trials
should have been finished. This has been fixed.

* Startup Animation - Until the startup animation bug on the
PowerMac can be found, Startup animation has been turned off on
PPC Macs.

* "Flip" attribute - "Flipping" pictures and pasteboards
at 16 and 24 bit depths caused crashing and other bad behavior.
Currently, flipping is disabled for those bit depths. A new
flip routine that handles deeper images will be implemented
after the release of 1.2.

PsyScope 1.2b4 beta release 4 for version 1.2
Released: 4/1/97

* Bug Fix - Extensions work again on PPC Macs.

A compiling problem with 1.2b3 which prevented extensions from
loading has been fixed this fixes problems using the Button Box
and QuickTime extensions on PPC machines.

PsyScope 1.2b3 beta release 3 for version 1.2
Released: 2/18/97

* Bug Fix - Better PPC stability

Major window-updating problems on PPC macs have been fixed, and this
version should be considerably more stable running on PowerMacs. We
recommend using this version for design and running pilot subjects on
PPC-based machines. (Running full-study subjects should be fine, too,
but run some pilot tests first)

As usual, report any crashes or other bugs to psybug@serviceberry.psy.cmu.edu.

PsyScope 1.2b1 beta release 2 for version 1.2
Released: 10/23/96

* Bug Fix

This version fixes problems loading PsyExtensions on PPC Macs.

PsyScope 1.2b1 beta release 1 for version 1.2
Released: 10/17/96

This is the first PPC-native beta release. It is a "fat" binary,
and will run native on both PPC and 68K macs. There are still some bugs but
it should be mostly usable.

Note that new PPC-native or fat PsyExtensions must be used with when
running on PPC Macs. A fat version of BBox PsyExtension 2.0.3 is included.

* AppleScript support *

This version is also AppleScriptable. In addition to the required events,
(Launch, Open, Print, and Quit), it also supports events for running
experiments, and evaluating PsyScript expressions. Note! Make sure to
tell PsyScope to "activate" before running an experiment from an AppleScript,
or bad things will happen!

PsyScope 1.1
Released: 8/21/96

This is the final release of 1.1. It is identical to PsyScope 1.1b9.

* Known Bugs.

We know of the following bugs, which will be fixed in later versions.

- problems handling custom BlockAttribs/GroupAttribs during
experiment design.
- Timed block durations don't work if all blocks in a
sub-tree of the experiment have are timed.
- In rare instances, the Edit Menu will disappear. Restarting the
application will restore it.
- Deleting the entire script from interactive editor will cause a
memory error.
- Multiple Trial Manager Variables with the same name will cause
an assert failure.
- Sometimes the mouse cursor doesn't change back from a watch.

PsyScope 1.1b9 -- beta release 9 for version 1.1
Released: 7/12/96

- Final candidate!
- Debugging flags removed
- Memory use changes
- Bug Fixes

* Final Candidate!

This release is a candidate for the final release of PsyScope 1.1. If
no major bugs are found with this release, it will be re-released as
PsyScope 1.1.

* Debugging flags removed

Because this is the final candidate, the internal debugging checks have
been turned off. This should increase speed in a number of areas.

* Memory use changes

Some internal changes for 1.1b6 that were intended to improve memory
management ended up causing more problems than they fixed, and have been
removed. This will result in slightly worse memory management,
requiring a larger application partition, but things should be more

* Bugs fixed:

- problems with follow/clear_masked (a la "Moving Window") introduced
with 1.1b6 or 1.1b7 have been fixed.

- a bug with the ports/positions dialog which required the width and
height to either both be percentages or both be abolute values has been

PsyScope 1.1b8 -- beta release 8 for version 1.1
Released: 6/27/96

- Minor timer changes
- BBox PsyExtension 2.0.2
- Bug Fixes
- Invisible changes

* Minor Timer Changes

The built-in Macintosh Timer has been updated to use the Mac
"Microseconds" system call, which should provide better
drift-resistance than the old interrupt-based method. Also,
the data file header now reports what timer extension is being
used for the run.

* BBox PsyExtension 2.0.2

When using BBoxes running in the new "Response" mode, BBox 2.0.2
will use a "Microseconds" timer (see above), to provide timing.
With BBoxes running in millisecond mode, the bbox millisecond tick
will still be used as the timer.

* Bug Fixes

- The long-standing floating-window-preferences crashing bug,
which required many users to use a special preferences file
has _finally_ been captured and eliminated.
- When displaying event stimuli in the data file, a "Time" (NULL)
event now gets "NULL" for its stimulus, instead of random

* Invisible changes

There have been a number of invisible internal changes in this
version in further preparation for a PPC native version.

PsyScope 1.1b7 -- beta release 7 for version 1.1
Released: 4/18/96

- Nearing final 1.1 release!
- Mac Millisecond timer built-in
- BBox PsyExtension 2.0.1
- Bug Fixes

* Nearing final 1.1 release!

With this release, 1.1b7, we're getting very close to the final
version that will be released as PsyScope 1.1. With that in mind
the last chance to report bugs for fixing in 1.1 is fast approaching.
Please use this version and report any problems you might have.
If you see a bug, don't assume that we've seen it here. If we
don't see it, and nobody reports it, it won't be fixed!

* Mac Millisecond timer built-in

With this version, the built-in "Macintosh" timer has a resolution
of 1 msec. This new timer requires the Extended Time Manager,
which should be available on all Macs running System 7 or higher.
The old Macintosh 60 Hz timer will be available as a PsyExtension,
in case there are any users running on machines without the
Extended Time Manager. NOTE: the millisecond resolution from the
Macintosh timer applies only to the timing of internal events.
The keyboard and mouse are still polled at 16 ms intervals, and
the Button Box is required for millisecond-accurate timing of

* BBox PsyExtension 2.0.1

Version 2.0.1 of the bbox extension is included with this version
of PsyScope. It supports the new "response mode" bbox protocol
implemented in version 2 of the bbox S19 microcode. The only
difference between 2.0.1 and 2.0 (released separately) is a minor
improvement in the GUI interface to the BBoxOut[] action.

* Bug Fixes

- Problem with sound that caused crashes when "List Events" was
turned on in the Monitor.
- Minor problems with the Ports/Positions dialog
- Parameters for the QuitBlock[] action are now accessible via
the GUI.

PsyScope 1.1b6 -- beta release 6 for version 1.1
Released: 3/22/96

- Sound Cue Marker improvement (syntax change)
- Virtual Memory Warning
- More sensible operation in low disk-space situations
- Better memory management
- Bug fixes

* Sound Cue Marker improvement (syntax change)

The sound manager's "cue marker" support, released with 1.1b5 has
been changed slightly. The keyword "cue" is no longer necessary
to indicate a cue marker in the Sound[] condition. Any text between
the brackets will be taken as a Cue marker name, including spaces.
If the brackets are left empty, then the end of the sound will trigger
the condition.

* Virtual Memory Warning

PsyScope will now give a warning when running on a machine with
virtual memory enabled, reminding the user that running with VM
on is not recommended when collecting data. The warning dialog
includes a "Shut Up" button. Users who want to develop scripts
on a machine with VM on, and are not worried about their timing
can click "Shut Up" and dismiss the warning for the duration of
that launching of the application.

* More sensible operation in low disk-space situations

PsyScope will now give a warning when disk space on the volume
where the data file is to be written is below 100k, and has
better error handling if the disk fills up while storing data.

* Better memory management

Memory management has been improved somewhat, to reduce fragmentation
with in PsyScope's application heap. This should allow for larger
Pictures, PasteBoards, and Sounds to be loaded within the default
partition size.

* Bug fixes

- Errors and crashing after clicking "cancel" when PsyScope
can't find a List File.
- Rare problem with combined PasteBoards and Text events where
breaking or an error/warning dialog while running could cause
an "address not in zone 0" error.
- Problems with properly clearing the "Loading stimuli" timebar
on multi-monitor systems.
- A sound-manager bug that was a cause of "Memory Error -109"

PsyScope 1.1b5 -- beta release 5 for version 1.1
Released: 2/20/96 (internal to CMU)

- Sound Cue Markers
- Sound Timing Warning
- Editor improvements
- SingleMonitor attribute
- BBox Extension 1.6.2

* Sound Cue Markers, and other improvements.

The sound manager now supports "cue markers" or "cue points" in
SoundEdit 16 files. The Sound[] condition mask can now take the keyword
"cue", followed by a cuepoint name. If a cue marker is given, then the
mask will trigger if that cue marker is passed while a sound is playing.

* Sound Timing Warning!

NOTE: Because inherent problems in the Mac system, it's currently not
possible to get exact measurements of the starting time of a sound
played on the mac system using Sound Manager 3.0. We're currently
waiting to hear from Apple to see what plans for a solution to this
problem may be made available. This limitation will also affect the
timing of Sound CuePoints.

* Minor editor improvements

Some minor cosmetic improvements have been made to the editor.
Selecting and extending the selection via double-click, triple-click,
double-click+drag, and triple-click+drag should now behave sensibly, as
in other apps.

* SingleMonitor Attribute

A new experiment attribute, "SingleMonitor", has been added. It takes
an integer which indicates which monitor to use for displaying stimuli,
if multiple monitors are attached to the system. This is mostly for
people who use powerbooks and wish to display on an external monitor but
don't want the hassle of having to move all their centered/relative
ports and positions over to the other monitor.

It takes the following values:
0 = use all monitors
1 = use the main (menu bar) monitor
2 and up = other monitors.
For systems with more than two monitors, the numbering is not defined.
For now, those few folks with 3+ monitors must use trial and error to
find the right monitor. In the future the ports and positions dialog
will have facilities for reading and selecting single monitors.

NOTE FOR POWERBOOK USERS: We recommend _not_ using the "video mirroring"
option on powerbooks for stimulus display. The accuracy of display timing
in that mode is uncertain. We're currently working with Apple to find out

* BBox Extension 1.6.2

This release contains BBox Extension 1.6.2, which uses BBox Code 1.6,
and should improve performance and reliability of the box on a number of

(Remember: SerialDMA 2.0.2 is still required on PowerMacs and AV macs.
and ASFU fixer should be discarded.)

This version of the BBox Extension also implements a new action,
BBoxOut[], which sends bbox output codes directly to the box, without the
need for a BBox event. The syntax is:

BBoxOut[<value> <mode>]
<value>: an integer value in [0..255] representing
the decimal value of the binary lines to be manipulated
according to <mode>.
<mode>: (optional: defaults to copy_mode)
"copy_mode" - change the bbox output state to <value>.
"assert_mode" - turn on the bits that are on in <value>.
"deassert_mode" - turn off the bits that are on in <value>.
"xor_mode" - exclusive-or the current state with <value>.

PsyScope 1.1b4 -- beta release 4 for version 1.1
Released: 7/28/95

* Bug Fixes

- A major crashing bug in the Standard Data Filter has been fixed, so
running experiments should be much more stable.

- The problem with MASK clearing type has been fixed. Because masking
is only built-in for Text stimuli, a new Special/Feature attribute has
been added for text, CLEAR_MASKED. In keeping with this, the "MASKED"
Special/Feature keyword has been changed to DRAW_MASKED. The old
"Clearing" attribute keyword, "MASK" will still be interpreted correctly
in the script, but has been removed from the graphic interface.

- Playing SoundEdit 16 files with sampling rates other than 22khz,
11khz, 7khz, and 5khz works now.

- "Address not in zone" errors for sounds w/ no label specified have
been fixed.

- The "Sound" input device is now automagically included for scripts
which use sounds, you don't have to turn it on manually in order to get
your sound events to end properly if their duration is "Sound[]"

- Problems with parsing of Character-type experiment variable
expressions have been fixed.

- A bug which caused errors which occurred while loading pict files to
have their error dialog boxes painted in with the foreground (or
background) color, making them unreadable, has been fixed.

* BBox Extension 1.4.1

There's a new BBox Extension, version 1.5. It was compiled with
Metrowerks CodeWarrior, instead of Symantec C, and contains some small
but IMPORTANT changes which should make it more stable in error conditions.

* NOTE! You MUST use BBox Extension 1.5 or later with
PsyScope 1.1b4, BBox Extensions before 1.5 will crash. Also, BBox
Extension 1.5 is incompatible with earlier versions of PsyScope (though
it shouldn't crash).


Programmers working on PsyExtensions (PSYXs) should not use their
extensions with this version until the new PSYX Programmer's Manual and
Developer's Kit come out in a few days. There has been a change in the
"pInitialize" message parameters, to better support extensions compiled
using CodeWarrior. PSYXs compiled to use the old pInitialize parameters
will CRASH!

* Mouse Position Support in GUI

The mouse input dialog has been upgraded to support mouse position input.

* "DataFileCreator" Experiment Attribute

A new experiment attribute has been added which will allow you to set
the creator type for the data files created by the Standard DataFilter.
The attribute takes the 4-letter creator code for the application which
you would like to be registered as the creator of the data files. (e.g.
'DataFileCreator: "ALFA"' will make the files be owned by the Alpha text
editor). If this attribute is omitted, the default is PsyScope.
(PsyScope's creator code is 'tach', BTW).

Sound PlayThru Extension

For an internal project, I (jp) wrote an action to turn Sound input
Play-through off and on. It is implemented as a drop-in extension.
This can be made available on poppy, if there's demand for it.

PsyScope 1.1b3 -- beta release 3 for version 1.1
Released: 6/7/95

(you may have noticed we've skipped to the 1.1 series. This is because
we were able to add the features intended for 1.1 before we were ready to
release 1.0.3)

* Bug Fixes
- "Script Doubling" bug and other strange script-editor bugs fixed.
(only seen in 1.0.3b4, 1.1b1, 1.1b2)
- Rest-period hanging bug w/ BBox Timer fixed.
- Some data output problems with new Standard DFIL fixed

* Known Bugs:
- New scripts that use Sound and were created with PsyScope 1.1b1, b2,
or b3 must have the Sound input device turned on manually for sound events
to terminate correctly.
- The CLEAR_MASKED clearing type for Text doesn't work. The text will
simply be erased, instead of masked.

* Voice Synthesis -- PsyScope now supports voice sythesis on Macintoshes
with PlainTalk installed. The setting "Use PlainTalk for Sound" has
been added to the settings dialog (USE_PLAINTALK experiment flag in the
script). When this flag is on, PsyScope will use PlainTalk to speak the
labels of SoundLabel type events, instead of loading the sampled sound.
This is useful for testing sound scripts without having to create and
move around large sound files.

* New input device: Sound -- There is a new input device, Sound, which
detects the end of a playing Sound. The default duration for sound events
is now "Sound[]" instead of SELF_TERMINATE. SELF_TERMINATE will still
work for sampled sounds, but will not work if the USE_PLAINTALK flag is
turned on. This input device does _not_ detect sound input through a
built-in Mac microphone, though that feature may be added in the future.

* PsyScope Tech Notes -- In order to keep PsyScope documentation abreast
of new features, and frequently asked questions between revisions of the
PsyScope Manual, the PsyScope developers have begun writing and
releasing PsyScope Tech Notes. The notes will be in the form of text
files available via FTP (and probably WWW) from poppy.psy.cmu.edu. The
following Notes have been written, or are being written and will be
available soon:
Tech Note #1: Palette Switching
Tech Note #2: Mouse Position Masks (Mouse[click in <port>])
Tech Note #3: Data Filter (DFIL) Extensions
Tech Note #4: Negative RT values

PsyScope 1.1b2 -- (released internally for testing at CMU 5/17/95)

* Bug fixes
- Problem with stereo sounds being played in mono when "Preload All
Stimuli" is on.
- Strange window updating problem with event windows and floating windows.
- Problem with playing some sounds on Mac IIcx.
- Ports dialog is no longer drawn using experiment background and
foreground colors
- Now exits gracefully when trying to open a second copy of PsyScope when
1st copy is already running.

* PsyScope now compiled using Metrowerks CodeWarrior instead of Symantec
C. This may affect PsyExtension writers. An updated PsyExtension
manual and PSYX Developers Kit are due out to explain the changes. This
may also be a source of as-yet undiscovered bugs in the 1.1b* series. We
believe most of the bugs resulting from this change have been found but
it is possible that some may still exist.

* Palette Switching rapid stimulus display implemented. This will allow
display of arbitrarily complex images in a single refresh. See
PsyScope Tech Note #1 on Palette Switching for more info.

* a new "in" keyword has been added to the Mouse[] response condition
allows predicating a response on mouse position. The syntax is:
Mouse[ click in <port> ] or Mouse[ move in <port> ] where <port> is any
valid port specification. See the PsyScope Tech Note #2 on mouse
position conditions.

* A new extension type, the DataFilter (DFIL), has been added. This
extension type will allow the addition of C-language modules to
customize data output. See Tech Note #3 and the PSYX Programmers Manual
for more info.

PsyScope 1.1b1 - (Never released)

PsyScope 1.0.3b3 -- beta release 3 for version 1.0.3
Released: 3/17/95

* Bug Fix
- Fixes a problem using drop-in extensions (including BBox Extension)
on 68040 machines.

PsyScope 1.0.3b2 -- beta release 2 for version 1.0.3
Released: 11/29/94

* Bug fixes:
- Resizing problem w/ Factor Set (Lists) dialog
- ChanceEvent variable bug
- Cursor bug w/ "Preload All Stimuli"

* Added string comparison functionality to Trial Manager Variables
(e.g. {key->sequence == 'hello'} as a Variable expression)

* Internal reorganization to better accommodate PsyExtension writers.
- PsyExtension Developers Kit 0.1 is forthcoming

* BBox Code is now in a PsyExtension, in the PsyScope Extensions Folder.

PsyScope 1.0.2 -- Final release for version 1.0.2
Released: 11/22/94

* Crashing after "BBox Disconnected" error message fixed.

PsyScope 1.0.2b7 -- beta release 7 for version 1.0.2
Released: 10/26/94

* Serious fatal crashing bug with button box driver code fixed.

PsyScope 1.0.2b6 -- beta release 6 for version 1.0.2
Released: 9/30/94

* Intermittent but fatal crashing bug related to the bbox and ASFU Fixer
extension was fixed in this version.

* If no fatal bugs are reported in this version within 1 week of the release,
it will be re-released as 1.0.2.

PsyScope 1.0.2b4 -- beta release 4 for version 1.0.2

* AV Mac problem fixed -- The problem with using the button box on the AV
and PowerMacs is a problem with the way the current bbox protocol
interacts with the new DMA serial driver installed on the AVs and
PowerMacs. The "ASFU Fixer" system extension will fix this problem for
now. Changes to the bbox protocol to deal with this problem are planned
for future releases.

(NOTE: Do not "ASFU Fixer" simultaneously with the "AV/PPC Tuner" system
extension that may be seen floating around. "AV/PPC Tuner" will override
the "ASFU Fixer" and install a serial driver incompatible with PsyScope.)

* Internal changes to the bbox code -- a number of internal changes and
improvements to the Button Box code have been made in the service of
diagnosing the problem with the AV macintoshes, and to prepare for future
changes in the bbox protocol.

PsyScope 1.0.2b3 -- beta release 3 for version 1.0.2

* Essentially the same as b2, but the debugging flags have been removed.
Should be faster.

PsyScope 1.0.2b2 -- beta release 2 for version 1.0.2

* "Timer Inaccurate" errors -- The test that produced the timer
inaccurate errors in previous versions, which was removed for 1.0.2b1 has
been improved and restored. It now produces what seem to be correct
results, including chronic errors on AV model Macintoshes, which seem to
be caused by the fact that the modem port on the AV macs is also a
Geoport communications port. AV users are advised to use the printer
port instead of the modem port.

* debug version -- The debugging flags are still on, for the time being.
We'll probably leave them til the end of beta.

PsyScope 1.0.2b1 -- beta release 1 for version 1.0.2

* "Timer Inaccurate" errors should be gone.

* This version has lots of small, "invisible" changes to the code that were
made in preparation for an eventual port to native PPC. Naturally, in the
process, new bugs may have been introduced. In the service of finding
these, this version has been compiled as a "debug" version. It will run
somewhat more slowly, but is more likely to find bugs before they become
fatal. The debug flags will be turned off for the full release of 1.0.2,
or before, if we feel that the current version is relatively bug-free.

* Changes for 1.0.1 *

- "Flashing window" bug in 1.0 fixed.

For users of the pre-release versions:

* Bugs Fixed since 1.0f11 *

- Opening the template/event windows crashed, esp. on AV macs.
- Zooming windows crashed.