BasicSoundOutputDemo segmentation fault

Hi there,

I tried to run the BasicSoundOutputDemo on my PC running XP SP3, and it crashed Matlab with a segmentation fault. See below for output. Looking through the archives of this group, I tried to find previous messages referring to this type of problem and found this:

http://tech.groups.yahoo.com/group/psychtoolbox/message/7249

Following the discussion, I tried typing the following on the commandline:

PsychPortAudio('Verbosity', 10); % To enable more debug output...
d=PsychPortAudio('GetDevices')

The second statement caused the same crash. Any suggestions on what the problem might be? Could it be a SP3 issue?

thanks!
Mary


>> BasicSoundOutputDemo
Could not find a low-latency enhanced PortAudio driver. If you need
really accurate sound onset timing and latency < 30 msecs, please read
"help InitializePsychSound" carefully and follow the instructions.
Will use our standard driver instead of enhanced driver...
Unknown Windows exception of type=c06d007e was not caught.
------------------------------------------------------------------------
Segmentation violation detected at Tue Oct 20 09:24:39 2009
------------------------------------------------------------------------

Configuration:
MATLAB Version: 7.8.0.347 (R2009a)
MATLAB License: 2374
Operating System: Microsoft Windows XP
Window System: Version 5.1 (Build 2600: Service Pack 3)
Processor ID: x86 Family 6 Model 15 Stepping 11, GenuineIntel
Virtual Machine: Java 1.6.0_04-b12 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
Default Encoding: windows-1252

Fault Count: 1

Register State:
EAX = 00c2bd28 EBX = 00000000
ECX = 00000000 EDX = 00000015
ESI = 00c2bdf0 EDI = 00000000
EBP = 00c2bd78 ESP = 00c2bd24
EIP = 7c812afb FLG = 00000202

Stack Trace:
[0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00c2bdec)
[1] PsychPortAudio.mexw32:0x055d4dd6(24, 0x00c2bd9c, 0x055eb22c "Open GetDeviceSettings ", 0)
[2] PsychPortAudio.mexw32:0x055d3f81(0x022a2bb8, 0, 0, 0x055eb250 "DeviceIndex")
[3] PsychPortAudio.mexw32:0x055cfdcd(0, 0, 0, 0)
[4] PsychPortAudio.mexw32:0x055c5a88(1, 0x00c2c690, 2, 0x00c2c600)
[5] libmex.dll:_mexRunMexFile(1, 0x00c2c690, 2, 0x00c2c600) + 132 bytes
[6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 73 bytes
[7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 321 bytes
[8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 204 bytes
[9] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00c2c690, 2, 0x00c2cdf8 "ÄÐÂ") + 81 bytes
[10] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2c8d8, 1, 1, 0x10d86778) + 1209 bytes
[11] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0x0fa443a8, 0xffffffff, 0x10f3c4a0, 0x10f1efe0) + 266 bytes
[12] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2cdf8 "ÄÐÂ", 0xffffffff, 0xffffffff, 0x10f1efe0) + 170 bytes
[13] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2d098, 0xffffffff, 0, 0) + 115 bytes
[14] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2d1f4, 0x00c2d348, 0x00c2d2dc, 0x00c2d498) + 2523 bytes
[15] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 764, 106, 0) + 826 bytes
[16] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 39 bytes
[17] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 251 bytes
[18] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e8a390, 0) + 935 bytes
[19] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 466 bytes
[20] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2d830, 0) + 23 bytes
[21] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 22 bytes
[22] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 204 bytes
[23] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2d830, 0, 0x00c2df98 "dâÂ") + 81 bytes
[24] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2da78, 0, 1, 0x10d86028) + 1209 bytes
[25] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50d00, 0x10dfa5d0) + 266 bytes
[26] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2df98 "dâÂ", 0xffffffff, 0xffffffff, 0x10dfa5d0) + 170 bytes
[27] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2e238, 0xffffffff, 0, 0) + 115 bytes
[28] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2e394, 0x00c2e4e8, 0x00c2e47c, 0x00c2e638) + 2523 bytes
[29] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 670, 80, 0) + 826 bytes
[30] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 39 bytes
[31] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 251 bytes
[32] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e89c70, 0) + 935 bytes
[33] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 466 bytes
[34] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2e9d0, 0) + 23 bytes
[35] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 22 bytes
[36] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 204 bytes
[37] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2e9d0, 0, 0x00c2f13c) + 81 bytes
[38] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2ec18, 0, 1, 0x10d130e0) + 1209 bytes
[39] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50f10, 0x10df6850) + 266 bytes
[40] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2f13c, 0xffffffff, 0xffffffff, 0x10df6850) + 170 bytes
[41] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2f3dc, 0x10d1e650, 0, 0) + 115 bytes
[42] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2f4b0, 0x00c2f488, 0x00c2f4ac, 0x00c2f4a8) + 2523 bytes
[43] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff01, 0xffffffff, 0x10e89aa8, 0) + 572 bytes
[44] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2f9a0, 0, 0) + 466 bytes
[45] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_worksp
Dear Mary,

Did you try following the directions in the error message you pasted
below? The first few lines might be helpful:

Could not find a low-latency enhanced PortAudio driver. If you need
really accurate sound onset timing and latency < 30 msecs, please read
"help InitializePsychSound" carefully and follow the instructions.

Best,

David

On Tue, Oct 20, 2009 at 6:34 AM, mithagare <mary@...> wrote:
>
> Hi there,
>
> I tried to run the BasicSoundOutputDemo on my PC running XP SP3, and it crashed Matlab with a segmentation fault. See below for output. Looking through the archives of this group, I tried to find previous messages referring to this type of problem and found this:
>
> http://tech.groups.yahoo.com/group/psychtoolbox/message/7249
>
> Following the discussion, I tried typing the following on the commandline:
>
> PsychPortAudio('Verbosity', 10); % To enable more debug output...
> d=PsychPortAudio('GetDevices')
>
> The second statement caused the same crash. Any suggestions on what the problem might be? Could it be a SP3 issue?
>
> thanks!
> Mary
>
> >> BasicSoundOutputDemo
> Could not find a low-latency enhanced PortAudio driver. If you need
> really accurate sound onset timing and latency < 30 msecs, please read
> "help InitializePsychSound" carefully and follow the instructions.
> Will use our standard driver instead of enhanced driver...
> Unknown Windows exception of type=c06d007e was not caught.
> ----------------------------------------------------------
> Segmentation violation detected at Tue Oct 20 09:24:39 2009
> ----------------------------------------------------------
>
> Configuration:
> MATLAB Version: 7.8.0.347 (R2009a)
> MATLAB License: 2374
> Operating System: Microsoft Windows XP
> Window System: Version 5.1 (Build 2600: Service Pack 3)
> Processor ID: x86 Family 6 Model 15 Stepping 11, GenuineIntel
> Virtual Machine: Java 1.6.0_04-b12 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
> Default Encoding: windows-1252
>
> Fault Count: 1
>
> Register State:
> EAX = 00c2bd28 EBX = 00000000
> ECX = 00000000 EDX = 00000015
> ESI = 00c2bdf0 EDI = 00000000
> EBP = 00c2bd78 ESP = 00c2bd24
> EIP = 7c812afb FLG = 00000202
>
> Stack Trace:
> [0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00c2bdec)
> [1] PsychPortAudio.mexw32:0x055d4dd6(24, 0x00c2bd9c, 0x055eb22c "Open GetDeviceSettings ", 0)
> [2] PsychPortAudio.mexw32:0x055d3f81(0x022a2bb8, 0, 0, 0x055eb250 "DeviceIndex")
> [3] PsychPortAudio.mexw32:0x055cfdcd(0, 0, 0, 0)
> [4] PsychPortAudio.mexw32:0x055c5a88(1, 0x00c2c690, 2, 0x00c2c600)
> [5] libmex.dll:_mexRunMexFile(1, 0x00c2c690, 2, 0x00c2c600) + 132 bytes
> [6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 73 bytes
> [7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 321 bytes
> [8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 204 bytes
> [9] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00c2c690, 2, 0x00c2cdf8 "ÄÐÂ") + 81 bytes
> [10] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2c8d8, 1, 1, 0x10d86778) + 1209 bytes
> [11] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0x0fa443a8, 0xffffffff, 0x10f3c4a0, 0x10f1efe0) + 266 bytes
> [12] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2cdf8 "ÄÐÂ", 0xffffffff, 0xffffffff, 0x10f1efe0) + 170 bytes
> [13] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2d098, 0xffffffff, 0, 0) + 115 bytes
> [14] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2d1f4, 0x00c2d348, 0x00c2d2dc, 0x00c2d498) + 2523 bytes
> [15] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 764, 106, 0) + 826 bytes
> [16] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 39 bytes
> [17] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 251 bytes
> [18] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e8a390, 0) + 935 bytes
> [19] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 466 bytes
> [20] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2d830, 0) + 23 bytes
> [21] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 22 bytes
> [22] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 204 bytes
> [23] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2d830, 0, 0x00c2df98 "dâÂ") + 81 bytes
> [24] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2da78, 0, 1, 0x10d86028) + 1209 bytes
> [25] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50d00, 0x10dfa5d0) + 266 bytes
> [26] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2df98 "dâÂ", 0xffffffff, 0xffffffff, 0x10dfa5d0) + 170 bytes
> [27] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2e238, 0xffffffff, 0, 0) + 115 bytes
> [28] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2e394, 0x00c2e4e8, 0x00c2e47c, 0x00c2e638) + 2523 bytes
> [29] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 670, 80, 0) + 826 bytes
> [30] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 39 bytes
> [31] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 251 bytes
> [32] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e89c70, 0) + 935 bytes
> [33] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 466 bytes
> [34] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2e9d0, 0) + 23 bytes
> [35] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 22 bytes
> [36] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 204 bytes
> [37] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2e9d0, 0, 0x00c2f13c) + 81 bytes
> [38] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2ec18, 0, 1, 0x10d130e0) + 1209 bytes
> [39] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50f10, 0x10df6850) + 266 bytes
> [40] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2f13c, 0xffffffff, 0xffffffff, 0x10df6850) + 170 bytes
> [41] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2f3dc, 0x10d1e650, 0, 0) + 115 bytes
> [42] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2f4b0, 0x00c2f488, 0x00c2f4ac, 0x00c2f4a8) + 2523 bytes
> [43] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff01, 0xffffffff, 0x10e89aa8, 0) + 572 bytes
> [44] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2f9a0, 0, 0) + 466 bytes
> [45] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_worksp
>
>
No, BasicSoundOutputDemo should have worked without the low-latency driver, and usually it does, at least i'm not aware of crash problems. But then the problem is "solved" by Mary's upgrade to the low-latency plugin and this seems to be an isolated failure case, so I'll not pursue this further unless many other people report trouble.

Btw. the low-latency plugin for MS-Windows by itself will not provide any low-latency or improved timing accuracy, it just gives you the option of getting these if you have a proper ASIO sound card installed.

best,
-mario

--- In psychtoolbox@yahoogroups.com, David Fencsik <fencsik@...> wrote:
>
> Dear Mary,
>
> Did you try following the directions in the error message you pasted
> below? The first few lines might be helpful:
>
> Could not find a low-latency enhanced PortAudio driver. If you need
> really accurate sound onset timing and latency < 30 msecs, please read
> "help InitializePsychSound" carefully and follow the instructions.
>
> Best,
>
> David
>
> On Tue, Oct 20, 2009 at 6:34 AM, mithagare <mary@...> wrote:
> >
> > Hi there,
> >
> > I tried to run the BasicSoundOutputDemo on my PC running XP SP3, and it crashed Matlab with a segmentation fault. See below for output. Looking through the archives of this group, I tried to find previous messages referring to this type of problem and found this:
> >
> > http://tech.groups.yahoo.com/group/psychtoolbox/message/7249
> >
> > Following the discussion, I tried typing the following on the commandline:
> >
> > PsychPortAudio('Verbosity', 10); % To enable more debug output...
> > d=PsychPortAudio('GetDevices')
> >
> > The second statement caused the same crash. Any suggestions on what the problem might be? Could it be a SP3 issue?
> >
> > thanks!
> > Mary
> >
> > >> BasicSoundOutputDemo
> > Could not find a low-latency enhanced PortAudio driver. If you need
> > really accurate sound onset timing and latency < 30 msecs, please read
> > "help InitializePsychSound" carefully and follow the instructions.
> > Will use our standard driver instead of enhanced driver...
> > Unknown Windows exception of type=c06d007e was not caught.
> > ----------------------------------------------------------
> > Segmentation violation detected at Tue Oct 20 09:24:39 2009
> > ----------------------------------------------------------
> >
> > Configuration:
> > MATLAB Version: 7.8.0.347 (R2009a)
> > MATLAB License: 2374
> > Operating System: Microsoft Windows XP
> > Window System: Version 5.1 (Build 2600: Service Pack 3)
> > Processor ID: x86 Family 6 Model 15 Stepping 11, GenuineIntel
> > Virtual Machine: Java 1.6.0_04-b12 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
> > Default Encoding: windows-1252
> >
> > Fault Count: 1
> >
> > Register State:
> > EAX = 00c2bd28 EBX = 00000000
> > ECX = 00000000 EDX = 00000015
> > ESI = 00c2bdf0 EDI = 00000000
> > EBP = 00c2bd78 ESP = 00c2bd24
> > EIP = 7c812afb FLG = 00000202
> >
> > Stack Trace:
> > [0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00c2bdec)
> > [1] PsychPortAudio.mexw32:0x055d4dd6(24, 0x00c2bd9c, 0x055eb22c "Open GetDeviceSettings ", 0)
> > [2] PsychPortAudio.mexw32:0x055d3f81(0x022a2bb8, 0, 0, 0x055eb250 "DeviceIndex")
> > [3] PsychPortAudio.mexw32:0x055cfdcd(0, 0, 0, 0)
> > [4] PsychPortAudio.mexw32:0x055c5a88(1, 0x00c2c690, 2, 0x00c2c600)
> > [5] libmex.dll:_mexRunMexFile(1, 0x00c2c690, 2, 0x00c2c600) + 132 bytes
> > [6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 73 bytes
> > [7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 321 bytes
> > [8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 204 bytes
> > [9] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00c2c690, 2, 0x00c2cdf8 "ÄÐÂ") + 81 bytes
> > [10] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2c8d8, 1, 1, 0x10d86778) + 1209 bytes
> > [11] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0x0fa443a8, 0xffffffff, 0x10f3c4a0, 0x10f1efe0) + 266 bytes
> > [12] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2cdf8 "ÄÐÂ", 0xffffffff, 0xffffffff, 0x10f1efe0) + 170 bytes
> > [13] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2d098, 0xffffffff, 0, 0) + 115 bytes
> > [14] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2d1f4, 0x00c2d348, 0x00c2d2dc, 0x00c2d498) + 2523 bytes
> > [15] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 764, 106, 0) + 826 bytes
> > [16] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 39 bytes
> > [17] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 251 bytes
> > [18] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e8a390, 0) + 935 bytes
> > [19] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 466 bytes
> > [20] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2d830, 0) + 23 bytes
> > [21] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 22 bytes
> > [22] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 204 bytes
> > [23] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2d830, 0, 0x00c2df98 "dâÂ") + 81 bytes
> > [24] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2da78, 0, 1, 0x10d86028) + 1209 bytes
> > [25] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50d00, 0x10dfa5d0) + 266 bytes
> > [26] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2df98 "dâÂ", 0xffffffff, 0xffffffff, 0x10dfa5d0) + 170 bytes
> > [27] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2e238, 0xffffffff, 0, 0) + 115 bytes
> > [28] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2e394, 0x00c2e4e8, 0x00c2e47c, 0x00c2e638) + 2523 bytes
> > [29] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 670, 80, 0) + 826 bytes
> > [30] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 39 bytes
> > [31] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 251 bytes
> > [32] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e89c70, 0) + 935 bytes
> > [33] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 466 bytes
> > [34] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2e9d0, 0) + 23 bytes
> > [35] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 22 bytes
> > [36] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 204 bytes
> > [37] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2e9d0, 0, 0x00c2f13c) + 81 bytes
> > [38] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2ec18, 0, 1, 0x10d130e0) + 1209 bytes
> > [39] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50f10, 0x10df6850) + 266 bytes
> > [40] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2f13c, 0xffffffff, 0xffffffff, 0x10df6850) + 170 bytes
> > [41] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2f3dc, 0x10d1e650, 0, 0) + 115 bytes
> > [42] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2f4b0, 0x00c2f488, 0x00c2f4ac, 0x00c2f4a8) + 2523 bytes
> > [43] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff01, 0xffffffff, 0x10e89aa8, 0) + 572 bytes
> > [44] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2f9a0, 0, 0) + 466 bytes
> > [45] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_worksp
> >
> >
>
--- In psychtoolbox@yahoogroups.com, "abreuery" <atbreuer@...> wrote:
>
> Hi,
>
> I get an error message very similar to Mary's. When I type in:
> devices = PsychPortAudio('GetDevices') or
> devices = PsychPortAudio('GetDevices',3)
>
> I get the long error message I've pasted below, asking me to restart. I assume it may be related to the fact that there is no low latency device in my computer.
>

You have to call InitializePsychSound before calling any PsychPortAudio function on Windows, otherwise bad things may happen.

> Also, a partly related question, and please excuse me for what seems like an obvious question, when I type in the GetDevices command on similar PC we have, it returns the 1x8 struct:

Look into devices(1), devices(2) etc. for the actual content.

> DeviceIndex
> HostAudioAPIId
> HostAudioAPIName
> DeviceName
> NrInputChannels
> NrOutputChannels
> LowInputLatency
> HighInputLatency
> LowOutputLatency
> HighOutputLatency
> DefaultSampleRate
>
> I'm not quite sure what to make of this. Does it indicate whether this second computer has a low latency device?
>

If the devices = PsychPortAudio('GetDevices',3) call gives you anything back, you have some ASIO hardware installed, which is as low-latency as it gets. If you don't have the relevant asio plugin from our wiki installed, or no ASIO soundcard, it won't work.

Also, InitializePsychSound will already print out if you have asio support or not.

best,
-mario

> Thanks for any help.
>
> Andreas
> Action and Cognition Lab
> University of Victoria
>
> And here's the error message:
>
> Unknown Windows exception of type=c06d007e was not caught.
> ------------------------------------------------------------------------
> Segmentation violation detected at Tue Jan 25 09:09:32 2011
> ------------------------------------------------------------------------
>
> Configuration:
> MATLAB Version: 7.1.0.246 (R14) Service Pack 3
> MATLAB License: 292797
> Operating System: Microsoft Windows XP
> Window System: Version 5.1 (Build 2600: Service Pack 3)
> Processor ID: x86 Family 15 Model 2 Stepping 9, GenuineIntel
> Virtual Machine: Java 1.5.0 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
> Default Charset: windows-1252
>
> Register State:
> EAX = 00cddcc8 EBX = 00000000
> ECX = 00000000 EDX = 00000000
> ESI = 00cddd70 EDI = 00000000
> EBP = 00cddd18 ESP = 00cddcc4
> EIP = 7c812afb FLG = 00000202
>
> Stack Trace:
> [0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00cddd6c "<ÝÍ")
> [1] PsychPortAudio.dll:0x0f39da45(24, 0x00cddd3c, 0x0f3af7a4 "Open GetDeviceSettings ", 0x0f3af1e8 "Returns 'devices', an array of s..")
> [2] PsychPortAudio.dll:0x0f393844(2487376, 0x00cdddc4, 0, 0x00cdddc8)
> [3] PsychPortAudio.dll:0x0f3915fd(0, 0, 0, 0)
> [4] PsychPortAudio.dll:0x0f384a64(1, 0x00cde660, 1, 0x00cde6c0)
> [5] libmex.dll:_mexRunMexFile(1, 0x00cde660, 1, 0x00cde6c0) + 103 bytes
> [6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cde660, 1, 0x00cde6c0) + 73 bytes
> [7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cde660, 1, 0x00cde6c0) + 169 bytes
> [8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cde660, 1, 0x00cde6c0) + 271 bytes
> [9] m_interpreter.dll:int __cdecl mdDispatch(int,char const *,int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn * *)(481, 0x0f177818 "PsychPortAudio", 1, 0x00cde660) + 88 bytes
> [10] m_interpreter.dll:_inDispatchFromStack(481, 0x0f177818 "PsychPortAudio", 1, 1) + 800 bytes
> [11] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const *,int,int,int,int *,int *)(0x0f177818 "PsychPortAudio", 481, 1, 1) + 145 bytes
> [12] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(2, 0, 0, 0) + 2534 bytes
> [13] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(2, 0, 0, 0) + 282 bytes
> [14] m_interpreter.dll:_inInterPcode(2, 0x784d6e7c, 0, 0) + 81 bytes
> [15] m_interpreter.dll:enum inExecutionStatus __cdecl in_local_call_eval_function(int *,struct _pcodeheader *,int *,struct mxArray_tag * * const,enum inDebugCheck)(0x00cdf278, 0x00cdf370, 2, 1) + 153 bytes
> [16] m_interpreter.dll:$L74683(0x784d6e7c, 0x0f293320 "devices = PsychPortAudio('GetDev..", 0, 0) + 184 bytes
> [17] m_interpreter.dll:enum inExecutionStatus __cdecl inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0x0f293320 "devices = PsychPortAudio('GetDev..", 0, 2, 0x00cdf3bc "DôÍ") + 69 bytes
> [18] m_interpreter.dll:_inEvalCmdNoEnd(0x0f293320 "devices = PsychPortAudio('GetDev..", 1, 255, 0) + 16 bytes
> [19] bridge.dll:enum inExecutionStatus __cdecl ThrowSignal(char const *)(0x0f293320 "devices = PsychPortAudio('GetDev..", 0x7c80b741, 0x012074a8, 0x012074a8) + 60 bytes
> [20] bridge.dll:$L86781(0, 0, 0x784d6e58, 0x7c36b71f) + 432 bytes
> [21] mcr.dll:public: void __thiscall mcrInstance::mnParser(void)(271289, 0x505c3a43, 0x72676f72, 0x46206d61) + 93 bytes
> [22] MATLAB.exe:0x00401ca9(4194304, 0, 271289, 0x012074a8)
> [23] MATLAB.exe:0x00403d9f(0x00ead0b8, 24, 0x7ffdf000, 0xb6f7dce8)
> [24] kernel32.dll:0x7c817077(0x00403c1a, 0, 0, 0)
>
> This error was detected while a MEX-file was running. If the MEX-file
> is not an official MathWorks function, please examine its source code
> for errors. Please consult the External Interfaces Guide for information
> on debugging MEX-files.
>
> If it is an official MathWorks function, please
> follow these steps in reporting this problem to The MathWorks so
> that we have the best chance of correcting it:
>
> 1. Send this crash report to segv@... for automated analysis.
> For your convenience, this information has been recorded in:
> C:\DOCUME~1\Admin\LOCALS~1\Temp\matlab_crash_dump.3552
>
> 2. Also, if the problem is reproducible, send the crash report to
> support@... along with:
> - A specific list of steps that will reproduce the problem
> - Any M, MEX, MDL or other files required to reproduce the problem
> - Any error messages displayed to the command window
> A technical support engineer will contact you with further information.
>
> Thank you for your assistance. Please save your workspace and restart
> MATLAB before continuing your work.
>
>
>
>
> --- In psychtoolbox@yahoogroups.com, "Mario" <mario.kleiner@> wrote:
> >
> > No, BasicSoundOutputDemo should have worked without the low-latency driver, and usually it does, at least i'm not aware of crash problems. But then the problem is "solved" by Mary's upgrade to the low-latency plugin and this seems to be an isolated failure case, so I'll not pursue this further unless many other people report trouble.
> >
> > Btw. the low-latency plugin for MS-Windows by itself will not provide any low-latency or improved timing accuracy, it just gives you the option of getting these if you have a proper ASIO sound card installed.
> >
> > best,
> > -mario
> >
> > --- In psychtoolbox@yahoogroups.com, David Fencsik <fencsik@> wrote:
> > >
> > > Dear Mary,
> > >
> > > Did you try following the directions in the error message you pasted
> > > below? The first few lines might be helpful:
> > >
> > > Could not find a low-latency enhanced PortAudio driver. If you need
> > > really accurate sound onset timing and latency < 30 msecs, please read
> > > "help InitializePsychSound" carefully and follow the instructions.
> > >
> > > Best,
> > >
> > > David
> > >
> > > On Tue, Oct 20, 2009 at 6:34 AM, mithagare <mary@> wrote:
> > > >
> > > > Hi there,
> > > >
> > > > I tried to run the BasicSoundOutputDemo on my PC running XP SP3, and it crashed Matlab with a segmentation fault. See below for output. Looking through the archives of this group, I tried to find previous messages referring to this type of problem and found this:
> > > >
> > > > http://tech.groups.yahoo.com/group/psychtoolbox/message/7249
> > > >
> > > > Following the discussion, I tried typing the following on the commandline:
> > > >
> > > > PsychPortAudio('Verbosity', 10); % To enable more debug output...
> > > > d=PsychPortAudio('GetDevices')
> > > >
> > > > The second statement caused the same crash. Any suggestions on what the problem might be? Could it be a SP3 issue?
> > > >
> > > > thanks!
> > > > Mary
> > > >
> > > > >> BasicSoundOutputDemo
> > > > Could not find a low-latency enhanced PortAudio driver. If you need
> > > > really accurate sound onset timing and latency < 30 msecs, please read
> > > > "help InitializePsychSound" carefully and follow the instructions.
> > > > Will use our standard driver instead of enhanced driver...
> > > > Unknown Windows exception of type=c06d007e was not caught.
> > > > ----------------------------------------------------------
> > > > Segmentation violation detected at Tue Oct 20 09:24:39 2009
> > > > ----------------------------------------------------------
> > > >
> > > > Configuration:
> > > > MATLAB Version: 7.8.0.347 (R2009a)
> > > > MATLAB License: 2374
> > > > Operating System: Microsoft Windows XP
> > > > Window System: Version 5.1 (Build 2600: Service Pack 3)
> > > > Processor ID: x86 Family 6 Model 15 Stepping 11, GenuineIntel
> > > > Virtual Machine: Java 1.6.0_04-b12 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
> > > > Default Encoding: windows-1252
> > > >
> > > > Fault Count: 1
> > > >
> > > > Register State:
> > > > EAX = 00c2bd28 EBX = 00000000
> > > > ECX = 00000000 EDX = 00000015
> > > > ESI = 00c2bdf0 EDI = 00000000
> > > > EBP = 00c2bd78 ESP = 00c2bd24
> > > > EIP = 7c812afb FLG = 00000202
> > > >
> > > > Stack Trace:
> > > > [0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00c2bdec)
> > > > [1] PsychPortAudio.mexw32:0x055d4dd6(24, 0x00c2bd9c, 0x055eb22c "Open GetDeviceSettings ", 0)
> > > > [2] PsychPortAudio.mexw32:0x055d3f81(0x022a2bb8, 0, 0, 0x055eb250 "DeviceIndex")
> > > > [3] PsychPortAudio.mexw32:0x055cfdcd(0, 0, 0, 0)
> > > > [4] PsychPortAudio.mexw32:0x055c5a88(1, 0x00c2c690, 2, 0x00c2c600)
> > > > [5] libmex.dll:_mexRunMexFile(1, 0x00c2c690, 2, 0x00c2c600) + 132 bytes
> > > > [6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 73 bytes
> > > > [7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 321 bytes
> > > > [8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 204 bytes
> > > > [9] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00c2c690, 2, 0x00c2cdf8 "ÄÐÂ") + 81 bytes
> > > > [10] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2c8d8, 1, 1, 0x10d86778) + 1209 bytes
> > > > [11] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0x0fa443a8, 0xffffffff, 0x10f3c4a0, 0x10f1efe0) + 266 bytes
> > > > [12] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2cdf8 "ÄÐÂ", 0xffffffff, 0xffffffff, 0x10f1efe0) + 170 bytes
> > > > [13] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2d098, 0xffffffff, 0, 0) + 115 bytes
> > > > [14] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2d1f4, 0x00c2d348, 0x00c2d2dc, 0x00c2d498) + 2523 bytes
> > > > [15] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 764, 106, 0) + 826 bytes
> > > > [16] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 39 bytes
> > > > [17] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 251 bytes
> > > > [18] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e8a390, 0) + 935 bytes
> > > > [19] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 466 bytes
> > > > [20] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2d830, 0) + 23 bytes
> > > > [21] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 22 bytes
> > > > [22] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 204 bytes
> > > > [23] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2d830, 0, 0x00c2df98 "dâÂ") + 81 bytes
> > > > [24] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2da78, 0, 1, 0x10d86028) + 1209 bytes
> > > > [25] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50d00, 0x10dfa5d0) + 266 bytes
> > > > [26] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2df98 "dâÂ", 0xffffffff, 0xffffffff, 0x10dfa5d0) + 170 bytes
> > > > [27] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2e238, 0xffffffff, 0, 0) + 115 bytes
> > > > [28] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2e394, 0x00c2e4e8, 0x00c2e47c, 0x00c2e638) + 2523 bytes
> > > > [29] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 670, 80, 0) + 826 bytes
> > > > [30] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 39 bytes
> > > > [31] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 251 bytes
> > > > [32] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e89c70, 0) + 935 bytes
> > > > [33] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 466 bytes
> > > > [34] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2e9d0, 0) + 23 bytes
> > > > [35] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 22 bytes
> > > > [36] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 204 bytes
> > > > [37] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2e9d0, 0, 0x00c2f13c) + 81 bytes
> > > > [38] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2ec18, 0, 1, 0x10d130e0) + 1209 bytes
> > > > [39] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50f10, 0x10df6850) + 266 bytes
> > > > [40] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2f13c, 0xffffffff, 0xffffffff, 0x10df6850) + 170 bytes
> > > > [41] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2f3dc, 0x10d1e650, 0, 0) + 115 bytes
> > > > [42] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2f4b0, 0x00c2f488, 0x00c2f4ac, 0x00c2f4a8) + 2523 bytes
> > > > [43] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff01, 0xffffffff, 0x10e89aa8, 0) + 572 bytes
> > > > [44] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2f9a0, 0, 0) + 466 bytes
> > > > [45] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_worksp
> > > >
> > > >
> > >
> >
>
Thanks, Mario!

Yes, there appears to be no low-latency device.

However, we installed a non-ASIO supported sound card we had (Creative Labs CT-4750) and ran PsychPortAudioTimingTest on it with the photo-diode, microphone, and oscilloscope. As luck would have it, apparently the timing is much better than we expected. The sound playback was consistently delayed only one refresh cycle (60Hz setting) after onset of the black-white screen transition.

I was considered accommodating this bias in my MATLAB code but could this value (16ms) be inputted into 'biasSecs' in PsychPortAudio('LatencyBias',pahandle [,biasSecs])?

The issue is that we want to place an ERP marker as close to the sound onset as possible in the following way:

t = PsychPortAudio('Start', pahandle, repetitions, 0, 1);
putvalue(dio,ERPauditory); %************ERP MARKER

If I put the 16ms bias into the LatencyBias, will my ERP marker be as close as possible to the actual sound onset?

Perhaps I can set the 'when' argument in PsychPortAudio('Start'...) to 16ms before the ERP marker.

Thanks for any help!
Andreas


--- In psychtoolbox@yahoogroups.com, "Mario" <mario.kleiner@...> wrote:
>
> --- In psychtoolbox@yahoogroups.com, "abreuery" <atbreuer@> wrote:
> >
> > Hi,
> >
> > I get an error message very similar to Mary's. When I type in:
> > devices = PsychPortAudio('GetDevices') or
> > devices = PsychPortAudio('GetDevices',3)
> >
> > I get the long error message I've pasted below, asking me to restart. I assume it may be related to the fact that there is no low latency device in my computer.
> >
>
> You have to call InitializePsychSound before calling any PsychPortAudio function on Windows, otherwise bad things may happen.
>
> > Also, a partly related question, and please excuse me for what seems like an obvious question, when I type in the GetDevices command on similar PC we have, it returns the 1x8 struct:
>
> Look into devices(1), devices(2) etc. for the actual content.
>
> > DeviceIndex
> > HostAudioAPIId
> > HostAudioAPIName
> > DeviceName
> > NrInputChannels
> > NrOutputChannels
> > LowInputLatency
> > HighInputLatency
> > LowOutputLatency
> > HighOutputLatency
> > DefaultSampleRate
> >
> > I'm not quite sure what to make of this. Does it indicate whether this second computer has a low latency device?
> >
>
> If the devices = PsychPortAudio('GetDevices',3) call gives you anything back, you have some ASIO hardware installed, which is as low-latency as it gets. If you don't have the relevant asio plugin from our wiki installed, or no ASIO soundcard, it won't work.
>
> Also, InitializePsychSound will already print out if you have asio support or not.
>
> best,
> -mario
>
> > Thanks for any help.
> >
> > Andreas
> > Action and Cognition Lab
> > University of Victoria
> >
> > And here's the error message:
> >
> > Unknown Windows exception of type=c06d007e was not caught.
> > ------------------------------------------------------------------------
> > Segmentation violation detected at Tue Jan 25 09:09:32 2011
> > ------------------------------------------------------------------------
> >
> > Configuration:
> > MATLAB Version: 7.1.0.246 (R14) Service Pack 3
> > MATLAB License: 292797
> > Operating System: Microsoft Windows XP
> > Window System: Version 5.1 (Build 2600: Service Pack 3)
> > Processor ID: x86 Family 15 Model 2 Stepping 9, GenuineIntel
> > Virtual Machine: Java 1.5.0 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
> > Default Charset: windows-1252
> >
> > Register State:
> > EAX = 00cddcc8 EBX = 00000000
> > ECX = 00000000 EDX = 00000000
> > ESI = 00cddd70 EDI = 00000000
> > EBP = 00cddd18 ESP = 00cddcc4
> > EIP = 7c812afb FLG = 00000202
> >
> > Stack Trace:
> > [0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00cddd6c "<ÝÍ")
> > [1] PsychPortAudio.dll:0x0f39da45(24, 0x00cddd3c, 0x0f3af7a4 "Open GetDeviceSettings ", 0x0f3af1e8 "Returns 'devices', an array of s..")
> > [2] PsychPortAudio.dll:0x0f393844(2487376, 0x00cdddc4, 0, 0x00cdddc8)
> > [3] PsychPortAudio.dll:0x0f3915fd(0, 0, 0, 0)
> > [4] PsychPortAudio.dll:0x0f384a64(1, 0x00cde660, 1, 0x00cde6c0)
> > [5] libmex.dll:_mexRunMexFile(1, 0x00cde660, 1, 0x00cde6c0) + 103 bytes
> > [6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cde660, 1, 0x00cde6c0) + 73 bytes
> > [7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cde660, 1, 0x00cde6c0) + 169 bytes
> > [8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00cde660, 1, 0x00cde6c0) + 271 bytes
> > [9] m_interpreter.dll:int __cdecl mdDispatch(int,char const *,int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_MATLAB_fn * *)(481, 0x0f177818 "PsychPortAudio", 1, 0x00cde660) + 88 bytes
> > [10] m_interpreter.dll:_inDispatchFromStack(481, 0x0f177818 "PsychPortAudio", 1, 1) + 800 bytes
> > [11] m_interpreter.dll:enum opcodes __cdecl inDispatchCall(char const *,int,int,int,int *,int *)(0x0f177818 "PsychPortAudio", 481, 1, 1) + 145 bytes
> > [12] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(2, 0, 0, 0) + 2534 bytes
> > [13] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(2, 0, 0, 0) + 282 bytes
> > [14] m_interpreter.dll:_inInterPcode(2, 0x784d6e7c, 0, 0) + 81 bytes
> > [15] m_interpreter.dll:enum inExecutionStatus __cdecl in_local_call_eval_function(int *,struct _pcodeheader *,int *,struct mxArray_tag * * const,enum inDebugCheck)(0x00cdf278, 0x00cdf370, 2, 1) + 153 bytes
> > [16] m_interpreter.dll:$L74683(0x784d6e7c, 0x0f293320 "devices = PsychPortAudio('GetDev..", 0, 0) + 184 bytes
> > [17] m_interpreter.dll:enum inExecutionStatus __cdecl inEvalCmdWithLocalReturnandtype(char const *,int *,enum inDebugCheck)(0x0f293320 "devices = PsychPortAudio('GetDev..", 0, 2, 0x00cdf3bc "DôÍ") + 69 bytes
> > [18] m_interpreter.dll:_inEvalCmdNoEnd(0x0f293320 "devices = PsychPortAudio('GetDev..", 1, 255, 0) + 16 bytes
> > [19] bridge.dll:enum inExecutionStatus __cdecl ThrowSignal(char const *)(0x0f293320 "devices = PsychPortAudio('GetDev..", 0x7c80b741, 0x012074a8, 0x012074a8) + 60 bytes
> > [20] bridge.dll:$L86781(0, 0, 0x784d6e58, 0x7c36b71f) + 432 bytes
> > [21] mcr.dll:public: void __thiscall mcrInstance::mnParser(void)(271289, 0x505c3a43, 0x72676f72, 0x46206d61) + 93 bytes
> > [22] MATLAB.exe:0x00401ca9(4194304, 0, 271289, 0x012074a8)
> > [23] MATLAB.exe:0x00403d9f(0x00ead0b8, 24, 0x7ffdf000, 0xb6f7dce8)
> > [24] kernel32.dll:0x7c817077(0x00403c1a, 0, 0, 0)
> >
> > This error was detected while a MEX-file was running. If the MEX-file
> > is not an official MathWorks function, please examine its source code
> > for errors. Please consult the External Interfaces Guide for information
> > on debugging MEX-files.
> >
> > If it is an official MathWorks function, please
> > follow these steps in reporting this problem to The MathWorks so
> > that we have the best chance of correcting it:
> >
> > 1. Send this crash report to segv@ for automated analysis.
> > For your convenience, this information has been recorded in:
> > C:\DOCUME~1\Admin\LOCALS~1\Temp\matlab_crash_dump.3552
> >
> > 2. Also, if the problem is reproducible, send the crash report to
> > support@ along with:
> > - A specific list of steps that will reproduce the problem
> > - Any M, MEX, MDL or other files required to reproduce the problem
> > - Any error messages displayed to the command window
> > A technical support engineer will contact you with further information.
> >
> > Thank you for your assistance. Please save your workspace and restart
> > MATLAB before continuing your work.
> >
> >
> >
> >
> > --- In psychtoolbox@yahoogroups.com, "Mario" <mario.kleiner@> wrote:
> > >
> > > No, BasicSoundOutputDemo should have worked without the low-latency driver, and usually it does, at least i'm not aware of crash problems. But then the problem is "solved" by Mary's upgrade to the low-latency plugin and this seems to be an isolated failure case, so I'll not pursue this further unless many other people report trouble.
> > >
> > > Btw. the low-latency plugin for MS-Windows by itself will not provide any low-latency or improved timing accuracy, it just gives you the option of getting these if you have a proper ASIO sound card installed.
> > >
> > > best,
> > > -mario
> > >
> > > --- In psychtoolbox@yahoogroups.com, David Fencsik <fencsik@> wrote:
> > > >
> > > > Dear Mary,
> > > >
> > > > Did you try following the directions in the error message you pasted
> > > > below? The first few lines might be helpful:
> > > >
> > > > Could not find a low-latency enhanced PortAudio driver. If you need
> > > > really accurate sound onset timing and latency < 30 msecs, please read
> > > > "help InitializePsychSound" carefully and follow the instructions.
> > > >
> > > > Best,
> > > >
> > > > David
> > > >
> > > > On Tue, Oct 20, 2009 at 6:34 AM, mithagare <mary@> wrote:
> > > > >
> > > > > Hi there,
> > > > >
> > > > > I tried to run the BasicSoundOutputDemo on my PC running XP SP3, and it crashed Matlab with a segmentation fault. See below for output. Looking through the archives of this group, I tried to find previous messages referring to this type of problem and found this:
> > > > >
> > > > > http://tech.groups.yahoo.com/group/psychtoolbox/message/7249
> > > > >
> > > > > Following the discussion, I tried typing the following on the commandline:
> > > > >
> > > > > PsychPortAudio('Verbosity', 10); % To enable more debug output...
> > > > > d=PsychPortAudio('GetDevices')
> > > > >
> > > > > The second statement caused the same crash. Any suggestions on what the problem might be? Could it be a SP3 issue?
> > > > >
> > > > > thanks!
> > > > > Mary
> > > > >
> > > > > >> BasicSoundOutputDemo
> > > > > Could not find a low-latency enhanced PortAudio driver. If you need
> > > > > really accurate sound onset timing and latency < 30 msecs, please read
> > > > > "help InitializePsychSound" carefully and follow the instructions.
> > > > > Will use our standard driver instead of enhanced driver...
> > > > > Unknown Windows exception of type=c06d007e was not caught.
> > > > > ----------------------------------------------------------
> > > > > Segmentation violation detected at Tue Oct 20 09:24:39 2009
> > > > > ----------------------------------------------------------
> > > > >
> > > > > Configuration:
> > > > > MATLAB Version: 7.8.0.347 (R2009a)
> > > > > MATLAB License: 2374
> > > > > Operating System: Microsoft Windows XP
> > > > > Window System: Version 5.1 (Build 2600: Service Pack 3)
> > > > > Processor ID: x86 Family 6 Model 15 Stepping 11, GenuineIntel
> > > > > Virtual Machine: Java 1.6.0_04-b12 with Sun Microsystems Inc. Java HotSpot(TM) Client VM mixed mode
> > > > > Default Encoding: windows-1252
> > > > >
> > > > > Fault Count: 1
> > > > >
> > > > > Register State:
> > > > > EAX = 00c2bd28 EBX = 00000000
> > > > > ECX = 00000000 EDX = 00000015
> > > > > ESI = 00c2bdf0 EDI = 00000000
> > > > > EBP = 00c2bd78 ESP = 00c2bd24
> > > > > EIP = 7c812afb FLG = 00000202
> > > > >
> > > > > Stack Trace:
> > > > > [0] kernel32.dll:0x7c812afb(0xc06d007e, 0, 1, 0x00c2bdec)
> > > > > [1] PsychPortAudio.mexw32:0x055d4dd6(24, 0x00c2bd9c, 0x055eb22c "Open GetDeviceSettings ", 0)
> > > > > [2] PsychPortAudio.mexw32:0x055d3f81(0x022a2bb8, 0, 0, 0x055eb250 "DeviceIndex")
> > > > > [3] PsychPortAudio.mexw32:0x055cfdcd(0, 0, 0, 0)
> > > > > [4] PsychPortAudio.mexw32:0x055c5a88(1, 0x00c2c690, 2, 0x00c2c600)
> > > > > [5] libmex.dll:_mexRunMexFile(1, 0x00c2c690, 2, 0x00c2c600) + 132 bytes
> > > > > [6] libmex.dll:private: void __thiscall Mfh_mex::runMexFileWithSignalProtection(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 73 bytes
> > > > > [7] libmex.dll:public: virtual void __thiscall Mfh_mex::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 321 bytes
> > > > > [8] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(1, 0x00c2c690, 2, 0x00c2c600) + 204 bytes
> > > > > [9] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(1, 0x00c2c690, 2, 0x00c2cdf8 "ÄÐÂ") + 81 bytes
> > > > > [10] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2c8d8, 1, 1, 0x10d86778) + 1209 bytes
> > > > > [11] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0x0fa443a8, 0xffffffff, 0x10f3c4a0, 0x10f1efe0) + 266 bytes
> > > > > [12] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2cdf8 "ÄÐÂ", 0xffffffff, 0xffffffff, 0x10f1efe0) + 170 bytes
> > > > > [13] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2d098, 0xffffffff, 0, 0) + 115 bytes
> > > > > [14] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2d1f4, 0x00c2d348, 0x00c2d2dc, 0x00c2d498) + 2523 bytes
> > > > > [15] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 764, 106, 0) + 826 bytes
> > > > > [16] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 39 bytes
> > > > > [17] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 764, 80, 0) + 251 bytes
> > > > > [18] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e8a390, 0) + 935 bytes
> > > > > [19] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 466 bytes
> > > > > [20] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2d830, 0) + 23 bytes
> > > > > [21] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 22 bytes
> > > > > [22] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2d830, 0, 0x00c2d7a0 "pØÂ") + 204 bytes
> > > > > [23] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2d830, 0, 0x00c2df98 "dâÂ") + 81 bytes
> > > > > [24] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2da78, 0, 1, 0x10d86028) + 1209 bytes
> > > > > [25] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50d00, 0x10dfa5d0) + 266 bytes
> > > > > [26] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2df98 "dâÂ", 0xffffffff, 0xffffffff, 0x10dfa5d0) + 170 bytes
> > > > > [27] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2e238, 0xffffffff, 0, 0) + 115 bytes
> > > > > [28] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2e394, 0x00c2e4e8, 0x00c2e47c, 0x00c2e638) + 2523 bytes
> > > > > [29] m_interpreter.dll:int __cdecl inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag volatile *,int *)(1, 670, 80, 0) + 826 bytes
> > > > > [30] m_interpreter.dll:int __cdecl protected_inInterp(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 39 bytes
> > > > > [31] m_interpreter.dll:int __cdecl inInterPcodeSJ(enum inDebugCheck,int,int,enum opcodes,struct inPcodeNest_tag *,int *)(1, 670, 57, 0) + 251 bytes
> > > > > [32] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff00, 0xffffffff, 0x10e89c70, 0) + 935 bytes
> > > > > [33] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 466 bytes
> > > > > [34] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_workspace *,int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0, 0x00c2e9d0, 0) + 23 bytes
> > > > > [35] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 22 bytes
> > > > > [36] m_dispatcher.dll:public: virtual void __thiscall Mfh_file::dispatch_fh(int,struct mxArray_tag * *,int,struct mxArray_tag * *)(0, 0x00c2e9d0, 0, 0x00c2e940) + 204 bytes
> > > > > [37] m_interpreter.dll:public: void __thiscall ResolverFunctionDesc::CallFunction(int,struct mxArray_tag * * const,int,struct mxArray_tag * * const)(0, 0x00c2e9d0, 0, 0x00c2f13c) + 81 bytes
> > > > > [38] m_interpreter.dll:public: bool __thiscall Resolver::CallMFunction(int,int,class _m_operand * const,union m_operand_storage *,int,class _m_operand * const,union m_operand_storage *,int *)(0x00c2ec18, 0, 1, 0x10d130e0) + 1209 bytes
> > > > > [39] m_interpreter.dll:private: bool __thiscall accelImpl::MFunctionCall(struct _accelOp * *)(0, 0xffffffff, 0x10b50f10, 0x10df6850) + 266 bytes
> > > > > [40] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelImpl::Exec(void)(0x00c2f13c, 0xffffffff, 0xffffffff, 0x10df6850) + 170 bytes
> > > > > [41] m_interpreter.dll:public: enum jitReturnFlags __thiscall accelCode::Call(enum inMarshalType *,int *)const (0x00c2f3dc, 0x10d1e650, 0, 0) + 115 bytes
> > > > > [42] m_interpreter.dll:public: static bool __cdecl inJit::ExecuteHotSegment(struct _inJitAccelInfo *,enum opcodes *,int *,int *)(0x00c2f4b0, 0x00c2f488, 0x00c2f4ac, 0x00c2f4a8) + 2523 bytes
> > > > > [43] m_interpreter.dll:int __cdecl inExecuteMFunctionOrScript(class Mfh_mp *,bool)(0xffffff01, 0xffffffff, 0x10e89aa8, 0) + 572 bytes
> > > > > [44] m_interpreter.dll:void __cdecl inRunMfile(int,struct mxArray_tag * *,int,struct mxArray_tag * *,class Mfh_mp *,struct inWorkSpace_tag *)(0, 0x00c2f9a0, 0, 0) + 466 bytes
> > > > > [45] m_interpreter.dll:public: virtual void __thiscall Mfh_mp::dispatch_file(struct _mdUnknown_worksp
> > > > >
> > > > >
> > > >
> > >
> >
>