ElysianVMU Pre-Alpha Release Testing

General discussion pertaining to Elysian Shadows, ESTk, ESGamma, and the Adventures in Game Development series.

Moderators: News Mods, Elysian Shadows Team

Re: ElysianVMU Pre-Alpha Release Testing

Postby GRENADIAC111 on Sat Jun 04, 2016 6:28 pm

Falco Girgis wrote:Fuck, good point. I totally forgot that Japanese Roms would be encoded with Japanese characters like that... I'M REALLY shocked it looks right in the debug log and not on the status bar... I would have expected that to be the other way around...


If you open the log as ANSI the text it is corrupted but if you open the log as UTF-8 the Japanese shows up fine. Notepad++ also shows 'DLE', 'SUB', 'STX', and 'DC2' characters in the creator application field for some of the Japanese ROMs even when UTF-8 is used.

Falco Girgis wrote:Well holy shit! Can you post what it was detected as in the debug log? I want to make the controller assignment user-configurable from a dialog window, but it would also be nice to have some preset configurations for certain controllers.


Sure thing:

Code: Select all
Initializing ElysianVMU v 0.0.0.1a
   Initializing libGyro_x86_64 [WINDOWS] v1.5.9
      THIS IS AN OFFICIAL BUILD!
         Git branch name     :                            origin/master
         Git commit ID       : c54271f65e138acdc80e00d5c8b9e4cd5a8b55df
         Build number        :                                       37
         Build node          :                           WindozeVirtual
         Build timestamp     :                     Jun  3 2016 18:25:12
   Initializing OpenAL Subsystem
   Initializing SDL_GAMECONTROLLER with 4 ports.
   Creating VMU Device.
   Creating audio buffer.
Loading User Settings [C:/Users/Acer/ElysianVMU/UserSettings.ini].
SDL Joystick Attached! [Port: 0]
   Device Type:        :                             SDL_JOYSTICK
   Name                :                   2Axes 11Keys Game  Pad
   GUID                :         bd1215d0000000000000504944564944
   Number of Axes      :                                        2
   Number of Buttons   :                                       11
   Number of Hats      :                                        0
   Number of Balls     :                                        0
   Haptic Support      :                                    FALSE
Saving User Settings [C:/Users/Acer/ElysianVMU/UserSettings.ini].
Uninitializing ElysianVMU
   Destroying audio buffer.
   Destroying VMU Device.
   Uninitializing SDL_GAMECONTROLLER
   Uninitializing OpenAL!


Falco Girgis wrote:Let me ask you guys this... a bug I kind of know about in the libGyro x86 controller subsystem... Dynamically attaching a controller works fine, then dynamically removing it works fine (shows up in the status bar and all that). If you reattach after removing it, it doesn't come back, does it? I don't think it does here on my Mac, just wondering if this is effecting all platforms/builds.


Something like that is happening to me as well on Windows 7 64-bit SP1. The controller works fine being dynamically connected and then removed the first time; however,dynamically attaching a second time does give me a notice in the status that it was connected and it looks like the event was logged but none of the buttons work at this point. If I disconnect the controller at this point I get no notice that the controller was disconnected and no log entry. No further log entries or notices are given on any subsequent connections/disconnections of the controller and the emulator still does not register its buttons. The log below shows this, I connected the controller dynamically, unplugged it, plugged it back in, unplugged it again, and plugged it back in but only the first 3 events seem to have been logged:

Code: Select all
Initializing ElysianVMU v 0.0.0.1a
   Initializing libGyro_x86_64 [WINDOWS] v1.5.9
      THIS IS AN OFFICIAL BUILD!
         Git branch name     :                            origin/master
         Git commit ID       : c54271f65e138acdc80e00d5c8b9e4cd5a8b55df
         Build number        :                                       37
         Build node          :                           WindozeVirtual
         Build timestamp     :                     Jun  3 2016 18:25:12
   Initializing OpenAL Subsystem
   Initializing SDL_GAMECONTROLLER with 4 ports.
   Creating VMU Device.
   Creating audio buffer.
Loading User Settings [C:/Users/Acer/ElysianVMU/UserSettings.ini].
SDL Joystick Attached! [Port: 0]
   Device Type:        :                             SDL_JOYSTICK
   Name                :                   2Axes 11Keys Game  Pad
   GUID                :         bd1215d0000000000000504944564944
   Number of Axes      :                                        2
   Number of Buttons   :                                       11
   Number of Hats      :                                        0
   Number of Balls     :                                        0
   Haptic Support      :                                    FALSE
SDL Joystick Disconnected! [Port: 0]
SDL Joystick Attached! [Port: 0]
   Device Type:        :                             SDL_JOYSTICK
   Name                :                   2Axes 11Keys Game  Pad
   GUID                :         bd1215d0000000000000504944564944
   Number of Axes      :                                        2
   Number of Buttons   :                                       11
   Number of Hats      :                                        0
   Number of Balls     :                                        0
   Haptic Support      :                                    FALSE
Saving User Settings [C:/Users/Acer/ElysianVMU/UserSettings.ini].
Uninitializing ElysianVMU
   Destroying audio buffer.
   Destroying VMU Device.
   Uninitializing SDL_GAMECONTROLLER
   Uninitializing OpenAL!


Hope this helps.
GRENADIAC111
ES Beta Backer
ES Beta Backer
 
Posts: 14
Joined: Wed Jul 21, 2010 3:40 am

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Sat Jun 04, 2016 11:45 pm

Thanks so much for all the information! That helps a shitload.

Thanks to everyone else too, we're going to have this bitch at 100% compatibility in no time. :mrgreen:
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby K-Bal on Sun Jun 05, 2016 2:46 pm

So cool to see you releasing this bitch! A very neat project that can stand for itself and still contribute to ES :)

Unfortunately, I have no Dreamcast background so I don't think I have anything worthwhile to contribute technically at the moment. Just wanted to show my appreciation!
User avatar
K-Bal
ES Beta Backer
ES Beta Backer
 
Posts: 719
Joined: Sun Mar 15, 2009 4:21 pm
Location: Germany, Aachen

Re: ElysianVMU Pre-Alpha Release Testing

Postby dandymcgee on Sun Jun 05, 2016 5:05 pm

K-Bal wrote:So cool to see you releasing this bitch! A very neat project that can stand for itself and still contribute to ES :)

Unfortunately, I have no Dreamcast background so I don't think I have anything worthwhile to contribute technically at the moment. Just wanted to show my appreciation!

:+1: +1
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches! :twisted:
User avatar
dandymcgee
ES Beta Backer
ES Beta Backer
 
Posts: 4911
Joined: Tue Apr 29, 2008 4:24 pm
Location: New Hampshire

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Sun Jun 05, 2016 6:28 pm

Thanks guys, I really appreciate it. I was kind of down for awhile due to being late and all of the hate on Reddit/YouTube, and it was always a childhood dream of mine to make an emulator... I used to worship the guys who did that kind of stuff as hardware gods... I had this project in the back of my mind for awhile, but I never got around to it (it was actually a stretch goal for the Kickstarter).

One day I just decided fuck it, and I went for it. It's something that will definitely need to happen for ES eventually, as we don't want to put a bunch of R&D resources into making a VMU game only a small group of people can enjoy, and I have really tried to create it as something that can benefit the entire community by making the VMU more accessible to developers and cross-platform games.

It was also a really nice temporary escape from me from cutting edge C++14/17. One minute I was writing templates to generate templates to generate code, the next I dropped down to pure vanilla C at a low level to do this... It was just very enjoyable for me, and I'm hoping people will appreciate having a little release from the team to hold them over until the game itself is ready for beta testing. :mrgreen:
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Mon Jun 06, 2016 1:24 pm

Has anybody seen anything weird with remembering the recent ROMs? One time, randomly, while I was testing awhile back, it seemed to have duplicated everything as lower and uppercase or something crazy, and I've never been able to reproduce... I THINK it may have been on Ubuntu.
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Tue Jun 07, 2016 9:49 am

Okay, mostly back on Toolkit duty now, since I don't really see any showstoppers before I release this bitch to the masses, but I did a few things.

Fixed a very obscure but SUBSTANTIAL bug where one of the branch instruction's behavior was undefined if the last bit happened to be a 1... It's unlikely most of you just happened to execute any code exercising this bug, but if you did it, would have probably resulted in an assertion failure and/or crash.

The next big step is in BIOS emulation. You'll notice I'm only emulating "GAME" mode, while the VMU had a filesystem manager and clock mode as well. Unfortunately the BIOS is extremely complex and seems to rely on two totally undocumented instructions and several undocumented special function registers intentionally obfuscated and hidden by SEGA. They wanted you to use their API in the BIOS rather than accessing hardware directly, which is understandable, as that would allow them to release new VMU hardware and not break existing app-level code... Only problem is now it's going to be hell figuring out exactly how the fuck that stuff works.

I have implemented the two hidden opcodes as I THINK they work. I highly doubt this will affect emulation compatibility for mini games, but it's possible someone did something crazy.
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Mon Jun 13, 2016 10:00 am

Anybody have a Steam controller they can test with? Someone just gave me one, but it doesn't work unless you install Steam? Then it'll magically work for outside applications too? My Mac is detecting it as a Keyboard right now... :shock:
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby dandymcgee on Mon Jun 13, 2016 9:24 pm

Falco Girgis wrote:Anybody have a Steam controller they can test with? Someone just gave me one, but it doesn't work unless you install Steam? Then it'll magically work for outside applications too? My Mac is detecting it as a Keyboard right now... :shock:

So.. install Steam? :roll:
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches! :twisted:
User avatar
dandymcgee
ES Beta Backer
ES Beta Backer
 
Posts: 4911
Joined: Tue Apr 29, 2008 4:24 pm
Location: New Hampshire

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Tue Jun 14, 2016 10:18 am

dandymcgee wrote:
Falco Girgis wrote:Anybody have a Steam controller they can test with? Someone just gave me one, but it doesn't work unless you install Steam? Then it'll magically work for outside applications too? My Mac is detecting it as a Keyboard right now... :shock:

So.. install Steam? :roll:
Uh, few things:

1) I don't have 10 GB on my solid state work computer to blow just for a controller driver.
2) I don't think a 10 GB install of unrelated software should be a prerequisite for wanting to use your controller with a VMU emulator.
3) I don't even know if it is the case that running Steam in the background will magically allow outside processes to access the controller as a standard joystick/input device to begin with, and it would be nice to have confirmation before I even consider proceeding with a 10 GB install.

:roll:
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby GRENADIAC111 on Wed Jun 15, 2016 12:55 pm

I have one I can test it with. I have never played a non-Steam game with it but i'll let you know how it goes.
GRENADIAC111
ES Beta Backer
ES Beta Backer
 
Posts: 14
Joined: Wed Jul 21, 2010 3:40 am

Re: ElysianVMU Pre-Alpha Release Testing

Postby GRENADIAC111 on Wed Jun 15, 2016 8:26 pm

Falco Girgis wrote:Anybody have a Steam controller they can test with? Someone just gave me one, but it doesn't work unless you install Steam? Then it'll magically work for outside applications too? My Mac is detecting it as a Keyboard right now... :shock:


I can confirm this. It's a little more contrived than even that though. You must install Steam, add ElysianVMU to your game library as a Non-Steam game, run the game from Steam (does not have to be in Big Picture Mode), and finally change the desktop behavior of the controller to "Gamepad" or any other binding that emulates a 360 controller. If you do all of that the Steam Controller works perfectly with ElysianVMU just as the Xbox 360 controller does.

The controller normally emulates a keyboard and mouse, not a controller as most would expect, so no games recognize it as such. The Steam Client apparently sends something to the controller instructing it to change modes since the controller will always emulate the mouse and keyboard even with Steam completely closed (with Steam closed the controller emualtes a keyboard and mouse even if you set its Desktop Mode to something else) but will not be switch to your custom bindings until Steam opens again.

Normally each game can be assigned a unique binding from within Steam so that you do not have to change your Desktop Mode but for some reason this unique binding does not work with ElysianVMU (either because it is a Non-Steam game or because Steam considers it a desktop program, the latter seems to be more likely given that other Non-Steam games seem to work with unique bindings fine). Even with the desktop behavior of the controller set to "Gamepad" ElysianVMU does not detect it or log a controller attached event unless it is opened from within Steam. Here is the snippet of the Debug Log which recorded the Steam Controller being attached with the "Gamepad" binding. I tried other bindings but ElysianVMU always reads the same GUID and etc.

Code: Select all
SDL Joystick Attached! [Port: 0]
   X - Haptic Rumble Init Failed: Haptic: Invalid haptic device identifier
   Device Type:        :                       SDL_GAMECONTROLLER
   Name                :                     XInput Controller #1
   GUID                :         00000000000000000000000000000000
   Number of Axes      :                                        6
   Number of Buttons   :                                       15
   Number of Hats      :                                        0
   Number of Balls     :                                        0
   Haptic Support      :                                    FALSE


Just a side note, the controller gives Haptic feedback per its keybinding despite the fact that ElysianVMU says it is not supported, not exactly surprising but I though I would mention it nonetheless.

edit: This may or may not alter the way ElysianVMU handles the Steam Controller but I had to enable Beta Builds of Steam to get the controller connected to my machine.
GRENADIAC111
ES Beta Backer
ES Beta Backer
 
Posts: 14
Joined: Wed Jul 21, 2010 3:40 am

Re: ElysianVMU Pre-Alpha Release Testing

Postby dandymcgee on Sat Jun 18, 2016 3:19 pm

Falco Girgis wrote:
dandymcgee wrote:So.. install Steam? :roll:
Uh, few things:

1) I don't have 10 GB on my solid state work computer to blow just for a controller driver.
2) I don't think a 10 GB install of unrelated software should be a prerequisite for wanting to use your controller with a VMU emulator.

What? The Steam client is ~400 MB. All of the drive space is taken up by your games. If you don't install any games, the client itself is rather small.

Falco Girgis wrote:3) I don't even know if it is the case that running Steam in the background will magically allow outside processes to access the controller as a standard joystick/input device to begin with, and it would be nice to have confirmation before I even consider proceeding with a 10 GB install.

:roll:

Fair enough. If I had a stream controller I'd let you know. :P
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches! :twisted:
User avatar
dandymcgee
ES Beta Backer
ES Beta Backer
 
Posts: 4911
Joined: Tue Apr 29, 2008 4:24 pm
Location: New Hampshire

Re: ElysianVMU Pre-Alpha Release Testing

Postby Falco Girgis on Wed Jun 22, 2016 10:58 am

GRENADIAC111 wrote:
Falco Girgis wrote:Anybody have a Steam controller they can test with? Someone just gave me one, but it doesn't work unless you install Steam? Then it'll magically work for outside applications too? My Mac is detecting it as a Keyboard right now... :shock:


I can confirm this. It's a little more contrived than even that though. You must install Steam, add ElysianVMU to your game library as a Non-Steam game, run the game from Steam (does not have to be in Big Picture Mode), and finally change the desktop behavior of the controller to "Gamepad" or any other binding that emulates a 360 controller. If you do all of that the Steam Controller works perfectly with ElysianVMU just as the Xbox 360 controller does.

The controller normally emulates a keyboard and mouse, not a controller as most would expect, so no games recognize it as such. The Steam Client apparently sends something to the controller instructing it to change modes since the controller will always emulate the mouse and keyboard even with Steam completely closed (with Steam closed the controller emualtes a keyboard and mouse even if you set its Desktop Mode to something else) but will not be switch to your custom bindings until Steam opens again.

Normally each game can be assigned a unique binding from within Steam so that you do not have to change your Desktop Mode but for some reason this unique binding does not work with ElysianVMU (either because it is a Non-Steam game or because Steam considers it a desktop program, the latter seems to be more likely given that other Non-Steam games seem to work with unique bindings fine). Even with the desktop behavior of the controller set to "Gamepad" ElysianVMU does not detect it or log a controller attached event unless it is opened from within Steam. Here is the snippet of the Debug Log which recorded the Steam Controller being attached with the "Gamepad" binding. I tried other bindings but ElysianVMU always reads the same GUID and etc.

Code: Select all
SDL Joystick Attached! [Port: 0]
   X - Haptic Rumble Init Failed: Haptic: Invalid haptic device identifier
   Device Type:        :                       SDL_GAMECONTROLLER
   Name                :                     XInput Controller #1
   GUID                :         00000000000000000000000000000000
   Number of Axes      :                                        6
   Number of Buttons   :                                       15
   Number of Hats      :                                        0
   Number of Balls     :                                        0
   Haptic Support      :                                    FALSE


Just a side note, the controller gives Haptic feedback per its keybinding despite the fact that ElysianVMU says it is not supported, not exactly surprising but I though I would mention it nonetheless.

edit: This may or may not alter the way ElysianVMU handles the Steam Controller but I had to enable Beta Builds of Steam to get the controller connected to my machine.
Holy shit, that was insanely useful. Thanks so much for taking the time to do all this!

Honestly, I'm not sure how the fuck the Haptic support is detected. That's an SDL-specific thing, and I am also not seeing PS3 controllers and a bunch of other controllers with Haptic support being detected correctly... I need to look into whether or not there's anything I can do for these other devices, because that's not really going to be acceptable for ES upon release.
"So what happens if the Elysian Shadows Kickstarter fails?"
Image
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
 
Posts: 10693
Joined: Thu May 20, 2004 3:04 pm
Location: Studio Vorbis, AL

Re: ElysianVMU Pre-Alpha Release Testing

Postby eatcomics on Sat Jul 02, 2016 3:15 pm

Alright, how are you guys running it on linux? I'm running debian and I first had to get the SDL2 dev package, then I had to get the Qt package, but now I get:
Code: Select all
./ElysianVMU: symbol lookup error: ./ElysianVMU: undefined symbol: _ZN6QDebug9putStringEPK5QCharm


Which I assume is because something its linking to is the wrong library file.
Image
User avatar
eatcomics
ES Beta Backer
ES Beta Backer
 
Posts: 2664
Joined: Sat Mar 08, 2008 9:52 pm
Location: Illinois

PreviousNext

Return to Elysian Shadows Discussion

Who is online

Users browsing this forum: Bing [Bot] and 2 guests

cron