View Full Version : HyperLaunch AI v.0.00.09
Kodiak
12-14-2010, 06:57 AM
[Linky] (http://www.mediafire.com/?w3yr9y8rjm8jrdf)
Okay I'm posting this simply because BBB is currently working on v2 of hyperLaunch written in AHK...and this is meant to serve for some idea's of what he or others may try and do with the AHK version.
This isn't usable in its current condition...it's only meant to be poked and prodded. :p
I'm still adding more functionality to it...along with constantly restructuring it...so what you see now...maybe a lot different from whats actually released as something usable.
It currently offer's support for multiple rom paths, rom extensions, launching multiple control encoders (Win-iPac, iPac, KeyWiz, Xpadder) with per game config's, hiding the OS environment....hmm that is about it at the moment...it doe's come with a concept script for switching between multiple game disc's.
Once the disc changing is actually in the script package, along with Betabright & LEDBlinky support I'll actually start pumping out modules to where the whole thing is usable. I currently plan to have around 175 modules at release.
If there are any other features currently lacking in ether of the AHK based HyperLaunch builds, that you would like to see...well post here...and maybe I'll be able to add support.
This looks really good kodiak. I remember when I first started using HS I wondered why they used ahk instead of AI. Now that I've accustomed myself to ahk, AI looks foreign to me. I know AI is more powerful and has some really nice tools. Look forward to seeing what you get done with this.
BadBoyBill
12-14-2010, 12:20 PM
I used both AI and AHK, but at the time of the orignal HL I think my deciding factor was the fact that ahk had some nicer documentation compared to AI, but im sure thats all different now. Either is really good to use, Im sure they both can pretty much do pretty much anything this far into their development.
monkeysez
12-14-2010, 06:29 PM
Which one is lighter on resources currently?
Kodiak
12-14-2010, 06:43 PM
Well mine will almost certainly be using more resources...unless BBB or someone else starts adding a lot of code. In ether case though you shouldn't have more than 1-3mb in memory.
I have yet to really look over HL v2.0 but I'd take a guess that I'm likely pushing 3x as much base code, and my modules will likely be twice the size. This shouldn't be taken that AI is less efficient than AHK...just that I'm going for the kitchen sink approach.
Keep in mind that the AHK one's are the only production ready builds currently. Mine is strictly for demonstration purposes at present.
I intend to have a better demonstration build up in the next day or so...for those that are willing to Alpha Test...hehe as Beta is still a ways off.
Kodiak
12-15-2010, 07:14 AM
Okay fixed some bugs...and likely introduced a few more.
Now supports folder recursion...this basically means it'll go hunting through sub folders to find your rom.
Added support for UltraMap for users of U360's.
One can now exit modules\emulator's from digital gamepad's.
One will soon be able to switch game disc's with ether keyboard or digital encoder's.
The example Mame module does work...just isn't complete.
Now HL-AI expects the System augment to be sent a certain way:
[<class>] <system> (<emu>)
For the PSX it would look like so:
[Console] Sony Playstation (ePSXe)
However for Mame it looks like so:
[Arcade] (Mame)
Roms should be sent to HL-AI in name only of the file...no pathing and no file extension.
Question how much or how well does HS handle LEDBlinky & BetaBrite as of now...and the pending release?
Just don't have a lot of interest in reinventing the wheel...if its really not going to improve things.
BadBoyBill
12-15-2010, 09:38 AM
For subfolders: Current HL does support this, just for users info, but only 1 folder deep and the folder has to be named the romname, which i figure most people have done.
For ultramap, this is done via ledblinky already in HS so not sure the real need for it to be done via the script to much unless it does a better job. If they do use it via script then they probably should turn ledblinky off in the FE in that case but then that would break everything else such as controls view when switching games and other functions within HS.
For exit via gamepad: Current HL does support.
Swap discs, not implemented.
for BetaBrite - HS pretty much gots this on lock (without plugins also), it does things other FE's don't even do, its pretty in depth and covers all the useful stuff the alpha protocol offers, such as font sizing, shadows, colors, speed, animations etc.. Even supports color images via prism which I havent seen done yet either. Also has a full on configuration program already. Regular betabrite support got broke in the recent version, but will be added back in.
Video for regular BB.
_lSiidrcYNY
Color images on the Betabrite Prism:
IpcBQFQu6gQ
Config:
http://www.hyperspin-themes.com/images/hyperspin/HyperBrite1.jpg
http://www.hyperspin-themes.com/images/hyperspin/HyperBrite2.jpg
http://www.hyperspin-themes.com/images/hyperspin/HyperBrite3.jpg
I'ts currently more powerful than the betabrite softwares out there.
I'm not so sure I like that a rom could be anywhere. This sounds like users could get away with messy rom dirs and harder to troubleshoot. I prefer the more strict approach.
galvitron
12-15-2010, 08:54 PM
From what I understand, there is an issue with AHK where you cannot use two gamepad buttons at the same time as your exit emulator keys. You can use an "or" but not an "and". For instance, I want to use Start and Select pressed at the same time on my xbox360 gamepad to exit emulators, but it won't work. I can only make it work with Start OR Select.
I think AI should be able to work around this limitation.
Kodiak
12-15-2010, 10:00 PM
@ BadBoyBill -
Let me guess the roms in same name sub folder's you picked up from Brian?
Well I'll leave the support for UltraMap in...but I think I'll abandon adding support for LEDBlinky & BetaBrite...and advise users that if they have a U360 and run LEDBlinky to turn off support in my script.
@ djvj -
While you are certainly correct that it could lead to more messy directory hierarchy...I'm not sure it would make things harder to trouble shoot...as basically it comes down to asking them if only the roms for that system are in the directory...if so...then you know thats not the issue.
@ galvitron -
Well AI doesn't directly handle gamepad's...I'm doing a dll call...which I think can also be done in AHK...but not sure.
However you can define whatever you want todo whatever you want...right now it's short of hard coded to mimic GX's exit combo...with disc swapping being abstracts of that.
Exit = POV UL or JOY1 UL and BUTTON 4+5+6
Prev = POV UL or JOY1 UL and BUTTON 1+5+6
Next = POV UL or JOY1 UL and BUTTON 3+5+6
So its kind of a hard combo to hit accidentally.
Also since my source is currently open...BBB or others can look at how the script does the DLL call and see about bringing that over to HL AHK.
galvitron
12-16-2010, 07:57 PM
What dll are you calling?
Kodiak
12-16-2010, 09:20 PM
Winmm.dll
hehe it's in the source code. :)
Kodiak
12-28-2010, 05:27 PM
Okay a bit of an update...I'm busy cleaning up and enhancing some inspired work done by Chesko called MuDiGUI (http://www.gameex.info/forums/index.php?showtopic=8483).
http://imgur.com/a4ZXm.jpg
Some Toy Code: [Linky] (http://www.mediafire.com/?82qo60fsqddzqje)
Note: be sure to exit the script with ESC or clicking on the icon in the SystemTray...otherwise it'll hang around in memory. :(
Now this bit of code offers nothing over the original than being more compact....basically the original code came in at 268 lines...and this 101 lines. So for those looking to learn a bit about AutoIt...it should be a little easier to grasp the code.
Anyways we are getting a GUI for Disc Swapping. :)
Sick, that is awesome. This will make alot of ppl happy!
Kodiak
12-28-2010, 06:27 PM
Well lets hope so. :)
BadBoyBill
12-28-2010, 06:56 PM
Ya good job, I like the idea of that.
Kodiak
12-28-2010, 07:18 PM
Well it would be better if you had a GUI for this setup in HS...as it would look a lot cleaner.
Base idea is:
Receive Game Name Then
-Check If Game Name == INI Section Name Then
-- Count Matching INI Section Name Keys
-- Build GUI based of Key count
++ If User selects Disc based on Key Then
+++ Pass Key value (disc name) to Module
+++ Destroy GUI
+++ Wait for Module to Run & Exit
== Return to FE
BadBoyBill
12-28-2010, 07:31 PM
We use the xml to get number of disc data, so I already have a disc count based on the current databases for the games that do. And its a standard naming convention worked off of no-intro
Game Name (USA) (Disc1)
Game Name (USA) (Disc2)
seemed reasonable.
Rigth now each disc shows up in the FE , but i guess i can add a features
to remove multi disc games from the list and make an interface for those games when trying to launch the first disc.
I guess with the problem here is that I hear that some games require 1st disc to be loaded and done before a 2nd disc can be loaded.
You can extract enough info from the naming above.
Kodiak
12-28-2010, 08:00 PM
Yeah you are right...Well how hard would it be to do a Mini HS that can read and write to the CMD console?
As with AI I can grab the console read, write & error of an executable.