Merge pull request #49 from Psychtoolbox-3/beta

Resync with current beta of official Psychtoolbox-3 repo. Initial 3.0.12 release.
Random acts of kindness.
PsychtoolboxRegistration: Change registration server URL to unbreak it.

Change of URL is needed, so registration attempts don't go
to nirvana.
PsychtoolboxVersion: Fix output of GitHub URL

String was empty when used with regular SVN checkout.
Merge branch 'master' of https://github.com/kleinerm/Psychtoolbox-3
Update "help GStreamer"

- Latest is now 1.4.3
- Screen() now confirmed working (sans multi-media functions)
  without GStreamer installed on both Windows and OSX.
Add overrideBuiltInFunction

Signed-off-by: David Brainard <brainard@psych.upenn.edu>
NetStation(): Fix overflow error, add eventnoack and flushreadbuffer

On Unix systems, the int32 value for timestamps could overflow because
GetSecs returns time since 1973, not since system bootup. Fix it by
using a timestamp from last sync as baseline.

Add new non-blocking 'eventnoack' command, as counterpart to 'event'.
Add new 'flushreadbuffer' command.

-> Changes contributed by Justin Ales in forum message 18150.
-> This is untested by me, but code looks reasonable. Needs retesting.
Screen: Make max allowable vtotal configurable.

Instead of hard-coding that vtotal < vactive * 1.25, allow
to replace 1.25 by a configurable Screen('Preference') setting.

Default is 1.25 as in the past, but Screen('Preference','VBLEndlineOverride')
now allows to optionally specify a different multiplier to tweak
this limit.

This is because 1.25 is a reasonable limit for detecting broken
beamposition queries, but it is too low for some special video
modes used by VPixx Inc's ViewPixx-3D panel, where the vblank
can be up to 50% of vactive, ie., vtotal can be up to 1.5x
vactive. This is part of the bag of tricks used to give shutter
goggles enough switching time for frame sequential stereo.

Once we implement proper logic in PsychImaging/PsychDatapixx to
detect this use case, this should fix false failures of the
beamposition query correctness checks with such devices.

See forum message 18143 for description of the problem.

-> Screen for 64-Bit Octave and 64-Bit Matlab on Linux rebuilt.
-> Other platforms pending.
-> Also quite a bit of whitespace cleanup in preference glue.
-> Also ineffective mmap() read-only fallback for intel gpu's on
   Linux. Thought this would help against EAGAIN mapping failures,
   but doesn't. Anyway, not a real loss, given we have OML_sync_control
   on Intel.
PsychHID/Linux: Add Apple iSight and IR Receiver to KbQueue default keyboard blacklist.

Both are not keyboards in the traditional sense, so
don't choose them as default keyboard for KbQueue's,
only allow them as options for explicit selection.

-> Fixes problems, where the IR receiver gets
   accidentally selected as default keyboard
   on a iMac (or was it a MacMini?) because
   it shows up before the actual keyboard.

-> PsychHID for 64-Bit Octave/Matlab on Linux rebuilt.
-> PsychHID for 32-Bit Octave on Linux pending.
PsychHID for 32-Bit Octave on Linux rebuilt.

To incorporate the new blacklisted “iSight” and “IR Receiver” to avoid
selecting them as default KbQueue keyboard on some Apple machines.
Screen for 32-Bit Linux, 64-Bit Matlab on Windows and 64-Bit OSX rebuilt.

To incorporate the new Screen(‘Preference’,’VBLEndlineOverride’, …);
setting to control allowable maximal VTOTAL as a multiple of VACTIVE.
-> Needed for VPixx ViewPixx 3D displays in frameseq stereo mode with
large vblank intervals.
help PsychtoolboxKernelDriver - Mention new hacks needed for Yosemite

Need to disable global kext signature verification to make the driver
load.

Special thanks to the simple minded people at Cupertino for making life
even a bit more painful on your toy operating system.
help SyncTrouble - Mention how to disable compositor on KDE.

KDE/KWin may sometimes need to completely run without compositor on
some Intel gpu’s due to some problems with the latest ddx’es.

Note: KWin - at least in the version shipping in KUbuntu 14.10 - does
not auto-unredirect fullscreen windows if running on Intel gpu’s. This
according to Martin Graesslin to work around bugs in the Intel-ddx. Our
new-style-override redirect path, which is auto-selected on KDE +
Intel, can still force KWin to unredirect fullscreen windows / disable
composition, via proper XAtoms on our window. However, sometimes this
doesn’t seem to happen fast enough on some systems, so PTB throws some
timing warnings, which are spurious but still confusing to users.
Therefore a manual disable as described in “help SyncTrouble” might be
a better solution for users of Intel GPU’s on KDE/KWin.
PsychImaging: Allow a 50% vblank height on VPixx devices in stereo mode.

VPixx devices in frame sequential stereo mode may use vblank intervals
up to 50% the height of vactive. This would normally cause a detection
of broken beampos queries, as we only allow up to 25% by default.

Raise the limit for max valid vblendline to 50% or up to 1.5 * vactive
if a VPixx device in frame sequential stereo mode is in use.
Merge pull request #212 from kleinerm/master

PTB BETA RELEASE "Random acts of kindness" Psychtoolbox-3.0.12 - SP1

* Blacklist 'iSight' and 'Apple IR Receiver' as default keyboard for Linux keyboard queues.
* Allow configurable vtotal vs. vactive in Screen(), add setup code to loosen constraints for VPixx + Stereo.
* Update some help texts.
* Update PsychtoolboxRegistration to work with new registration server URL.
* Fix timestamp overflow for sending events with NetStation() to EGI Netstation system.
Merge pull request #213 from Psychtoolbox-3/master

PTB BETA RELEASE "Random acts of kindness" Psychtoolbox-3.0.12 - SP1

* Blacklist 'iSight' and 'Apple IR Receiver' as default keyboard for Linux keyboard queues.
* Allow configurable vtotal vs. vactive in Screen(), add setup code to loosen constraints for VPixx + Stereo.
* Update some help texts.
* Update PsychtoolboxRegistration to work with new registration server URL.
* Fix timestamp overflow for sending events with NetStation() to EGI Netstation system.