Sega model 3 #segamodel3
-
@chaoseffect said in Sega model 3 #segamodel3:
@dirtbagxon Ah, thank you so much! Once again, I and everyone else using Sinden guns really appreciate what you're doing! I do indeed get that different calibration menu when switching to analog_gun.
There is a little issue with how the gun reacts to the edges of the screen in either "gun" or "analog_gun" mode with Lost World. My best way of explaining it is that the game thinks the play area is smaller than it is. I get, say, 3/4 of the way across the screen horizontally and my cursor is already touching the boundary of the game area. If I move closer to the actual edge, the cursor goes out of bounds.
The emulator doesn't seem to like it when you try to press mouse buttons while the cursor is outside of the play area, so calibration is proving difficult. I temporarily remapped the trigger to a keyboard key, but it still seems unhappy that the cursor is sitting out of bounds.
Hopefully this is just a setting in the emulator and doesn't need more work, but I'm curious if the cursor can be trapped in the actual game/border area.
I'm kinda at a disadvantage here, as I don't actually own a Sinden.
I assume you are part of the Discord channel as you have the binary, I can only refer you to those guys at the moment.
Most of the Input systems in this emulator are coded and designed to work with "Windows Direct/Raw Input ".
Linux Input support is restricted to SDL only, including support for only one mouse or lightgun.
Option: -input-system=<s> Description: Sets the input system. This is only available on Windows, where the default is 'dinput' (DirectInput). SDL is used for all other platforms. Valid choices for <s> are: dinput DirectInput. xinput XInput rawinput Raw Input. sdl SDL. See the section on input systems for more details
// Create input system if (selectedInputSystem == "sdl") InputSystem = new CSDLInputSystem(s_runtime_config); #ifdef SUPERMODEL_WIN32 else if (selectedInputSystem == "dinput") InputSystem = new CDirectInputSystem(s_runtime_config, s_window, false, false); else if (selectedInputSystem == "xinput") InputSystem = new CDirectInputSystem(s_runtime_config, s_window, false, true); else if (selectedInputSystem == "rawinput") InputSystem = new CDirectInputSystem(s_runtime_config, s_window, true, false); #endif // SUPERMODEL_WIN32
int CSDLInputSystem::GetNumMice() { // Return ANY_MOUSE as SDL 1.2 cannot handle multiple mice return ANY_MOUSE; }
So SDL INPUT implementation is based around old SDL1, although the emulator is now using SDL2. So this needs updating.
I am not really going to tackle modifying or adding support to the emulator itself, there is an active team on SourceForge working on this. You should communicate with them and relay you are talking about the Linux SDL input system for these issues. They may accept feature requests....
The Sinden border I am happy to add to whatever state the underlying emulator is currently in (currently we have trunk HEAD from SVN ), but this is still "in testing" at the moment. So lots of experimentation still. But please report back to the Discord channel on issues. I'm sure it will be documented on what can/can't currently be achieved....
-
@dirtbagxon Got it. 😃 I will seek out the emulator's development team for feature requests like that.
-
I am told all the "Gun" games are perfectly playable, so it may be just a matter of getting the "adjusted"
Games.xml
andSupermodel.ini
when they have a good working layout to pass on.Have fun 😃
-
For those interested, I have created a repo for the Sinden patches thus far here:
https://github.com/DirtBagXon/model3emu-code-sinden
Compiled binaries of the latest release exist for armhf and aarch64.
These seem to work fairly well in RetroPie, I used some of the patches in this thread for the arm branch.
There is a Windows binary there too, but due to the multitude of OpenGL driver implementations, not certain this patch will be universal...
If anyone can get improvements on this, please consider submitting pull requests. I'm still new to OpenGL implementations......
-
Here you can find installation files, installation instructions and a video walkthrough to get the Sinden lightgun and borders working with Star Wars Trilogy, Lost World, Ocean Hunter and LA Machineguns using @DirtBagXon's fork of supermodel.
-
Thanks for the news.
Is there any working Image file with all configurated ?
if someone can upload it .
it should amazing cause my english is not really good.Best regards
Stef from Paris -
Hello every one,
First of all, thanks to @mechafatnick @Folly and every one who got involved in this project, this is awesome work !
I reply to this post because I followed every procedure given, but I still can't figure out how to launch a game from Retropie.
I have a RaspBerry Pi 4b 4gb and I installed Twister Os and launch Retropie from this Os. Everything went fine with the installation and the implementation in RetroPie. But when I try to launch a game from RetroPie, I got an error with xinit (runcommand.log) :
Parameters:
Executing: xinit /dev/shm/retropie_xinitrc -- vt1 -keeptty_XSERVTranSocketUNIXCreateListener: ...Sokcet CreateListerner() Failed
_XSERVTransMakeALLCOTSServerListeners: server already running
(EE)
Fatal server error:
(EE) Cannot Establish any listening sockets - Make sure an X server isn't already running (EE)blabla cabout consulting X.Org documentation..
XIO: Fatal IO error 11 (Resource Temporaliy unavailable) on X server ":0" after 7 requests (7 known processed) with 0 events remaining.
The thing is it launch well when I use the terminal command in Twister OS : ./supermodel %ROM%
and emulation is starting correctly. The error only occur when I try o launch it from RetroPie..
Have anyone the same issue and/or help me with this problem ?Thanks.
-
Did you use my module script ?
Good to know that it still works, I haven't used/tried it in a very long time.Basically, you can neglect the error you get.
This is because supermodel is has to be run in X.
Therefor XINIT is used because RetroPie runs by default/originally on a lite linux OS without Desktop/X environment.
You use "Twister OS" so you run RetroPie from the Desktop so X is already active.
That is why it works although you get the error because X is already active.
If you want to remove the error then just removeXINIT:
from the runcommands in the emulators.cfg for supermodel3. -
@Folly Thanks for the quick answer and the complete details.
I tried your script but it didn't work so I followed @mechafatnick tutorial and it finally installed and worked, at least from the terminal.
But the issue comes from RetroPie, I always come back to the game selection. Emulation never start, just basic black screen with option selection that appears before each game in Retropie, then comes back to RetroPie..
I tried your suggestion and now I got this error :Parameters:
Executing: SDL_VIDEO_KMSDRM_CRTCID=87 SDL_VIDEO_KMSDRM_MODEID=30 /opt/retropie/emulators/supermodel/bin/supermodel "/home/pi/RetroPie/roms....."
Error: OpenGL initialization failed: Unknown errorI already installed libsdl2-net-dev as suggested earlier with this issue in the discussion, and did it again but it didn't change anything.
I don't get why I can launch it from the terminal desktop, but can't in RetroPie. Also, all other emulator are working fine so this must be specific to SuperModel I guess..Any clue ?
-
Not a clue at the moment, so not sure if I can be of any help.
Do you start emulationstation from the terminal in Desktop mode or are you leaving the Desktop and run emulationstation from the terminal in "lite mode" ?
What is the runcommand in your emulators.cfg ? -
@Folly Sorry for the delay, I got a hard week. Actually, I start emulationstation from the desktop of Twister OS, and try to launch the emulator from EmulationStation/Retropie. That case doens't work. But if I only launch the model3 emulator from a terminal I open in Desktop mode, it runs ok. I don't have the command line for now because I'm reinstalling Twister OS, but I followed the instructions you talked about here. I ended up just putting the line supermodel %roms%, which is the one I use to launch from a terminal and work, but doesn't work with EmulationStation. At the end, everything is fine in desktop mode, but it doesn't work when I launch from EmulationStation..
That's what I find weird..Thanks for the help :)
-
I know that the program can be run directly, however your have to be in the correct folder in order to run the program properly as it searches for configs in the same folder.
So when you are in the terminal and you usedcd
to go to the supermodel folder and the ran supermodel it would work.
But running it from emulationstation the start folder is totally different so even if you run supermodel with the appropriate path supermodel will not find the configs and will not properly start.
Therefor my script uses pushd so it knows the correct folder and so it can find the other needed files.
You can take at the lines for inspiration :
https://github.com/FollyMaddy/RetroPie-Share/blob/main/00-scriptmodules-00/emulators/supermodel-mechafatnick.sh#L77-L81 -
Ok, I see. Thanks for the tip. I'll try it this weekend and will tell you if it works.
Thanks :) -
I'm reopening this post because I have a problem with the controller configuration. I installed the package: https://github.com/Mechafatnick/SuperModelPi/archive/refs/heads/master.zip but whatever I do with the Supermodel.ini, the configuration of the controller keys does not change, while if I modify the keys of the keyboard, yes. I used jstest to test my controller buttons but every change is in vain.
I'm using Retropie 4.8.6 on a 4GB Raspberry Pi 5. -
@shift said in Sega model 3 #segamodel3:
I'm reopening this post because I have a problem with the controller configuration. I installed the package: https://github.com/Mechafatnick/SuperModelPi/archive/refs/heads/master.zip but whatever I do with the Supermodel.ini, the configuration of the controller keys does not change, while if I modify the keys of the keyboard, yes. I used jstest to test my controller buttons but every change is in vain.
I'm using Retropie 4.8.6 on a 4GB Raspberry Pi 5.There may be more than one ini.
Be sure you're modifying the one that matches the symlink found at /opt/retropie/emulators/supermodel-mechafatnick/Config/Supermodel.ini <--symlink
By default, it should map to this location:
/home/pi/RetroPie/roms/supermodel/model3emu/mechafatnick/Supermodel.iniAny other .ini will be ignored.
-
@roslof Thank you, I solved it, unfortunately I didn't realize that +1 must be added to the jstest, I had all the configurations wrong
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.