Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - BOXXMAN

Pages: [1] 2 3
1
This feature is already built in. Go to your controls menu and assign a button of your choice to it.

2
Scripting / Getting MultiMon Script to Work?
« on: July 24, 2017, 09:23:29 PM »
No matter what settings I try,  I cannot get this script to show any artwork on any monitor. What am I doing wrong? Does anyone else have this working and can offer advice? 

3
You can store Params and variables in autohotkey. I've done it. I never thought about illegal characters. Is it possible you can escape them?

I know you can store variables in AHK, my problem is how do I get them from AM? Is there a way to output them from AM, so they can be used in an AHK script? I don't know how you take the variables from AM and make them something an external AHK script can use.

4
6 threads down: http://forum.attractmode.org/index.php?topic=1705.0
You directed me to a thread I also started about command line parameters. I'm not asking how you send them in a .nut script or in squirrel itself. I'm wondering how you those variables and either output them to a script written in another language. Those variables, ie-  fe_game_info(Info.Name) cannot be used as a variable  in an external AHK script. For one, it contains illegal characters and, AHK doesn't recognize it as a variable anyway. What I want to know is if it is possible to take the variables that AM outputs, and say do a copy function, so that it can be transferred with the clipboard command of AHK for example. I don't even know if taking variables from a script in squirrel and exporting them to another application can be done.This may just be an impossibility in general, mixing apples and oranges. This also applies to Windows PC BTW.

5
How would you go about sending variables to external AHK scripts for example. In Hyperspin, you could use "%romname%" and "%systemname%" to send variables to an AHK script. You could also use the clipboard function in AHK to capture variables and then copy them to your script. However, with AM, or I don't know how you can extract those variables to use with scripts that aren't written in squirrel. I am much more comfortable with writing AHK scripts to automate a lot of things, and would rather do that than use squirrel scripts. So is it possible to get the variables and pass them to AHK, or anything else for that matter? If squirrel had some sort of function that could just copy variables to the clipboard that would work, so they could then be copied into another application.

6
Scripting / Re: ScrollingText module doesn't work?
« on: July 21, 2017, 08:13:24 AM »
i think it is not set up to use m-tokins

i notice if you use [DisplayName] it will only scroll the first letter
of the name.

i think the module needs to be updated, but liquid8 seems occupied
with his new online theme creator...

It will take magic tokens just fine, and I use the same code as shown above to use it.
Code: [Select]
fe.load_module("objects/scrollingtext");
local scroller = ScrollingText.add("[Overview]",flx*0.355, fly*0.9, flw*0.3, flh*0.9);

What you may be missing is the parameter to set width. If you do not set a width for the text it will get cut off after the first letter. Set parameter as follows.
Code: [Select]
scroller.settings.fixed_width= 9000;You can set the length for whatever you like, it just has to be set for your longest text field, and you will have to experiment to find out what works for you. I have mine set very high since I use ExoDos infos that I converted to .cfg for AM, and they are very lengthy.The only problem is that for short overviews, it causes a long delay before they stat again, because it will continue to scroll the fixed width value before starting again. Since there is no provision for calculating the string length in the module, it just has to be a fixed value. Also, don't forget
Code: [Select]
scroller.settings.loop =100;This will loop it so it doesn't only play once. All of this will work for horizontal scrolling text, however, vertical does seem to have issues working properly, and that may be a module flaw.

7
Scripting / What is the usage of fe.Monitor command?
« on: July 20, 2017, 09:43:13 PM »
There is very little documentation as to how you communicate with other monitors that I can find. In the documentation of layouts all it mentions is
#### `fe.Monitor` ####
This class represents a monitor in Attract-Mode, and provides the interface to the extra monitors in a multi-monitor setup. Instances of this class are contained in the fe.monitors array. This class cannot otherwise be instantiated in a script.

Ok, so how do you implement this in a layout? Can you classify monitors as 1,2,3, ect, and send different artwork to each one? As it is, I have multiple monitors enabled, and fill screen mode. Like this, I can have a large layout that spans two monitors, and my layout displays marquees and game info on the secondary, which is nice. It gives the appearance that you have two separate displays running, but in reality it is just one extended display. However, the images on the secondary monitor won't hold after you launch a game, since AM suspends itself and turns the secondary monitor white after a game is launched. So, does anyone know if you can have multiple monitors running separately from each other rather than just an extended desktop?

8
General / Re: Multiple executables on a single Display?
« on: July 19, 2017, 07:48:59 PM »
On pc this can be done by bringing up the game edit menu by hitting  the g key I believe.
This is the correct answer.  Thanks.  AttractMode seems to have defaulted to the unexpected hotkey of "escape+down".  Whatever works.  It'll take a while to make entries for the ~90 roms that need it, but at least it can be done.
In your case, the easiest way to accomplish this would be to set up different displays with the executable you want for each set (e.g, MAME for most games, AAE for vector, Model 2, for Sega Model 2 ect.) Get all of this separate displays set up with the roms and executables you want. Then, go into the Configure>Emulators>Generate Collection/Rom List. Use this to include all of the arcade systems you want in one list, and generate one unified arcade game list. Go back to the menu and then go into the configuration of the displays you used to create your master list and mark them as "Show in Cycle- No". Then, all of the individual displays will not be seen, only your one large master arcade list, all set up to use the executables set per display. The only caveat to this is you would have to have your vector roms in a separate folder from the MAME, so when you generate a romlist, it includes only the specific roms you want for that list. This isn't a problem for most other arcade roms though, since you will already have them in separate folders for that specific emulator (eg. Model 2, Model 3, Naomi, ect.) since they don't work with MAME anyway.

9
Hyper Shlt was a pain in the @ss to try and set up. Thats why I initially switched to attract mode. Anyways…

Code: [Select]
fe.plugin_command( executable, arg_string )
The plugin command takes an argument string. Have you tried returning a function inside the string?

Not tested, but try something along these lines and let me know how you make out.

Code: [Select]
fe.plugin_command("/Rocketlauncher/Rocketlauncher.exe", "-s „ + fe.game_info(Info.System) + " -r „ + fe.game_info(Info.Name) + " -p AttractMode -m pause");

Ok, for what it's worth and if anyone else has struggled with this and cares, here's how I finally got this working on Windows. You have to use "\"" to enclose arguments with spaces and send the quotes as well. For example,
Code: [Select]
"\"" + fe.game_info(Info.System) + "\"" This will send system name with spaces wrapped in quotes to your command line. However, if using a literal string, it has to be wrapped in quotes inside of that, such as
Code: [Select]
"\"" + "Sega Genesis" + "\""This will output literal with space and wrap it in quotes.
Each argument can be sent as a single terminated argument like this, and switches that are a single letter or word can be enclosed in single quotes such as "-s" for example
Forward slashes must also be used for escaping the quotes, as back slashes are interpreted as path delineators and won't work properly.

10
Try this.
Code: [Select]
fe.add_text("[ListEntry] / [ListSize]", flx*,fly*,flw*,flh*);That will show the number of the entry on the left, and whole list size on right, or if you just want the rom count only, use [ListSize] only.

This just lists how many displays there are to choose from, the OP was asking about having how many roms inside the display to show. If this is even possible of course.

Sorry, misunderstood what you were asking for. No, as far as I know, there is no provision for displaying anything text related other than the name of the display on the displays menu. You can display art assets of you have a menu-art folder in your main directory, but as far as anything related to text options, no. I have been trying to find a way to put up system info or overview for systems in the display menu and have run into the same problem.

11
General / Re: Multiple executables on a single Display?
« on: July 19, 2017, 11:07:51 AM »
If I understand correctly, what you want to do is specify different executables for individual games in a certain display?  On pc this can be done by bringing up the game edit menu by hitting  the g key I believe. There is the option in there to specify a custom executable on a per game basis. I use pc myself, so don't know if the same is true with pi. Unfortunately most of the focus and conversation about this fe seems to be geared toward pi, which to me is a novelty and waste time when you could use real hardware to run it with far more options, especially when building it into a cabinet.

12
General / Re: hide bios fba neogeo
« on: July 08, 2017, 11:52:33 AM »
Edit game menu, key G, then delete this game from that menu. It only deletes from romlist, not the file itself. Or, go to Configure Menu> Displays>Your display>Add Filter. Then add filter of title does not equal neogeo.zip. That will filter it from the list.

13
General / Re: Forcing PageUp/PageDn to work the way one would expect?
« on: July 07, 2017, 04:43:41 PM »
Tab to Configure Menu>Controls>Previous Letter and Next Letter controls.  Use add input to page up and down keys respectively, or any other keys you want to use. Now you can jump alphabetically with them.

14
General / Re: New user to AM, leaving Hyperspin behind
« on: July 06, 2017, 06:20:00 AM »
So yeah, it's crazy. For debug purposes, the terminal shows exactly what you say, and shows it with the spaces. However, in practical use it does not work, as Rocketlauncher is only getting "Nintendo" sent to it, whereas terminal shows it outputting "Nintendo Entertainment System" , so it must be a Windows thing. So, what is the solution to this? I'm not understanding what @hermine.potter is suggesting to do. Can you give me the full command line as being discussed for Rocketlauncher as an example?

Are you running the RocketLauncher plugin in both AM and RLUI? Maybe I'm misunderstanding what you are trying to accomplish but AM can use RL just fine.

Here's a config from my Windows machine that runs HS, AM, RetroFE, etc. which all use RL.

Code: [Select]
# Generated by Attract-Mode v2.2.1
#
executable           D:\HyperSpin\RocketLauncher\RocketLauncher.exe
args                 -s "[emulator]" -r "[name]" -p AttractMode -f "D:\AttractMode\attract.exe"
rompath              D:\HyperSpin\Roms\Nintendo Entertainment System
romext               .nes
system               Nintendo Entertainment System (NES)
info_source          thegamesdb.net
artwork    flyer           ..\HyperSpin\Media\Nintendo Entertainment System\Images\Artwork3
artwork    marquee         ..\HyperSpin\Media\Nintendo Entertainment System\Images\Artwork4
artwork    snap            ..\HyperSpin\Media\Nintendo Entertainment System\Video
artwork    wheel           ..\HyperSpin\Media\Nintendo Entertainment System\Images\Wheel

So everyone seems to misunderstand what is going on here. I never claimed Rocketlauncher does not work with AM, as I use it just fine. What I am saying is that the fe.plugin_command() is errant. The way AM sends command line parameters internally is different than the way in which this command sends the information. Obviously, AM has the capability of sending the arguments correctly when setting up the arguments in the emulator menu of AM itself. Using the Magic Tokens in quotes as you have, and I have, does send the string with spaces just fine. It is also not a Windows problem because Hyperspin and AHK can obviously send strings with spaces like "%system%" and "%"romname%" with no problem. The problem is the fe.plugin_command() specifically, because the info contained within cannot have spaces. Even if I put the literal "Nintendo Entertainment System" instead of (Info.System) variable, it gets cut off to only "Nintendo" when sent to outside programs. Rocketlauncher was being used as one example, so let's not focus on whether Rocketlauncher or program a,b,or c works with AM. Internally, THEY ALL DO. When trying call them from a layout so you can have more functionality than just the one emulator exe that AM calls on itself, it fails. The result When using a pdf  reader was the same. It opens many instances of the program, each opening with one word of the system, sending the full path each time with only a part of the name each time. Thus I have three instances of the program being opened like this - Attract Mode/SumatraPDF/System,  Attract Mode/SumatraPDF/Entertainment, Attract Mode/SumatraPDF/Nintendo. So again, how is AM itself internally handling passing spaces without problem, yet the fe.plugin_command() is  failing and not handling strings the same way? This is the problem. I have looked at the source code but am not a programmer so having trouble deciphering how AM sends these arguments differently so it will send spaces when the emulators are configured through the FE menu. Can anyone confirm (Windows, or otherwise) that  fe.plugin_command() can send variables with spaces to an actual program and execute properly, not just show that it outputs the spaces in the terminal, because something else is happening with the way the intended program is handling them.

15
General / Re: New user to AM, leaving Hyperspin behind
« on: July 05, 2017, 11:22:31 PM »
So yeah, it's crazy. For debug purposes, the terminal shows exactly what you say, and shows it with the spaces. However, in practical use it does not work, as Rocketlauncher is only getting "Nintendo" sent to it, whereas terminal shows it outputting "Nintendo Entertainment System" , so it must be a Windows thing. So, what is the solution to this? I'm not understanding what @hermine.potter is suggesting to do. Can you give me the full command line as being discussed for Rocketlauncher as an example?

Pages: [1] 2 3