Jump to content

Bliss-box


ulao

Recommended Posts

Technical question: This question is more aimed at the likes of DJVJ Bleasby etc as they are the gods of all that is scripting.

The option of putting in a multi position switch to choose which sticks to use sounds great but I'd like to propose the following:-

A USB controlled switch with a simple driver that reacts to a request from Hyperlaunch or pretty much any script (so it can be used on other front ends) that can be started when a particular emulator is started.

I know it would be difficult to make a switch that waited for an EXE to start as many people use multiple emulators for one Wheel / Game System so a script would be the obvious option.

Having that built into Hyperlaunch as something that can be edited on a per game basis as well would also be a benefit.

Just a thought.

You cited me, so let me try to answer. :)

I don't know exactly what do you mean by an "USB controlled switch" but the part of using HyperLaunch to trigger whatever you want based on the system, emulator or game name is easily done already. You just need to use the user functions and the StartGlobalUserFeatures() function.

For example:

StartGlobalUserFeatures(){
    Global systemName  
    Tooltip, Sending message to Bliss-box to enable the USB joystick configuration to %systemName%
    ; Add whatever command do you want based on the systemName
    Run, blissbox %systemName%
Return
} 

To use the emulator name just switch the systemName variable to the emuName variable. the same thing goes to the rom name (dbname). If you want to use folders to define whatever you are going to do for each system or game, just add then as we do for keymapper profiles, media folders and so on.

The thing that I do not get exactly is what do you want to change at the hardware part.

And the real difficulty is on implementing the hardware part that will take advantage of this signal.

Link to comment
Share on other sites

  • Replies 56
  • Created
  • Last Reply
You cited me, so let me try to answer. :)

I don't know exactly what do you mean by an "USB controlled switch" but the part of using HyperLaunch to trigger whatever you want based on the system, emulator or game name is easily done already. You just need to use the user functions and the StartGlobalUserFeatures() function.

For example:

StartGlobalUserFeatures(){
    Global systemName  
    Tooltip, Sending message to Bliss-box to enable the USB joystick configuration to %systemName%
    ; Add whatever command do you want based on the systemName
    Run, blissbox %systemName%
Return
} 

To use the emulator name just switch the systemName variable to the emuName variable. the same thing goes to the rom name (dbname). If you want to use folders to define whatever you are going to do for each system or game, just add then as we do for keymapper profiles, media folders and so on.

The thing that I do not get exactly is what do you want to change at the hardware part.

And the real difficulty is on implementing the hardware part that will take advantage of this signal.

Thought the software side from Hyperlaunch would be the easy bit. :)

Yep you are absolutely right the hard bit is the hardware. There are lots of little project based USB micro-controllers that could be setup to control this. It would just require a small application that accepted a command just like you have shown above and would turn on the power to the joystick/gamepad ports. We setup similar things many years ago on a mates home entertainment centre so his HTPC could control certain audio jacks that didn't have any form of switching. Wasn't pretty but worked well. :)

Link to comment
Share on other sites

Software side is very easy. First get the hardware, then we can talk. HyperLaunch itself is basically already doing what you are looking for in a general sense. It's an application that accepts CLI, that changes what it does and runs based on what you feed it.

Link to comment
Share on other sites

On my cabinet Im using an xbox 360 controller for n64, Snes, a wiimote for wii and a gamecube controller for gamecube. I find the xbox controller much better than say the snes pad or nes pad etc and universal enough to use across most emulators. Having too many controllers to muck around with would be annoying for me.

Link to comment
Share on other sites

Polemicist, Bliss-Box must remain a driver-less adapter. I know Xpadder is helpful with knowing what app is loaded also. At this moment Bliss-Box is a one way device aside from Force Feedback. This may change once memcards are complete. Communication to the Bliss-Box may be possible via a file. ( this is unconfirmed ).

that said,

side tip: Making a usb cable power switchable via a cable is idiotically simple. Easiest way is to short the white wire (d + ) to ground. This tells the usb controller no usb present on device. Release the short and it will renegotiate. If anyone needs help on that let me know.

If you needed a way to trigger the usb power software-wise maybe you can look in to an ejecting API. From what I know usb can be ejected just like flash cards. Something like Devcon.exe maybe used for a runnable tool or you can use the C# Hardware Helper Lib and add the ResetDevice function but depending on what fscommad exploiter HS uses that may not be an option. Also yes a usb micro controller would be easy as well.

I think devcon uses names instead of PID's not sure?

devcon remove *Bliss-Box*

devcon rescan

I'd have to test that some time for you. If this works out i'll add it to the how to section for other to benefit from.

Link to comment
Share on other sites

  • 1 year later...

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...