Thread: Sega Model 2 + Demulshooter + bezels = foul up

Page 1 of 2 12 LastLast
Results 1 to 20 of 21
  1. Collapse Details
    Sega Model 2 + Demulshooter + bezels = foul up 
    #1
    Senior Member MydknyteStyrm's Avatar
    MainSecondary
    Join Date
    Jul 2014
    Posts
    164
    Contribute If you enjoy reading the
    content here, click the below
    image to support our site.
    Click Here To Contribute To Our Site
    Title says it all. See pic for what happens. When I run a normal SM2 game without Demulshooter, loads up in the bezel just fine. What do you guys think?




    Sent from my iPhone using Tapatalk Pro
     

  2. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #2
    Senior Member MydknyteStyrm's Avatar
    MainSecondary
    Join Date
    Jul 2014
    Posts
    164
    Never mind figured it out. For some reason my guns weren't set and Demulshooter was starting up without parameters.


    Sent from my iPhone using Tapatalk Pro
     

  3. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #3
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    It's not just you. I'm also having the same problem. it's nothing to do with demulshooter not being configured though, it works perfectly if I don't enable the bezel. The same issue happens with both the Demul module and the m2emulator module.
     

  4. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #4
    Senior Member MydknyteStyrm's Avatar
    MainSecondary
    Join Date
    Jul 2014
    Posts
    164
    I found this widescreen hack that works so I dont use bezels anymore on Model 2

    https://www.reddit.com/r/emulation/c...hack/?sort=old
     

  5. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #5
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    That's great, thanks!

    I'm still going to keep working at this though because 1, I really like using bezels; and 2, it also seems to affect demul. The weird thing is that I am sure it *used* to work, but I suppose I must be misremembering.

    What seems to be occurring is that for some reason the bezel code is grabbing on to the demulshooter window, which is normally hidden, and expanding that to fill the bezel aperture. If I can figure out why that is happening and prevent it, I think I can sort this.
     

  6. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #6
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Well serendipitously I may have stumbled across a huge pointer as to why this is happening. In my attempts to troubleshoot, I enabled all the logging options including "Show Command Window". When enabled, the game launched correctly!

    So, when using the CLI to launch demulshooter it works, but when using AHKs built in run command, the bezel mistakes it for the game window.
     

  7. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #7
    Super Moderator
    agent47's Avatar
    MainSecondary
    Join Date
    Jan 2016
    Posts
    1,180
    I'm pretty sure someone had a similar issue with the window showing up recently and apparently setting DS to run as admin fixed it.
     

  8. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #8
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    I've already tried that and unfortunately it didn't work.
     

  9. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #9
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    I can totally see what's happening here. Looking through the logs I can see that as I said before, the bezel is grabbing the id of the DemulShooter window as shown in this log entry:
    Code:
    	GetActiveWindowStatus - Title: DemulShooter 7.5 | Class: WindowsForms10.Window.8.app.0.33c0d9d | State: 0 | X: -10000 | Y: -10000 | Width: 599 | Height: 427 | Window HWND: 0x440948 | Process ID: 10172 | Process Path: E:\Emulation\Utilities\DemulShooter\DemulShooter.exe
    Then mistakenly using this ID instead of the Emulator's window:
    Code:
    MoveWindow - Moving window ahk_id 0x440948 to X=321, Y=61, W=1275 H=956
    Note the same ID. I've not yet found where RocketLauncher determines which window is the emulator and therefore which ID to use. Once I've found it I hope it should be a fairly simple fix.
     

  10. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #10
    Senior Member MydknyteStyrm's Avatar
    MainSecondary
    Join Date
    Jul 2014
    Posts
    164
    This is awesome work


    Sent from my iPhone using Tapatalk Pro
     

  11. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #11
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Thanks. I'm still learning AHK, so this is both frustrating and fun oddly. From what I can tell so far RocketLauncher is using the AHK function WinGet to select the currently active window. Unfortunately that happens to be DemulShooter.exe at the time the function is called. WinGet can usually be made to ignore certain windows, but not when being asked to get the active window (a window is either active or it's not). So, I'll either have to delay the function until DemulShooter is no longer the active window (I'm not sure this will ever be the case), or find another way to determine the emulator window.
     

  12. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #12
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Yeah, I think I'm on the right track here.
    I changed the line:
    WinGet emulatorID, ID, A
    to
    WinGet emulatorID, ID, ahk_class MYWIN
    where MYWIN is m2emulator's class; and it filled the bezel correctly. Using this method though will mean keeping a list of all possible emulators window classes, which is obviously not ideal, but at least it works a as a proof of concept. I think the better option is to get the PID of the emulator as soon as it's run and use that to identify it instead. Unfortunately I think that's going to mean modifying a lot of the AHK scripts.
     

  13. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #13
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Would you be willing to help me test something?
    If you can find bezel.ahk in rocketlauncher's lib directory and change the lines:
    WinGet emulatorID, ID, A
    to
    WinGet emulatorID, ID, ahk_exe %executable%
    and tell me if that works for you?
     

  14. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #14
    Senior Member MydknyteStyrm's Avatar
    MainSecondary
    Join Date
    Jul 2014
    Posts
    164
    Quote Originally Posted by Tomkun View Post
    Would you be willing to help me test something?
    If you can find bezel.ahk in rocketlauncher's lib directory and change the lines:
    WinGet emulatorID, ID, A
    to
    WinGet emulatorID, ID, ahk_exe %executable%
    and tell me if that works for you?
    Iím at work so I can do it later today. Ideally you want me to test this with my bezel option on I assume? As I said I stopped using bezels because of this exact issue and lightgun games were a pain to calibrate on my 16:9


    Sent from my iPhone using Tapatalk Pro
     

  15. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #15
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Yes please. The issue only presents itself when bezels and demulshooter are enabled. I think that there may be more to this issue, but I hope this is a good first step. There should be 2 lines to change. You can change them back after testing!
     

  16. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #16
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Unfortunately, as I suspected that solution is really only a band-aid. It breaks bezel support for other emulators and for some reason, DemulShooter is still being activated in the background anyway so it won't work.

    Actually, scrap that - it does work with demulshooter however it does still break other emulators. I'll keep pressing on...
    Last edited by Tomkun ; 06-15-2018 at 08:39 AM.
     

  17. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #17
    Senior Member
    MainSecondary
    Join Date
    Feb 2015
    Posts
    158
    Well, I've exhausted all my avenues so far. I cannot see why the bezel is grabbing the demulshooter window instead of the correct window, or how to fix it without breaking other things. Would anyone more knowledgeable than me care to take a look?
     

  18. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #18
    Member
    MainSecondary
    Join Date
    Oct 2014
    Posts
    74
    Quote Originally Posted by Tomkun View Post
    Well, I've exhausted all my avenues so far. I cannot see why the bezel is grabbing the demulshooter window instead of the correct window, or how to fix it without breaking other things. Would anyone more knowledgeable than me care to take a look?
    Just bumping this as Iíve run into the same thing here.

    Have you tried moving the bezel draw or bezel start calls around in the module? Somehow the bezel hook function needs to be delayed to hook model 2 after it gets drawn on top of demulshooter as that is the active window.

    Iím going to attempt to work on this a bit this weekend. Iím in no way an ahk expert but I have basic knowledge on how to modify modules and do basic scripts....but no guarantees.
     

  19. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #19
    Member
    MainSecondary
    Join Date
    Oct 2014
    Posts
    74
    Yea Iím about to throw the towel in too. When you run DS there is an invisible DS window that takes focus according to autoit WindowSpy. I even ran DS separately first, made sure it was not the active window, then ran RL with DS disabled in options yet somehow RL still hooks it somehow and the same shit happens.

    So somehow RL gives the DS window priority even when it shouldnít. Why? I donít know. Even if DS is launched at the end of the module after it should be done resizing the Model2 window with the bezel code...no change.

    I tried moving around the bezel calls in the module, moving around when DS runs, etc. nothing works. Iíve contacted Argonlefou about this issue and Iíll see if he has any ideas.

    I really wish the devs were still active on this kind of stuff like they used to be years ago because this is probably a simple fix but I spent hours wasting my weekend trying to remedy this and Iím about to throw a hammer through my arcade machine.
     

  20. Collapse Details
    Re: Sega Model 2 + Demulshooter + bezels = foul up 
    #20
    Member
    MainSecondary
    Join Date
    Oct 2014
    Posts
    74
    Fixed, but not uniform to where an official module update can happen.


    Running DS with bezels involves taking the DS code and moving it to the end of the module right after fade in exits. Furthermore, Pause needs haltEmu: and restoreEmu with suspend process and restore process code snippets to stop emulator_multicpu.exe because when DS is activated, Pause gets drawn over it but the emu is still active in the background. Rlauncherís built in emulator suspending does not work.

    With these changes bezels and DS work flawlessly with Model 2. However fullscreen is broken with these changes to the module. Since support here is dead I am not wasting anymore time attempting to get fullscreen to work now as well; my arcade machine uses bezels and not Fullscreen.
     

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •