| VideoToolbox | Psychtoolbox | Eyelink | Tips |
| Home | Intro | Tutorial | Download | Mac OS9 |
OSX |
Win |
USB | Questions | Wiki | Forum | Help |
Introduction
Internal
architecture
Roadmap
Version numbers
Known bugs
History of changes
System requirements
Download
Install
C source files
The OS X Psychtoolbox aims to be mostly compatible with Win and Mac Psychtoolboxes. Your scripts which run on the Mac and Win Psychtoolboxes should eventually also run on the OS X Psychtoolbox. While preserving backwards compatibility for scripts, we also expect to add new features such as alpha blending, rotation, and texture mapping to the OS X Psychtoolbox to take full advantage of the underlying OpenGL API.
The OS X Psychtoolbox is based on OpenGL and Apple's Core Graphics/Quartz and Core OpenGL API's. Because the Psychtoolbox is a set of extensions for MATLAB, it also uses MATLAB's External Interfaces API.
Within the OS X Psychtoolbox C source special provision has been made to abstract out calls to native Apple API's. This is to simplify the work of porting the code to Windows and possibly Linux. Eventually we aim to have a single body of C source code which compiles to Psychtoolbox mex files for each OS.
Additionally the MATLAB External Interfaces API has been abstracted out to simplify the work of binding the Psychtoolbox to languages other than MATLAB, for example C, Mathematica or Python.
Finally, the Psychtoolbox source code now includes a flexible internal API for adding mex functions with subfunctions, as a benefit to C programmers who want to use the Psychtoolbox as a foundation for creating custom Psychtoolbox extensions.
The current OS X Psychtoolbox is version 1.0.6, released on 26 October 2005.
Bug reports from users are essential to the development and polishing of the Psychtoolbox. For the latest bugs, first reported since then, please check the forum. (You can search the forum using the box at the top of this page.) Please report any bugs that you find to the forum. We welcome all bug reports, but they are most helpful when they specify both the computer operating system and the Psychtoolbox version, and include a minimal program that exhibits the error.
Version 1.0.6.
![]()
![]()
Added several folders and functions from the OS9 Psychtoolbox: PsychCal, PsychCalDemoData, PsychColorimetric, PsychColorimetricData, PsychGamma, Psychometric, PsychOptics, PsychProbability, PsychSignal, Ask, GetString, TextBounds, TextCenteredBounds.
The additions are untested and will likely require fixing compatibility problems between platforms: OS9 vs OSX and Matlab 5 vs 7. Please report bugs.
- Enhanced the PsychHardware help text to be more inclusive and linked it to the new USB web page.
- Updated the now ambiguous "Mac:" label to "OS9:" or "OSX:", as appropriate, in the whole OSX Psychtoolbox.
GetChar.
Mario Kleiner's enhancements of Screen. (Pre-release available at mario's psychtoolbox page.)
Version 1.0.5. 11 April 2005.
- Replaced old PsychQuest by new Quest, which is platform independent.
In the PsychSource, amended the help file "Updated_for_MATLAB701.h" to explain how to add MATLAB as an executable for debugging purposes. The Psychtoolbox XCode project is already configured for you to contain the MATLAB target, but it sometimes vanishes for unknown reasons. We now include snapshots of the MATLAB target settings windows in case you need to restore them.
![]()
In the PsychSource, fixed PsychTestForGLErrors() so that it reports the location in the source where the errors are detected, not the location in the source where PsychTestForGLErrors() is defined.
In the PsychSource, created the "DISPLAY" environment variable for the MATLAB target and set it to ":0.0". The tells MATLAB which display to specify to X11 when opening windows. If the DISPLAY" variable is absent, then MATLAB will report an error and default to command-line mode. Some computers might already specify the display to X11 by some other method (.profile perhaps), which would explain why the MATLAB "DISPLAY" target setting is not required on all computers.
In the PsychSource, created new functions to support setting the alpha blending mode. See PsychAlphaBlending.c. Importantly, PsychUpdateAlphaBlendingFactorLazily() should be called within any C Screen command which draws, after setting the GL context and before issuing drawing commands. This is the only requirement to make your custom C extensions to Screen obey calls to the new Screen('BlendFunction',...) described below.
Added a new Screen command, Screen('BlendFunction',...), supporting the OpenGL command glBlendFunc(). By default, alpha blending is now set to glBlendFunc(GL_ONE, GL_ZERO). This gives the same behavior as OS 9, in other words, alpha blending is turned off. To set alpha blending to behave as it has in the OS X Psychtoolbox versions 1.0.4 and earlier, call Screen('BlendFunction', 'GL_ONE', 'GL_ONE_MINUS_SRC_ALPHA');
- Added new functions testing alpha blending: TestAlphaBlending, TestAlphaBlendSetting, TestAlphaMultiplication, TestAlphaMultiplicationAccuracy and TestAlphaAddition. TestAlphaBlending calls the other four, for a comprehensive test just use it.
![]()
![]()
Fixed the bug where the Screen('DrawText', ... ) would not draw text in offscreen windows.
Added a new test, "TestTextInOffscreenWindowOSX", which compares text rendered into offscreen windows to text rendered into onscreen windows by taking the difference of images read by 'GetImage'. WARNING: The test detects small differences between onscreen and offscreen text. For now, if you require text precise to the pixel and are using offscreen windows, then we recommend NOT commingling calls to DrawText into onscreen and offscreen windows for your stimulus set.
![]()
Added a new Screen preference, 'TextAlphaBlending'. Setting the 'TextAlphaBlending' preference flag makes the Screen 'DrawText' command obey both alpha values and the blending rules set by ('BlendFunction',...). Clearing the flag causes 'DrawText' to ignore alpha values and the blending rule and instead to use GL_ONE alpha factor for the text and GL_ONE_MINUS_SRC_ALPHA for the destination. By default 'TextAlphaBlending' is disabled.
![]()
Created a new screen command 'TextBackgroundColor' which sets the background color of text. 'DrawText' draws not only the characters into a window, but a full rectangle of pixels bounding the characters. The background is the region of that ractangle not filled by characters. By default, the text background is tranparent and the background color setting is ignored. When the TextAlphaBlending preference flag is set, 'DrawText' obeys the background color and blends it into the window obeying blending rules set by Screen's new 'BlendFunction' command.
![]()
Fixed the bug where Screen 'DrawText' crashed if the text font was not previously set using Screen 'TextFont'. The default font is now Geneva.
- With the exception of tests and demos, grouped all Psychtoolbox functions related to alpha blending under a new Psychtoolbox subfolder, "PsychAlphaBlending". Enter "help PsychAlphaBlending" at the MATLAB command line for more information.
- Added "FlushEvents.m" which reports that FlushEvents is not provided in OS X.
- Added "GrayIndex".
- Added Screen('WindowSize'). Inspired by WindowSize.m written by Frans Cornellisen.
- Added "RectSize" provided by Frans Cornellisen.
![]()
In the PsychSource, fixed bugs in C functions PsychCopyInFlagArg() and PsychAllocInFlagArg(). They would not accept input arguments of type logical.
![]()
Added a new command 'LineStipple' to Screen. It sets Screen 'DrawLine' to draw dashed lines.
Created a new demo 'LineStippleDemo' which draws dashed lines using Screen's new 'LineStipple' command in combination with 'DrawLine'.
In the C source, added new functions PsychWaitIntervalSeconds() and PsychGetKernelTimebaseFrequencyHz() to PsychTimeGlue.c file. PsychWaitIntervalSeconds sleeps the thread from which it is called for the specified period. PsychGetKernelTimebaseFrequencyHz() gets the frequency of the clock used for "time constraint" Priority settings in OS X.
Fixed WaitSecs to that it kills time by sleeping the thread, not looping. It now uses the system call mach_wait_until() to delay. Mario Kleiner's suggestion.
Added a new Psychtoolbox command "MachAbsoluteTimeClockFrequency" which returns the correct clock frequency to use when calculating priority level settings. Previously we used "GetBusFrequencyMex" which was the wrong clock. Mario Kleiner modified GetBusFrequencyMex to return the Mach absolute time clock frequency in the first argument and the bus fequency in the second. We've left GetBusFrequencyMex as it was, and used Mario's enhancements to create MachAbsoluteTimeClockFrequency. Apple documents Mach absolute time units here.
- Removed BusTicksToSeconds.m and SecondsToBusTicks.m functions. They only multiplied and divided and were used only by MachSetTimeConstraintPriority. They are now unused in the Psychtoolbox because the kernel absolute time clock frequency returned by MachAbsoluteTimeClockFrequency to calculate priority level settings, not the bus clock.
- Fixed KbWait and PsychHID('KbWait') to suspend the loop for a brief period during polling. Previously, it used too much CPU time, causing poor response time on single-CPU systems. We now suspend the loop for 0.004 seconds on each pass. This will add, at the most, that amount of error in the wait time.
- Removed "SleepSecs" and replaced all calls to "SleepSecs" in the Psychtoolbox with calls to "WaitSecs". Calling "SleepSecs" now will issue an error telling you the it is obsolete and recommending that you use"WaitSecs" instead. WaitSecs now sleeps, and without the 1-second limit which SleepSecs had.
Version 1.0.42. 27 January 2005.
![]()
Fixed a bug where drawing text interfered with drawing textures. Provided by Mario Kleiner.
![]()
Improved Screen 'FillPoly' to draw concave polygons. Formerly, it drew only convex polygons. Provided by Mario Kleiner.
![]()
Added a new test, "TestFillPoly", to test drawing of a concave polygon. Provided by Mario Kleiner.
![]()
Fixed a bug where unloading Screen, as by calling "clear all" or "clear mex", failed to deallocate offscreen windows and textures. Provided by Mario Kleiner.
Fixed Xcode .info files for Gestalt and IOPort targets; They were misnamed and had absolute paths.
![]()
Added new Screen subfunctions "GetTimelist" and "Cleartimelist" useful to C programmers for internal timing of Screen.
![]()
Replaced the GetChar calls in the DrawSomeText Demo with KbWait.
![]()
Replaced GetChar, which crashed MATLAB, with an error message suggesting that KbCheck be used instead.
Added a new test, "TestMakeTextureTiming". It uses the new Screen "GetTimelist" subfunction to report the proportion of time which MakeTexture spends allocating memory for the texture.
- Removed folders "PsychTestsOSX" and "PsychDemosOSX," merging their contents into folders "PsychTests" and "PsychDemos", respectively. From the MATLAB command line "help PsychTests" and "helpPsychDemos" now report all available demos and tests.
Version 1.0.41. 14 January 2005.
Improved the "How To Add To Screen.rtf" instructions which are included with the source code and merged in Keith Schneider's corrections. For C programmers, these instructions explain how to add your own subfunctions to the Screen mex file.
![]()
Merged in Screen 'DrawDots' written by Keith Schneider and Finnegan Calabro. Merged in accompanying dot_demo.m script renamed to "DotDemo.m" to agree with a Psychtoolbox naming convention. Located in Psychtoolbox/PsychContributed.
![]()
Corrected a bug in DescribeComputer where it incorrectly displayed system memory size. Initially reported by David Jones and explained by Mario Kleiner. Screen 'Computer' stored the result in an int, resulting in overflow for large amounts of memory.
![]()
Added to the list of Psychtoolbox authors in the PsychAuthors.c file. In alphabetical order: Finnegan Calabro, Mario Kleiner, Keith Schneider. The Screen 'Version' command now reports their names in the .authors field of the result.
- Removed a bug in AssertMex as suggested by Frans Cornellisen.
Merged in Mario Kleiner's improvements to Screen 'DrawDots'.
Corrected a few lines in Screen 'CopyWindow' to fix a problem with alpha blending. Suggested by Mario Kleiner.
Merged repairs suggested by Mario Kleiner into Screen 'FillOval' and 'FrameOval'. They now restore OpenGL state after changing it.
Added a new mex function "IOPort" which controls the IOWarrior parallel digital I/O device connected to your computer via the bus. IOWarrior is similar to the ActiveWire device, though available only in a kit which you must solder together. (ActiveWire Inc. does not yet provide drivers for OS X.) The IOPort function should be considered a starting point for further development and not yet a useful utility; It only sets and does not read bits. It is undocumented.
Version 1.0.40. 20 December 2004.
Added Gestalt, which queries your Mac's configuration. MATLAB 5 on OS 9 supplied Gestalt but MATLAB 6 on OS X does not. Gestalt on OS X works like Gestalt on OS 9 and is supplied by the Psychtoolbox instead of MATLAB. Our C source code for the Gestalt mex file is available in the OS X Psychtoolbox source.
Merged in the AppleVersion from the OS 9 PTB. AppleVersion transforms bit patterns returned by Gestalt into strings holding a version number.
The new Psychtoolbox function "MacModelName" reports the marketing name of your computer. This is the same as what OS 9 provided in the "model" field of the struct returned by Screen('Computer'). Note that there are two different strings which describe your computer model. Cryptic model identifier strings stored in firmware uniquely identify particular mac models. In the OS X Psychtoolbox, these model identifiers are reported within the struct returned by Screen('Computer'). In comparison with the model identifier, the new function MacModelName returns a meaningful marketing name associated with your particular model, for example "PowerBook G4 15"" or "Xserve G5" instead of "PowerBook5,4" and "RackMac3,1", respectively. MacModelName translates the model identifier into the marketing name by mapping through the table in /System/Library/SystemProfiler/SPPlatformReporter.spreporter/Contents/Resources/English.lproj/Localizable.strings .
![]()
Added fields the struct returned by Screen('Computer') to report the name of the system user. The new fields are "processUserLongName", "processUserShortName" and "consoleUserName".
![]()
Added the primary ethernet MAC address to the struct returned by Screen('Computer'). This might be useful for uniquely identifying particular computers in bug reports. In the future, our ScreenTest function, which reports information about your computer, might use this to uniquely identify your computer within a database of bug reports.
![]()
Added the MacOS version string, for example 'Mac OS 10.3.7', within the new field "system" of the struct returned by Screen('Computer').
Implemented DescribeComputer.
![]()
![]()
Fixed a bug in PsychHID introduced in 1.0.3 which caused KbCheck and GamePad to fail. The error owed to a single misplaced line in the "scripting glue" layer of the C source within the function which allocates a "logical" (boolean) array for return arguments.
Created "NameBytes" which accepts a number of bytes and returns an easily-read string in sensible units. For example, NameBytes(1.3422e+09)returns '1.25 GB'.
Created "NameFrequency" which accepts a frequency in units of Hz and returns an easily-read string in sensible units. For example, NameFrequency(1.2500e+09) returns '1.25 GHz'.
Merged in PsychtoolboxDate.
- Improved AssertMex to accept synonyms 'OSX', 'OS9', and 'Windows' for OS X, OS 9 and Windows, respectively. AssertMex also still accepts MATLAB's standard (confusing) names for those platforms as returned by 'Computer': 'MAC', 'MAC2', 'PCWIN'. The new synonyms are consistent with names of Psychtoolbox convenience functions "IsOSX", "IsOS9" and "IsWin".
Implemented WaitTicks.
Version 1.0.3. 18 November 2004.
![]()
Added the help file "How_To_Add_To_Screen.h" to the Xcode project. It gives detailed steps for how to create your own new Screen subfunction. It assumes knowledge of C and no prior experience with Xcode.
![]()
Added GetMouseIndices which returns indices into the struct array of HID devices reported by PsychHID.
![]()
The 1.0.2 distribution contained two copies PsychHID, one old and one new. MATLAB located the old one first on its path. The old one has been removed.
Added 'GlobalRect' command to Screen
Fixed mistakes in the built-in help which incorrectly referred to "GamePad" as "PsychGamePad".
Renamed Screen commands 'HideCursor', 'ShowCursor', and 'PositionCursor' to 'HideCursorHelper', 'ShowCursorHelper', and SetMouseHelper, respectively. Modifed the Screen synopsis to instruct not to call these screen commands directly, but only through HideCursor, ShowCursor, and SetMouse. It was easier to implement these functions as screen commands than stand-alone mex functions. However, for compatability with Windows and OS 9, do not call them directly through Screen.
![]()
Fixed the bug in Screen 'DrawLine' where it drew lines in the wrong place.
Added GetMouse.
Added MouseTraceDemoOSX.
![]()
Merged in the fix for a bug in Screen 'MakeTexture' which caused only square, but not rectangular textures to work. Thanks to Michael Tarr and Jochen Laubrock.
Version 1.0.2. 5 November 2004.
Screen when invoked with no arguments now returns the list of screen subfunctions.
Updated all Psychtoolbox targets for Xcode version 1.5. This fixed a problem where some build settings were invisible because they appeared in neither the old Project Builder target settings nor in the new Xcode project build style settings.
Updated the Xcode projects to build against libraries and headers for MATLAB version 7.0.1. The documentation file "Updated_for_MATLAB 7_0_1.h" explains in detail a method to uncover mex file build settings from MATLAB and then construct Xcode projects to build and debug MATLAB mex file targets.
Fixed the problem that PsychHID would not build.
Simplified the source installation procedure. Installing the Psychtoolbox source code no longer requires configuring your computer to set an environment variable to point to the MATLAB directory. The Xcode project now assumes that it can find MATLAB in /Applications/MATLAB701. This is the default installation location, we no longer assume the idiosyncratic MATLAB.app bundle which was distributed only here at the New York University Center for Neural Science. If you install MATLAB in the default location, no alterations to the Psychtoolbox Xcode project should be required. If you use a different configuration, see the Psychtoolbox3/README.rtf document in the Psychtoolbox source for how to reconfigure the Psychtoolbox Xcode project. README.rtf also appears in the Xcode "groups & files" pane under "Documentation"
Linked C++ libs with Psychtoolbox mex targets. Xcode should now compile any file with the .c extension as C and any file with the .cpp extension as C++. C++ was not tested thoroughly. Note that we intend to keep the OS X Psychtoolbox mex source in C. However, for those who want to write their own MATLAB mex extensions in C++, you can use the Psychtoolbox XCode project as a starting point.
Updated all targets to build with gcc 3.3.
Updated and purged obsolete documentation and notes files included with the source code. In future releases we will consolidate source documentation and notes files into the project "Groups & Files" pane in Xcode project, but for now it is available in three locations:
- README.rtf is at Psychtoolbox3/README.rtf and explains hot to install the source.
- Psychtoolbox3/Notes contains various notes, most of which discuss pros and cons of methods for implementing particular features. For historical reasons, some obsolete information was retained, but is now marked obsolete.
- In the Psychtoolbox Xcode project, Groups & Files pane, under Psychtoolbox/Documentation. These are links to files within the Psychtoolbox3 source folder. Many are .h files. However, because the Xcode embedded editor handles rtf just fine (and autowraps text!) we will probably migrate these pure documentation files for the source to .rtf.
Version 1.0.1. 10 September 2004.
Added PsychHID.mexmac which is inadvertently omitted from the 1.0 release. This fixes KbCheck and GamePad functions which depend on PsychHID.
![]()
Wrote the PsychHID.m documentation file for PsychHID.
- Added Try/Catch to the demos which open onscreen windows: DrawSomeTextOSX, DriftDemoOSX, MovieDemoOSX. The catch clause calls Screen('CloseAll'), closing the onscreen window in case the script crashes.
Merged in QUEST from the OS 9 Psychtoolbox. Required only a case change, MATLAB 6.5 is case-sensitive. Trivial reformatting of the help text in most Psychtoolbox QUEST files.
Added new function IsWindows. Shorthand for strcmp(computer, 'PCWIN');
Modified PsychtoolboxVersion.m to add a third numeric field and return a the version as string instead of in a double. The leftmost field, "major": designates major feature changes. The middle field, "minor" : even means stable, odd means unstable. The rightmost field: a counter distinguishing releases with matching major and minor versions. Documented in PsychtoolboxVersion help.
Fixed Sample.m by changing call to Randi in Sample.m. to 'Randi' from 'randi'. MATLAB 6 is case sensitive.
Added a post-build step to touch the MODULEVersion.c file. This forces compilation on subsequent recompiles, so that up-to-date information is compiled in for the 'Version' subcommand.
Fixed absolute paths in Xcode project, making them relative to project. Retroactively fixed same in PsychSource 1.0 package.
Improved documentation for DriftDemoOSX and DrawSomeTextOSX.
Software for Psychtoolbox
- OS X version 10.3 or better.
- MATLAB 7.0.1
- OS X Psychtoolbox
Software for Psychtoolbox C developers
- Software for Psychtoolbox (see above)
- Xcode
- HID Utilities Source
Hardware
- A Macintosh computer which meets requirements for OS 10.3 and MATLAB 7.0.1.
- A video card supporting OpenGL extensions GL_UNPACK_CLIENT_STORAGE_APPLE, GL_TEXTURE_RECTANGLE_EXT and GL_STORAGE_SHARED_APPLE. (list coming soon.)
Download
Psychophysics Toolbox for OS X (Updated
7 August 2006)
Current version:
Installing
and updating are now automated. If
you already have the UpdatePsychtoolbox.m script,
just type help UpdatePsychtoolbox and follow the instructions. Otherwise,
first make sure you don't have an old obsolete version by typing: which
DownloadPsychtoolbox . If
you find it, delete it, eg: delete /Applications/Psychtoolbox/DownloadPsychtoolbox.m
. Then
download DownloadPsychtoolbox,
and add that folder to your MATLAB path: select menu item "File:Set
path" and click the "Add path" button. Then type help
DownloadPsychtoolbox and
follow the instructions. You'll type either DownloadPsychtoolbox('beta') or DownloadPsychtoolbox('stable') to
specify which flavor of the Psychtoolbox you want to use. If you like to live
dangerously, then you may prefer 'beta'. You can update at any time
by running UpdatePsychtoolbox, which is included in your new Psychtoolbox.
The various versions of the Psychtoolbox provided by the automated downloads and updates all currently identify themselves as "Version 1.06". That's confusing. Sorry! We hope to introduce a new versioning scheme that will identify the flavor (beta/stable) and date of your working copy of the Psychtoolbox. We suggest updating before reporting a bug to the forum. Your report should specify the operating system (OSX or Win) and flavor (beta or stable) of your Psychtoolbox, and when you last updated it. As always, a bug report should include a minimal program that can be run to demonstrate the bug.
If you get stuck, post your question to the forum by email or web. Please specify your full name and the version of your operating system, MATLAB, and psychtoolbox.
User-contributed software (useful!):
http://groups.yahoo.com/group/psychtoolbox/files/
We suggest that all new user contributions go to , which is easier to access and maintain.
Old versions:
downloads
since 4 October 2004.
See
the installation instructions and
the list of known bugs.
Psychtoolbox
OS X Release 1.0.6 (26 October 2005) requires
MATLAB 7.0.1 or greater.
This
release might be useful.
Download compressed
disk image (1.8 MB).
Psychtoolbox
OS X Release 1.0.5 (11 April 2005) requires MATLAB 7.0.1 or greater.
This release might be useful.
Download compressed disk image (1.8 MB).
Psychtoolbox OS X Release 1.0.42 (27 January 2005) requires MATLAB 7.0.1 or greater.
This release might be useful.
Download compressed disk image (1.8 MB).
Psychtoolbox
OS X Release 1.0.41 (14 January 2005) requires
MATLAB 7.0.1 or greater.
This release might be useful.
Download compressed
disk image (1.9 MB).
Psychtoolbox
OS X Release 1.0.40 (20 December 2004) requires
MATLAB 7.0.1 or greater.
This release might be useful.
Download compressed
disk image (1.8 MB).
Psychtoolbox
OS X Release 1.0.3 (18 November 2004) requires
MATLAB 7.0.1 or greater.
This release might be useful.
Download compressed
disk image (2.6 MB).
Psychtoolbox
OS X Release 1.0.2 (5 November 2004) requires
MATLAB 7.0.1 or greater.
This release might be useful.
Download compressed
disk image (2.6 MB).
Psychtoolbox
OS X Release 1.0.1 (10 September 2004) requires
MATLAB 6.5 or greater.
This release might be useful.
Download compressed
disk image (9.5 MB).
Psychtoolbox
OS X Release 1.0 (24 July 2004) requires
MATLAB 6.5 or greater.
This release might be useful.
Download compressed
disk image (8.5 MB).
Psychtoolbox
OS X Preview Release 0.8 (18 July 2004) requires
MATLAB 6.5 or greater.
This
is a preview release. It is not seriously useful.
Download compressed
disk image (8.4 MB).
Psychtoolbox
OS X Preview Release 0.6 (3 July 2004) requires
MATLAB 6.5 or greater.
This
is a preview release. It is not seriously useful.
Download compressed
disk image (9.5 MB).
Psychtoolbox
OS X Preview Release 0.3 (25 September 2003) requires
MATLAB 6.5.
This
is a preview release. It is not seriously useful.
Download compressed
disk image (9.5 MB).
Psychtoolbox
OS X Preview Release 0.2 (31 July 2003) requires
MATLAB 6.5.
This
is a preview release. It is not seriously useful.
Download compressed
disk image (8.7 MB).
Psychtoolbox
OS X Preview Release 0.1 (26 February 2003) requires MATLAB 6.5.
This is a preview release. It is not seriously useful.
Download stuffit archive
(2.5 MB).
As of 2006, downloading for installation and updates is now automated. See Downloads, above.
See
the list
of known bugs.
The source packages are intended for those who want to help develop the Psychtoolbox in C. In addition to everything contained within the Psychtoolbox the Psychtoolbox C Source package also includes C source for Psychtoolbox mex functions and an Xcode project configured to build mex targets.
When installing the Psychtoolbox source, change your MATLAB path settings to point to the Psychtoolbox directory under the source folder. The Psychtoolbox Xcode targets build into this folder. The path to the PsychToolbox folder within the "Psychtoolbox3" source folder is: Psychtoolbox3/Target/OSX/Psychtoolbox; That directory and all subdirectories should be added to the MATLAB path and any previous Psychtoolbox paths removed.
If you have not installed MATLAB into /Applications/MATLAB701 then see the README.rtf document in the source package for how to change Xcode project settings to locate your MATLAB folder.
Software required for developing the OS X Psychtoolbox source is listed here.
Psychtoolbox OS X C Source Release 1.0.6 (26 October 2005)
NOTE: Most users will not want the C source code. It is only for C programmers.
Download compressed disk image (13.6 MB)
Psychtoolbox OS X C Source Release 1.0.5 (11 April 2005)
NOTE: Most users will not want the C source code. It is only for C programmers.
Download compressed disk image (26.7 MB)
Psychtoolbox
OS X C Source Release 1.0.42 (27 January 2005)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (25.6 MB)
Psychtoolbox
OS X C Source Release 1.0.41 (14 January 2005)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (26.8 MB)
Psychtoolbox
OS X C Source Release 1.0.40 (20 December 2004)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (25.4 MB)
Psychtoolbox
OS X C Source Release 1.0.3 (18 November 2004)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (26 MB)
Psychtoolbox
OS X C Source Release 1.0.2 (5 November 2004)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (26 MB)
Psychtoolbox
OS X C Source Release 1.0.1 (10 September 2004)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (31.9 MB)
Psychtoolbox
OS X C Source Release 1.0 (24 July 2004)
NOTE:
Most users will not want the C source code. It is only for C programmers.
Download compressed
disk image (31.1 MB)
David
Brainard, Denis Pelli & Mario
Kleiner.
psychtoolbox@yahoogroups.com
Updated