User Forum    :: Powered by YaBB
  Ā« MIDI-OX User Forum - how to temporarily disable Yoke NT drivers Ā»
Welcome, Guest. Please Login or Register.
Oct 18th, 2024, 4:44am


Home Home Help Help Search Search Members Members Login Login Register Register


   MIDI-OX User Forum
   MIDI Yoke
   MIDI Yoke NT
(Moderator: Jamie OConnell)
   how to temporarily disable Yoke NT drivers
« Previous topic | Next topic »
Pages: 1  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print
   Author  Topic: how to temporarily disable Yoke NT drivers  (Read 2478 times)
markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
how to temporarily disable Yoke NT drivers
« on: Sep 15th, 2004, 3:14pm »
Quote Quote Modify Modify

I have attempted to temporarily disable the Yoke NT drivers using Windows XP / Control Panel / System / Hardware / Device Manager / Sound, video and game controllers / MIDI Yoke NT Driver / Disable Device.  But my application still sees the Yoke NT 1 through 8 devices.  Is there another effective way to temporarily disable the drivers.
 
Note, if I can get MidiYoke and MidiOx to work in my development environment without this kind of conflect, I'll certainly purchase the commercial license.
 
Cheers
-- Mark
IP Logged
markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
Re: how to temporarily disable Yoke NT drivers
« Reply #1 on: Sep 15th, 2004, 5:50pm »
Quote Quote Modify Modify

I'll just uninstall the MIDI Yoke NT Driver for now.  But this is awkward to have to install it every time I need it, and uninstall it every time I don't.  Surely there is a better way.
 
-- Mark
IP Logged
markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
Re: how to temporarily disable Yoke NT drivers
« Reply #2 on: Sep 15th, 2004, 10:57pm »
Quote Quote Modify Modify

Although it would be very handle to be able to entirely disable the Yoke NT driver, it would be almost as handy to be able to designate a particular MIDI Yoke port as either In or Out but not both.  I just can't seem to get around the MIDI feedback loop problem.  Being able to make a MIDI Yoke port either In or Out might solve this problem.  Is there a way to do that?
 
Cheers
-- Mark
IP Logged
Peter L Jones
Expert
*****




Hit it

   
WWW

Gender: male
Posts: 978
Re: how to temporarily disable Yoke NT drivers
« Reply #3 on: Sep 16th, 2004, 2:08pm »
Quote Quote Modify Modify

That doesn't really make any sense.
 
The only reason for writing to one end of a MIDI Yoke virtual MIDI cable is so that the events you write can travel down to the other end of the cable to be read.
 
If you choose to open the input port in the same application that's writing to the output port, that's up to you.  But you need to be able to open it somewhere, otherwise there was no point using it.
IP Logged

"...Playing fast around the drums is one thing. But to play with people for others, to listen to, that's something else. That's a whole other world." -- Tony Williams
markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
Re: how to temporarily disable Yoke NT drivers
« Reply #4 on: Sep 16th, 2004, 2:30pm »
Quote Quote Modify Modify

Hello Peter,
 
>That doesn't really make any sense.  
 
Duh, you're right.  Never mind the last of my three postings.
 
But, I still wish that Windows XP / Control Panel / System / Hardware / Device Manager / Sound, video and game controllers / MIDI Yoke NT Driver / Disable Device would really make the driver unavailable to my app.
IP Logged
Jamie OConnell
Administrator
*****






   
WWW Email

Gender: male
Posts: 2027
Re: how to temporarily disable Yoke NT drivers
« Reply #5 on: Sep 16th, 2004, 4:12pm »
Quote Quote Modify Modify

Never open both the Input and Output ports of a particular MIDI Yoke port within a single application.
 
Windows does not seem to be able to temporarilly disable the MIDI Yoke ports: probably because the driver is a User mode DLL instead of a Kernel Mode component.  Even after a reboot.
You might be able to prevent driver loading by tweaking a reg key.
 
The key to tweak will be one of the MIDIn values in:  
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
 
For instance, if MIDI2 is set to myokent.dll, rename it to myokent.dlx.  Then close RegEdit.  I was able to make the driver disappear and reappear by modifying this key without rebooting.
« Last Edit: Sep 16th, 2004, 4:22pm by Jamie OConnell » IP Logged

--Jamie
Music is its own reward.

markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
Re: how to temporarily disable Yoke NT drivers
« Reply #6 on: Sep 16th, 2004, 4:39pm »
Quote Quote Modify Modify

Jamie,
 
Thanks for your reply and tip.  It's good to meet you.  I wish I had been using MidiOx years ago as a tool for my MIDI/notation softare development.  (I just purchased it earlier today.)
 
Perhaps you can give me some advice on some very basic MIDI application behavior.  Upon startup, my application opens ALL of the MIDI input and output ports.  Obviously, this caused a feedback loop with the MIDI Yoke port.  I worked around this problem with a hard-coded "if input port is MIDI Yoke then don't open it". (I'm just testing output from the app right now.)  Aside from the fact that my app's behavior of pre-opening all MIDI input and output ports makes it incompatible with MidiOx, are there other reasons that this is a bad idea?  Is my app a "bad MIDI citizen"?
 
Cheers
-- Mark
IP Logged
Peter L Jones
Expert
*****




Hit it

   
WWW

Gender: male
Posts: 978
Re: how to temporarily disable Yoke NT drivers
« Reply #7 on: Sep 16th, 2004, 7:00pm »
Quote Quote Modify Modify

Say someone plugged a real MIDI cable from a MIDI out to a controller, from that controller to a sequencer, from the sequncer to a sound module and from there back to a MIDI in.  Your app will get feedback.
 
You need to cater for it.  The above is valid - the controller might need SysEx dumps but the user wants to capture the sequencer output (triggered from the controller).
IP Logged

"...Playing fast around the drums is one thing. But to play with people for others, to listen to, that's something else. That's a whole other world." -- Tony Williams
markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
Re: how to temporarily disable Yoke NT drivers
« Reply #8 on: Sep 16th, 2004, 7:34pm »
Quote Quote Modify Modify

Peter,
 
Thanks for your reply.  Perhas the appropriate solution for this in my MIDI/notation app as simple as this:  Just ask the user which MIDI In and Out ports he wants to use.  Only open those MIDI ports.  The next time the user runs the app, open the same ports.  This seems to be what Cakewalk Sonar does.  Is that all you'd need in order to work with, for example, the SysEx scenario you illustrated?
 
Cheers
-- Mark
IP Logged
Peter L Jones
Expert
*****




Hit it

   
WWW

Gender: male
Posts: 978
Re: how to temporarily disable Yoke NT drivers
« Reply #9 on: Sep 17th, 2004, 1:54pm »
Quote Quote Modify Modify

Just to expand a little on the problem as posed.
 
It's not the SysEx that's the issue.  It's what happens if a Note On (or any) message is sent from the PC to the controller.  If the controller has "MIDI Thru" enabled, it'll pass that Note On to the sequencer.  The sequencer must pass it on to the sound module.  The sound module will play the note and pass it on to the PC, because that's how we've set it up.
 
If the PC passes to MIDI Out everything it gets from MIDI In, what happens?  The Note On is sent from the PC to the controller... er, we just did that.  This is termed MIDI Feedback and MIDI Yoke will detect it and shut down.
 
To stop this, either the controller should not do MIDI Thru (in which case the PC can't play the sound module).  Or the PC must not pass to MIDI Out data it's read from MIDI In.
 
Of course, the latter also may not be what's wanted.  Say the Sound Module was plugged into the PC's MIDI Out?  The user would want "thru" connections on the PC.
 
What you need to do it also allow the user to select whether or not a particular "Out" is a "Thru" (i.e. gets a copy of any "In" data).
 
That should do it.
 
Of course, to be user friendly, always let the user choose which ports to open.  They might actually want to run another application that uses MIDI...
« Last Edit: Sep 17th, 2004, 1:59pm by Peter L Jones » IP Logged

"...Playing fast around the drums is one thing. But to play with people for others, to listen to, that's something else. That's a whole other world." -- Tony Williams
markwa
Member
**



MIDI-OX Rules!

   


Posts: 11
Re: how to temporarily disable Yoke NT drivers
« Reply #10 on: Sep 17th, 2004, 2:46pm »
Quote Quote Modify Modify

Hello Peter,
 
Thanks for your reply.  
 
> Of course, to be user friendly, always let the user choose which ports to open.  They might actually want to run another application that uses MIDI...  
 
I do intend to do that now.  I'll probably do it a little differently from the way I've seen it done in other MIDI apps.  In other MIDI apps, the user explicitly selects which In and Out ports he wants to use.  I'll offer the converse:  The user will select which In and Out ports he _doesn't_ want to use, thus freeing them for other apps.  That makes it easier on the less sophisticated user who won't be using multiple MIDI apps at the same time, and this will probably make it no more difficult for the more sophisticated user. Opinion?
 
> What you need to do it also allow the user to select whether or not a particular "Out" is a "Thru" (i.e. gets a copy of any "In" data).  
 
My app has an Echo On/Off option for an Input port.  But you're recommending something different here.  If the user tells my app he wants an Out port to be Thru only, what is it that my app should do?  As long the user doesn't assign tracks to that Out port, then my app won't be sending anything to it.  I probably misunderstand your recommendation.
 
Cheers
-- Mark
IP Logged
Peter L Jones
Expert
*****




Hit it

   
WWW

Gender: male
Posts: 978
Re: how to temporarily disable Yoke NT drivers
« Reply #11 on: Sep 17th, 2004, 6:07pm »
Quote Quote Modify Modify

on Sep 17th, 2004, 2:46pm, markwa wrote:
That makes it easier on the less sophisticated user who won't be using multiple MIDI apps at the same time, and this will probably make it no more difficult for the more sophisticated user. Opinion?
Depends on what the app user is least likely to find surprising - if you're sure the way you say is right, go for it.  (You'll soon hear from users if you get it wrong Wink )
 
on Sep 17th, 2004, 2:46pm, markwa wrote:
My app has an Echo On/Off option for an Input port.  But you're recommending something different here.  If the user tells my app he wants an Out port to be Thru only, what is it that my app should do?  As long the user doesn't assign tracks to that Out port, then my app won't be sending anything to it.  I probably misunderstand your recommendation.
on Sep 15th, 2004, 10:57pm, markwa wrote:
I just can't seem to get around the MIDI feedback loop problem.
I'm not really sure what you're app's doing -- so long as you're preventing the MIDI feedback problem you had, then it's okay.  On hardware, from what I've read (rather than used), it's often the case that an "Out" port can be enabled/disabled as a "Thru"... but that assumes a pretty simple bit of kit (one In, one Out/Thru, toggle switch to decide if In gets echoed to Out/Thru).  So it's a moot point whether you choose to associate the control with In or Out ports.
IP Logged

"...Playing fast around the drums is one thing. But to play with people for others, to listen to, that's something else. That's a whole other world." -- Tony Williams
RunBeerRun
New Member
*



MIDI-OX Rules!

   


Posts: 3
Re: how to temporarily disable Yoke NT drivers
« Reply #12 on: Jun 23rd, 2006, 1:13pm »
Quote Quote Modify Modify

The registry fix worked, yoke is no longer found.
IP Logged
Pages: 1  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print

« Previous topic | Next topic »


MIDI-OX User Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.