Jump to content
(Public Beta) HyperSpin 2 is now available for everyone ×

HyperMarquee


Antos

Recommended Posts

Posted

Thanks, antos. And no problem...your English looks pretty good to me.

 

I'm at work now, so I can't do any testing at the moment, but I do have access to my configs. The explanation you provided about the wheels make sense. I was noticing in the HyperSpin log that from the main menu the parameters were "<System Emulator>" "Main Menu", which I was trying to wrap my head around...so now that makes more sense. Your entry above looks like what I tried first before I ended up with my final parameters (false Marquee-HyperSpin DummyData "[system]"). In my testing it seemed that regardless of what I used for the parameters being passed, it didn't matter...whether using variables or specific text or just dummy text. The main thing that got it to work was using a System Filter on "Main Menu". My goal was simply to use event 9 only on the main menu to trigger a marquee.

 

I think the multiple processes being spawned is contributing to or causing the crash of the executable, as well as the slow performance. Is it normal to get multiple HyperMarquee instances when using a filter for event 9? Any other filter I use re-uses the same instance, but when I turn on that config and I hold down Alt-Tab I've seen anywhere from 3 to 12 or so instances...all killed after exiting HyperSpin. That may well be the root of my problems here.

 

When I get home I'll try the parameters you supplied in the screen shot above and see what behavior I get.

 

Thanks.

  • Replies 1.3k
  • Created
  • Last Reply
Posted

Multiple instances of HM are not normal when unwanted. That's one reason why Pipe (Cli) exists, but make sure your settings are not set to read only... Also, make test directly using EDS by faking some params (simulated message text boxes)...  I did try it with the EDS settings i sent you, and it don't creates multiples instances...

HyperMarquee & Event Dispatch System

Posted

I just found your multiple instances problem by deduction.

Go in HM, Event tab and make sure your NamedPipeID is set to 'Marquee-HyperSpin'. Right now, the Id that you are using is not the same.

HyperMarquee & Event Dispatch System

Posted

When you say you tried the EDS settings I provided, did you test simply within EDS? Or did you launch HyperSpin after configuring EDS? Mine works as expected when tested from within EDS using various parameters, but when HyperSpin is launched, which in turn spawns HyperMarquee, it creates multiple instances. I'll have to grab some screenshots from you once I get home and can run some more tests.

 

I'm 110% positive I have no folders or settings set to read only. If I did have it set as read only, I know I would have much more severe problems such as not being able to close the process. I noticed that the PID tag is updated every time HyperMarquee is called from HyperSpin, presumably so it knows what process ID to close upon close event.

Posted

Here are my current settings for EDS and HyperMarquee, just as it relates to this one particular Main Menu entry (i.e. i stripped out the EDS config for my working Game and System marquees). They appear to match to me, or am I looking in the wrong area? Do you see an issue with the name not matching? Or anything else for that matter?

 

EDS:

  <EDS>
    <ID>de68765eb0fd483fbda7b4d56a77f80c</ID>
    <Path>Y:\HyperSpin\HyperMarquee\Hyper Marquee.exe</Path>
    <Application>Hyper Marquee</Application>
    <Close>false</Close>
    <PID>3060</PID>
    <IPC>Pipe (CLI)</IPC>
    <Running>false</Running>
    <Kill />
    <Parameters>false Marquee-HyperSpin DummyData "[system]"</Parameters>
    <RunningFlash />
    <Disable>false</Disable>
    <IPCID>Marquee-HyperSpin</IPCID>
    <EventFilter>9</EventFilter>
    <CloseEvent>2,7</CloseEvent>
    <SystemFilter>Main Menu</SystemFilter>
    <RelativePath>../HyperMarquee/Hyper Marquee.exe</RelativePath>
  </EDS>

HyperMarquee file "Marquee-HyperSpin.xml":

<?xml version="1.0" encoding="utf-8"?>
<HyperMarqueePreferences xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <MarqueeFilename>marquee-hyperspin</MarqueeFilename>
  <WindowTop>0</WindowTop>
  <WindowLeft>640</WindowLeft>
  <WindowHeight>382</WindowHeight>
  <WindowWidth>1366</WindowWidth>
  <WindowState>Normal</WindowState>
  <WindowTopMost>true</WindowTopMost>
  <EditMode>true</EditMode>
  <DefaultSystemPath />
  <SystemConfFile />
  <BackgroundImageFile />
  <ForegroundImageFile />
  <ForegroungBrush />
  <ThemePath>C:\Game\HyperSpin\Media\[System]\Themes\[FileName].zip</ThemePath>
  <DefaultThemePath />
  <ThemeVideoPath>C:\Game\HyperSpin\Media\[System]\Video\[FileName].flv</ThemeVideoPath>
  <ThemeTransitionPath>C:\Game\HyperSpin\Media\[System]\Video\Override Transitions\[FileName].flv</ThemeTransitionPath>
  <DisplayVideoThemeFrame>false</DisplayVideoThemeFrame>
  <PlayVideoTheme>false</PlayVideoTheme>
  <PlayVideoTransitionTheme>false</PlayVideoTransitionTheme>
  <VideoVolumeTheme>0</VideoVolumeTheme>
  <VideoTransitionVolumeTheme>0</VideoTransitionVolumeTheme>
  <UseScreenCopy>false</UseScreenCopy>
  <DisplayBackgroundTheme>true</DisplayBackgroundTheme>
  <DisplayDefaultArtworkTheme>true</DisplayDefaultArtworkTheme>
  <DisplayArtwork1Theme>true</DisplayArtwork1Theme>
  <DisplayArtwork2Theme>true</DisplayArtwork2Theme>
  <DisplayArtwork3Theme>true</DisplayArtwork3Theme>
  <DisplayArtwork4Theme>true</DisplayArtwork4Theme>
  <VLCpath />
  <VideoFile />
  <VideoTransitionFile>C:\Game\HyperSpin\Media\[System]\Video\Override Transitions\[FileName].flv</VideoTransitionFile>
  <UserShaderinsteadOfVideo>false</UserShaderinsteadOfVideo>
  <MarqueeTransparency>0</MarqueeTransparency>
  <MarqueeStyle>0</MarqueeStyle>
  <TextFont>Pump LET Plain</TextFont>
  <FontBrush><SolidColorBrush xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">#FF000000</SolidColorBrush></FontBrush>
  <FontShaderEffect>false</FontShaderEffect>
  <TextFontSize>72</TextFontSize>
  <HorizontalAlignment>Left</HorizontalAlignment>
  <VerticalAlignment>Top</VerticalAlignment>
  <BackgroungBrush><SolidColorBrush xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">#BE000000</SolidColorBrush></BackgroungBrush>
  <BorderBrush />
  <HiToText>Y:\HyperSpin\HiToText.exe</HiToText>
  <BorderThikness>
    <Left>0</Left>
    <Top>0</Top>
    <Right>0</Right>
    <Bottom>0</Bottom>
  </BorderThikness>
  <AutoCloseDelay>0</AutoCloseDelay>
  <StartDelay>0</StartDelay>
  <TextOrientation>Horizontal</TextOrientation>
  <TextScrollingOrientation>0</TextScrollingOrientation>
  <TextScrollingSpeed>0</TextScrollingSpeed>
  <DisplayUnderFont>false</DisplayUnderFont>
  <DisplayScoreHeader2>true</DisplayScoreHeader2>
  <CloseAfterScrollingCompleted>false</CloseAfterScrollingCompleted>
  <TextEffect>2</TextEffect>
  <GifRepeatBehavior>0</GifRepeatBehavior>
  <TransitionEffect>0</TransitionEffect>
  <FontOutlineThickness>2</FontOutlineThickness>
  <FontOutlinedBrush><SolidColorBrush xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">#FF000000</SolidColorBrush></FontOutlinedBrush>
  <ImageStretch>Fill</ImageStretch>
  <ForegroundImageStretch>None</ForegroundImageStretch>
  <BackgroundImageStretch>None</BackgroundImageStretch>
  <VideoStretch>None</VideoStretch>
  <VideoTransitionStretch>None</VideoTransitionStretch>
  <MarqueeSystem>MAME</MarqueeSystem>
  <TextInfoFolder />
  <HiFolder>Y:\Emulators\MAME\hi</HiFolder>
  <NvramFolder>Y:\Emulators\MAME\nvram</NvramFolder>
  <HighSocreTitleHeader1 />
  <HighScoreTitleHeaderPadding />
  <SnapToGrid>false</SnapToGrid>
  <HTImageBypass>false</HTImageBypass>
  <HTImageHeightBypass>180</HTImageHeightBypass>
  <DigitalTextClosing>0</DigitalTextClosing>
  <ArtworkPathLocation>X:\Artwork\Main Menu\Images\Marquee\System\Main Menu.png</ArtworkPathLocation>
  <Artwork1AlternativeLocation />
  <Artwork2AlternativeLocation />
  <Artwork3AlternativeLocation />
  <Artwork4AlternativeLocation />
  <ArtworkEffectShader />
  <VideoArtworkVolume>0</VideoArtworkVolume>
  <GameInfoLocation>Y:\RocketLauncher\Data\Game Info\[System].ini</GameInfoLocation>
  <HyperListLocation>C:\Game\HyperSpin\Data\HyperList\[System].xml</HyperListLocation>
  <GameInfoText />
  <HyperlistRegex>(\[.*\])|(".*")|('.*')|(\(.*\))</HyperlistRegex>
  <HyperlistRegexCheckbox>true</HyperlistRegexCheckbox>
  <DigitalTextSourceOption>0</DigitalTextSourceOption>
  <DigitalTextScrollingOption>0</DigitalTextScrollingOption>
  <DigitalTextPauseScrolling>-1</DigitalTextPauseScrolling>
  <FlashDurationOnPause>0</FlashDurationOnPause>
  <IsSplitLines>false</IsSplitLines>
  <ScreenCopyWindowTop>0</ScreenCopyWindowTop>
  <ScreenCopyWindowLeft>0</ScreenCopyWindowLeft>
  <ScreenCopyWindowHeight>0</ScreenCopyWindowHeight>
  <ScreenCopyWindowWidth>0</ScreenCopyWindowWidth>
  <ScreenCopyWindowRefreshRate>0</ScreenCopyWindowRefreshRate>
  <ScreenCopyStretch>None</ScreenCopyStretch>
  <MarqueeSpeak>false</MarqueeSpeak>
  <SpeakRegEx />
  <SpeakRegExReplacement />
  <TransitionOption>0</TransitionOption>
  <ArtworkShader>0</ArtworkShader>
  <TransitionShaderName>Transition_RippleEffect</TransitionShaderName>
  <TransitionShader><Transition_RippleEffect Progress="0" xmlns="clr-namespace:Shaders;assembly=Shaders" xmlns:av="http://schemas.microsoft.com/winfx/2006/xaml/presentation"><Transition_RippleEffect.Texture2><av:ImageBrush ImageSource="pack://application:,,,/Icons/EDS.ico" /></Transition_RippleEffect.Texture2></Transition_RippleEffect></TransitionShader>
  <ForegroungShader />
  <BackgroungShader />
  <SuperShader />
  <TransitionShaderDuration>1000</TransitionShaderDuration>
  <NamedPipeID>Marquee-HyperSpin</NamedPipeID>
  <AutoCloseEventList>2, 4, 6, 11</AutoCloseEventList>
  <ArtworkCycling>false</ArtworkCycling>
  <ArtworkCyclingInterval>5</ArtworkCyclingInterval>
</HyperMarqueePreferences>
Posted

Could you please provide a screen shot of your configuration window of eds, it doesn't look setup right still, just from the code you provided

You should put dummy data in quotes to cover all parameters issues

Sorry, my phone saw all code all wrong, when I went to my computer, the setting do match.. but the events you have set for open and close, you won't get much result

Posted

I am trying to understand what you are attempting to do with the second instance of hypermarquee, most likely probably why I am not getting what you are doing. Slizzap could you help me see your view point?

Posted

Sure. I was about to respond to your previous post, but I need to do more testing, and I've only got 5 minutes before I have to leave. I'll report back on that later.

 

Here's what I'm attempting to do:

 

Marquee-Game

This config file opens up the marquee artwork for the game that is being launched and emulated. It is triggered on game start (3) and closed on game stop (4). This one is simple.

 

Marquee-System

This config file opens up a static image per wheel. If I'm in the MAME wheel, it displays the MAME logo as a marquee...if in Sega Genesis wheel, it displays the Sega Genesis logo as a marquee. It is triggered by HyperSpin starting (1) and list change (7) - switching into that wheel, and closed on HyperSpin exit (2).

 

Both of these are working perfectly in tandem. From the main wheel, no image is displayed. I select MAME and the MAME logo shows. I then select a game and the game marquee shows. I exit out of the game, that triggers a close of the marquee, but under it is the MAME logo which was left open, so that remains correct. I back out to the main menu, the MAME logo continues to display. I then go into the Sega Genesis wheel, and the marquee switches to the Sega Genesis logo. Closing HyperSpin shuts all this down.

 

So both of those are working perfectly. I have 98% of what I want to accomplish. The last 2% is taking care of that bold line above. I'm trying to figure out a way to add the 3rd HyperMarquee instance to have a static image (i.e. HyperSpin logo) display whenever the main menu is entered...whether from starting HyperSpin, or backing out of a wheel to go back to the main menu.

 

Does that help? Let me know if you'd like me to post any additional configs.

 

Thanks.

Posted

Here are my comments towards your statement in bold.

 

Your posted EDS settings will never display anything. Here why; you are asking to display an image called 'Main Menu' in the main menu only. due to your filter. No 'Main Menu' image exists, of course. Your other instance is still running, which can be ok, but still display your last visit in a previous game wheel. Simply use an alternative image when no one is found to display the system image. For that you will have to slightly modify your parameters and pass the menu item in yor first parameter instead of dummydata. You still need 2 EDS instances to acheive your goals. I may try a prove of concenpt if you can't implement my suggestions...

 

Correction.. you need 2 instances....

HyperMarquee & Event Dispatch System

Posted

sevenseal: I set an image for the Background in Global Setting as suggested, but it was never displayed at any point. How exactly is that setting supposed to work? It's not documented in the PDF that comes with the executable.

Posted

For example, if a picture is chosen as a background then when you have no present image to be display as such situation where you don't have a marquee image for a game you have, it display no marquee image but at least show your background image

Posted

Antos: Actually, "Main Menu" is a valid parameter. In HyperSpin, the main wheel is actually called "Main Menu" in all settings. My Artwork path location "X:\Artwork\[system]\Images\Marquee\System\[system].png" works perfectly fine when I set that to event 1 to trigger upon Start of HyperSpin because the system parameter it passes is "Main Menu". So it works good to start HyperSpin, but once backing out from a wheel to the Main Menu, it doesn't display, because backing out of a wheel sends an event 4 (game stop) as opposed to an event 7 (list change).

 

I'm going to look into your suggestions and play around a bit.

 

Edit: To clarify my first statement above, my artwork path location is interpreted by HyperSpin at start event (1) as "X:\Artwork\Main Menu\Images\Marquee\System\Main Menu.png". That actually displays the image I want it to, but only upon start of HyperSpin.

Posted

If you want your system image to display...

Your parameters should set to this in hypermarquee

"X:\Artwork\[system]\Images\Marquee\System\[filename].png"

Instead

 

because you can have your system marquee display while you are one instance running

which require to be added to your "game" instance that you have running

Posted

sevenseal: I tried the Background image as you suggested. If I open HyperSpinEventIntegrator and test the settings there after setting the Background Image I'm seeing strange behavior.

 

I set the image for my Marquee-System config, which triggers on 7. If I do an event 7 and pass a bogus system name, it displays the background image, if I then pass a real system name, it then shows that image. From there if I switch back to a bogus name, it never returns the image to the background image...the previous image displays on screen. So it works good if the initial call does not find an image, but once it displays a proper image it will never display the background image again. At least that's the behavior I'm seeing.

Posted

could we do a teamviewer session please?

if we really want to get a hold of this issue, one of us has to witness this in action to find out the a solution to this

Posted

oh do you exit hypermarquee completely when you make setting changes, if you dont and thats the case then the setting changes are not being saved at all

inorder for the save, that must be done first before a new instance of it or new parameters are given to it

Posted

Ok, i will finish my proof of concept tomorrow. I have the game wheel working good, I will check the Main Menu tomorrow....

HyperMarquee & Event Dispatch System

Posted

okay i was able to make this all worked out, i was working with Antos and i was able to do this by using three different entry into EDS and two different label HyperMarquee but with the same setting as slizzap, which i believe you trying to do

Posted

Sevenseal: Yes, I always completely exit out of HyperMarquee when making changes.

 

I'm available now if you'd like to do a TeamViewer session. Does that support multiple monitors?

Archived

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

×
×
  • Create New...