v7 drivers (64bit)

A place to talk about whatever Scope music/gear related stuff you want.

Moderators: valis, garyb

User avatar
garyb
Moderator
Posts: 22492
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: v7 drivers (64bit)

Post by garyb »

i'm not sure what the init is for.

i'm sure you are more knowledgeable about code than i am. i'm just suggesting the obvious. i won't say that i'm correct.

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

Good news: I found an ASIO library, which actually works under Win10 and with Xite. I'll investigate, how I can use this one instead of port-audio or fix the port-audio error.

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

garyb wrote:
Tue Jan 23, 2018 5:12 pm
i'm not sure what the init is for.

i'm sure you are more knowledgeable about code than i am. i'm just suggesting the obvious. i won't say that i'm correct.
The library I found uses also 'init(. So its working here and not there. So I guess there's the problem.
I wish, I could lay my hands on the xiteasio driver source code ...

User avatar
garyb
Moderator
Posts: 22492
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: v7 drivers (64bit)

Post by garyb »

this is the wrong place to look for that. :wink:

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

I know! I looked at right place (I hope), but haven'T found it (yet).

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

OK, looks like it's 2:0 against portaudio. I now got 2 programs running without PA and can successfully access Xite ASIO. Still not, what' the real problem is.

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

Got it: Accidentally I used 32-B it versions of ASIO sample and Naudio exe and both worked. When I compiled both to x64, they both have the same crash as SuperCollider. As last proof I started SC in 32-Bit mode: no crash! So , what's wrong with the AsioScopeXite64.dll?

User avatar
garyb
Moderator
Posts: 22492
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: v7 drivers (64bit)

Post by garyb »

nothing on so many other apps. the 32bit dll worked? you mean that Scope actually ran? i think there's something else in play.

this problem with port audio goes back to the beginning of port audio.

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

yes, 32 bit dll works fine with 64bit scope. And portaudio does nothing else then Steinberg's ASIO SDK itself (traced every step). And ASIO SDK has the same error, so I assume, any 64-bit app which works with Scope 64-bit ASIO does something different.

User avatar
next to nothing
Posts: 2519
Joined: Mon Jul 29, 2002 4:00 pm
Location: Bergen, Norway

Re: v7 drivers (64bit)

Post by next to nothing »

Maybe it will be useful to look at VCV rack as well? As far as i know it uses portaudio, I never got it working on 64bit Scope ASIO on win 10, but others claim they have it running on Win 7 64bit. See viewtopic.php?f=5&t=35180&p=331119&hilit=vcv#p331119 .
At least on the latest version i can run it on WASAPI drivers, but ASIO is still a no go.

Oh and sorry, I am on v5.1, but i guess the drivers are pretty similar regarding these issues.
A positive attitude may not solve all your problems, but it will annoy enough people to make it worth the effort.

jksuperstar
Posts: 1597
Joined: Mon Nov 15, 2010 12:57 pm

Re: v7 drivers (64bit)

Post by jksuperstar »

Any remnants of old 32bit drivers that are getting picked up?

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

next to nothing wrote:
Fri Jan 26, 2018 6:30 am
Maybe it will be useful to look at VCV rack as well? As far as i know it uses portaudio, I never got it working on 64bit Scope ASIO on win 10, but others claim they have it running on Win 7 64bit. See viewtopic.php?f=5&t=35180&p=331119&hilit=vcv#p331119 .
At least on the latest version i can run it on WASAPI drivers, but ASIO is still a no go.

Oh and sorry, I am on v5.1, but i guess the drivers are pretty similar regarding these issues.
I agree to all what you're writing. And yes, no problem on Win 7 and regardless of V5 or V7 drivers. I7d like to know, how Ableton is handling this.
Here are only 64 bit device drivers for Scope.
So any program, which relies on ASIO SDK 2.3 will have this 64-bit issue under Win10.ProAudio is just a wrapper around ASIO SDK.

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

After real deep digging inmto the x64 asio dll, I found the function, where it crashes the OS:
DeviceIoControlImplementation->DeviceIoControl:->

NtDeviceIoControlFile:
00007FF9F696FF40 4C 8B D1 mov r10,rcx
00007FF9F696FF43 B8 07 00 00 00 mov eax,7
00007FF9F696FF48 F6 04 25 08 03 FE 7F 01 test byte ptr [7FFE0308h],1
00007FF9F696FF50 75 03 jne NtDeviceIoControlFile+15h (07FF9F696FF55h)
00007FF9F696FF52 0F 05 syscall <= BSOD creation
00007FF9F696FF54 C3 ret
00007FF9F696FF55 CD 2E int 2Eh
00007FF9F696FF57 C3 ret

syscalls are different for Win7 and 10:

NtDeviceIoControlFile :

Win 7 0x0004
Win 10 0x0007

As 32-Bit program, the sequence is:
init->DLLGetClassObject->
_DeviceIoControlImplementation@32:->
_DeviceIoControl@32 ->__SEH_prolog4
->_NtDeviceIoControlFile@40:
77A3E7D0 B8 07 00 1B 00 mov eax,1B0007h
77A3E7D5 BA 20 9D A5 77 mov edx,offset _Wow64SystemServiceCall@0 (77A59D20h)
77A3E7DA FF D2 call edx
77A3E7DC C2 28 00 ret 28h
77A3E7DF 90 nop


_Wow64SystemServiceCall@0:
77A59D20 FF 25 18 92 AE 77 jmp dword ptr [_Wow64Transition (77AE9218h)]
->__SEH_epilog4:

@Someone with competency: please comment!

User avatar
valis
Posts: 5716
Joined: Sun Sep 23, 2001 4:00 pm
Location: West Coast USA
Contact:

Re: v7 drivers (64bit)

Post by valis »

This may be why setting the application (not Scope) to Win8.1 (or Win7) compatibility mode is of some help to hosts who otherwise crash... it might give NtDeviceIoControlFile the 0x0004 response... (or at least not 0x0007?) That's assuming of course that this is the difference that does indeed cause hosts to not work with Scope 64bit drivers...

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

I'll do the same test tomorrow within a Win 7 environment. Let see what happens.

User avatar
garyb
Moderator
Posts: 22492
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: v7 drivers (64bit)

Post by garyb »

again, my ignorance will show, but this looks like what i would expect. if the app attempts to set up the hardware, it will crash, because the Scope hardware is not supposed to work that way. it is lousy programming to assume that all sound interfaces will be windows soundcards.

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

Regarding to Steinberg's ASIO doc, the first call to the COM object is to call init. And the function, which will call DeviceIoControl (and die on X64), is also called from many different places (like getChannelInfo, createBuffers, GetDelayedFreq, setSampleRate etc).
Last edited by DragonSF on Sat Jan 27, 2018 11:24 pm, edited 1 time in total.

User avatar
garyb
Moderator
Posts: 22492
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: v7 drivers (64bit)

Post by garyb »

..so, then the fact that STEINBERG apps work with Scope ASIO means nothing, since Port Audio obviously has it right...

DragonSF
Posts: 399
Joined: Sun Nov 08, 2015 4:28 pm

Re: v7 drivers (64bit)

Post by DragonSF »

garyb wrote:
Sat Jan 27, 2018 3:51 pm
..so, then the fact that STEINBERG apps work with Scope ASIO means nothing, since Port Audio obviously has it right...
Forget about PortAudio, I'm talking about Steinberg's ASIO SDK (which I'm using in my tests).

User avatar
garyb
Moderator
Posts: 22492
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: v7 drivers (64bit)

Post by garyb »

got you.
now i understand what is happening.
i was obviously confused.

carry on...

Post Reply