RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Sega model 3 #segamodel3

    Scheduled Pinned Locked Moved Ideas and Development
    sega model 3supermodel
    304 Posts 23 Posters 95.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      Folly
      last edited by Folly

      @mechafatnick @DTEAM

      It will take a bit longer for me to make the module-script better.
      There is an issue with moving the NVRAM and Saves directory.
      If these directories already exists in the rom directory the source files are not moved and then a link is nested inside the directories.
      I will have to find a good solution for that.

      To be continued.....

      F 1 Reply Last reply Reply Quote 0
      • F
        Folly @Folly
        last edited by Folly

        @mechafatnick @DTEAM

        I think I have fixed the issues.

        I have chosen to update all the files from the source.
        So we can see how the fixes in the source evolve.

        The Supermodel.ini will be backed-up to Supermodel.ini.old when installing or updating.

        I removed the old runcommand-lines and added 3 different resolution lines without extra options as the are now in the ini.

        DTEAMD 1 Reply Last reply Reply Quote 1
        • DTEAMD
          DTEAM @Folly
          last edited by DTEAM

          @folly
          Should I copy paste the new script from Github or I can update it from source in the blue menu in Retropie (I already installed your first version of the script)

          New edit: I copied pasted it from Github. What's the difference between supermodel-mechafatnick.sh and supermodel-svn.sh?

          Your new supermodel-mechafatnick.sh works well!!!

          F 1 Reply Last reply Reply Quote 0
          • F
            Folly @DTEAM
            last edited by Folly

            @dteam

            Great !

            No problems with the menu anymore ?

            The svn version is a version that is created from the pure source from sourceforge.
            It patches some files on the fly so it will compile on rpi.
            I created it just before we got the github link from @mechafatnick .

            It's a bit obsolete but for now, I keep it in there, you never know.

            DTEAMD 1 Reply Last reply Reply Quote 1
            • DTEAMD
              DTEAM @Folly
              last edited by DTEAM

              @folly @mechafatnick
              No problem with the menu.

              Just one question. When you are playing a racing game and you are in the options menu at the start. Do you have a problem with the sensitivity or the auto-center when choosing your car or your race track? In the game itself it's good but in the menu it's different. Is there an auto-centering option "enabled" on it?

              F M 2 Replies Last reply Reply Quote 0
              • F
                Folly @DTEAM
                last edited by

                @dteam

                What game are you referring too ?

                DTEAMD 1 Reply Last reply Reply Quote 0
                • DTEAMD
                  DTEAM @Folly
                  last edited by DTEAM

                  @folly
                  Scud

                  1 Reply Last reply Reply Quote 0
                  • M
                    mechafatnick @DTEAM
                    last edited by mechafatnick

                    @Folly Great work! Well done! that's tremendous stuff. Now we can bring Model 3 emulation to the masses.

                    @dteam
                    Picking stuff is a bit tricky because its intended for the full rotation of a sterring wheel :) you can try messing with your deadzone/saturation if you want. That might help:
                    add to the ini and play with the numbers (saturation reduced the far end of motion of your stick)
                    InputJoy[controller number]XDeadzone
                    InputJoy[controller number]YDeadzone
                    InputJoy[controller number]XSaturation
                    InputJoy[controller number]YSaturation

                    All controls have to go into the GLOBAL section. Some games let you configure the controls from the test menu too.

                    DTEAMD 1 Reply Last reply Reply Quote 1
                    • DTEAMD
                      DTEAM @mechafatnick
                      last edited by DTEAM

                      @mechafatnick
                      What is the range for deadzone or sensitivity (1-100?)

                      Some games let you configure the controls from the test menu too.

                      I'll try that also

                      That might help:

                      add to the ini and play with the numbers (saturation reduced the far end of motion of your stick)

                      InputJoy[controller number]XDeadzone

                      InputJoy[controller number]YDeadzone

                      InputJoy[controller number]XSaturation

                      InputJoy[controller number]YSaturation

                      This is a great idea

                      Now we can bring Model 3 emulation to the masses.

                      They create 3 new logos for New Comic Book Theme Thanks to @MrSeven The first one seems to be the chosen one alt text
                      alt text
                      alt text

                      NEW EDIT:I found this for Keyboard and mouse here . For Joystick they use none. I suppose I have to replace NONE by your lines? I'll try It and give you news about the performance of those settings. thanks again

                      Input System Settings

                      Input System: DirectInput

                      Keyboards:
                      System Keyboard
                      Mice:
                      System Mouse
                      Joysticks:
                      None

                      Common Keyboard Settings:
                      Sensitivity = 25 %
                      Decay Speed = 50 %
                      Common Mouse Settings:
                      X-Axis Dead Zone = 0 %
                      Y-Axis Dead Zone = 0 %
                      Z-Axis Dead Zone = 0 %

                      F 1 Reply Last reply Reply Quote 1
                      • F
                        Folly @DTEAM
                        last edited by

                        @dteam

                        You mean, for pasting inside the Supermodel.ini then it should be something like this :

                        ; Common Keyboard Settings:
                        Sensitivity = 25 %
                        Decay Speed = 50 %
                        ; Common Mouse Settings:
                        X-Axis Dead Zone = 0 %
                        Y-Axis Dead Zone = 0 %
                        Z-Axis Dead Zone = 0 %
                        
                        DTEAMD 1 Reply Last reply Reply Quote 0
                        • DTEAMD
                          DTEAM @Folly
                          last edited by DTEAM

                          @folly
                          honestly I don't know yet. I haven't tested it yet.
                          New edit: maybe we will have answers in Supermodel.log like for screen parameters. I don’t have my Pi for the next 4 days. I’ll test it monday.

                          F 1 Reply Last reply Reply Quote 0
                          • F
                            Folly @DTEAM
                            last edited by Folly

                            @dteam said in Sega model 3 #segamodel3:

                            @folly
                            honestly I don't know yet. I haven't tested it yet.
                            New edit: maybe we will have answers in Supermodel.log like for screen parameters. I don’t have my Pi for the next 4 days. I’ll test it monday.

                            Ok then we wait a while.

                            I did put it in the Supermodel.ini.
                            The log only complained about the comments that have no ";".
                            So that is why I added them.

                            I tried a bit, the setting seems to work a bit.
                            Steering seems to be a bit less sensitive, which is good !

                            Edit :
                            Choosing the menu items is still a problem.
                            I think this is due to the fact that the keyboard is basically emulating an analog steering wheel in a digital way.
                            I will try some stuff if I can.

                            M 1 Reply Last reply Reply Quote 1
                            • M
                              mechafatnick @Folly
                              last edited by

                              @folly Yeah, My defult pad is the retrobit Saturn one, and i was never able to get analogie-digital to work very well.

                              I have a knock-off PS3 pad and the analogue controls work great. I made it all the way through the Lost World

                              F 1 Reply Last reply Reply Quote 1
                              • F
                                Folly @mechafatnick
                                last edited by Folly

                                @mechafatnick said in Sega model 3 #segamodel3:

                                @folly Yeah, My defult pad is the retrobit Saturn one, and i was never able to get analogie-digital to work very well.

                                Digital always goes to "full left" 00h, "middle" 80h or "full right" FFh (see input test).
                                No values in between, that is needed to select the proper menu.
                                I don't see much difference in the test menu if I set Sensitivity and Decay Speed.

                                The analog part works also with my "O BIGBEN Joystick".

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  mechafatnick @Folly
                                  last edited by mechafatnick

                                  @folly if you look in the ini you have the axis to setting to set the analogue mapping and then joystick up/down/left/right which is supposed to be for controlling things digitally. I've never got it to work properly though.

                                  (not that i've put a massive amount of effort in. Turns out the sking game us my favourite!)

                                  DTEAMD 1 Reply Last reply Reply Quote 0
                                  • DTEAMD
                                    DTEAM @mechafatnick
                                    last edited by DTEAM

                                    @mechafatnick said in Sega model 3 #segamodel3:

                                    I've never got it to work properly though.

                                    It works well if you set InputAnalogJoyX and InputAnalogJoyY to NONE.

                                    InputAnalogJoyLeft = JOY1_ZAXIS_POS
                                    InputAnalogJoyRight = JOY1_ZAXIS_NEG
                                    InputAnalogJoyUp = JOY1_RXAXIS_POS
                                    InputAnalogJoyDown = JOY1_RXAXIS_NEG
                                    InputAnalogJoyX = NONE
                                    InputAnalogJoyY = NONE
                                    

                                    Z or RX axis could be different. depends on the gamepad used

                                    M 1 Reply Last reply Reply Quote 1
                                    • M
                                      mechafatnick @DTEAM
                                      last edited by

                                      @dteam Yeah you have to be a little careful as some of the controls sound generic but are actually for specific games:

                                      the master ini file has comments for which control goes with each game - it's a shame it doesn't add them into the one used for the emulator:

                                      ; 4-way digital joysticks
                                      InputJoyUp = "KEY_UP,JOY1_UP"
                                      InputJoyDown = "KEY_DOWN,JOY1_DOWN"
                                      InputJoyLeft = "KEY_LEFT,JOY1_LEFT"
                                      InputJoyRight = "KEY_RIGHT,JOY1_RIGHT"
                                      InputJoyUp2 = "JOY2_UP"
                                      InputJoyDown2 = "JOY2_DOWN"
                                      InputJoyLeft2 = "JOY2_LEFT"
                                      InputJoyRight2 = "JOY2_RIGHT"
                                      
                                      ; Fighting game buttons
                                      InputPunch = "KEY_A,JOY1_BUTTON1"
                                      InputKick = "KEY_S,JOY1_BUTTON2"
                                      InputGuard = "KEY_D,JOY1_BUTTON3"
                                      InputEscape = "KEY_F,JOY1_BUTTON4"
                                      InputPunch2 = "JOY2_BUTTON1"
                                      InputKick2 = "JOY2_BUTTON2"
                                      InputGuard2 = "JOY2_BUTTON3"
                                      InputEscape2 = "JOY2_BUTTON4"
                                      
                                      ; Spikeout buttons
                                      InputShift = "KEY_A,JOY1_BUTTON1"
                                      InputBeat = "KEY_S,JOY1_BUTTON2"
                                      InputCharge = "KEY_D,JOY1_BUTTON3"
                                      InputJump = "KEY_F,JOY1_BUTTON4"
                                      
                                      ; Virtua Striker buttons
                                      InputShortPass = "KEY_A,JOY1_BUTTON1"
                                      InputLongPass = "KEY_S,JOY1_BUTTON2"
                                      InputShoot = "KEY_D,JOY1_BUTTON3"
                                      InputShortPass2 = "JOY2_BUTTON1"
                                      InputLongPass2 = "JOY2_BUTTON2"
                                      InputShoot2 = "JOY2_BUTTON3"
                                      
                                      ; Steering wheel
                                      InputSteeringLeft = "KEY_LEFT"      ; digital, turn wheel left
                                      InputSteeringRight = "KEY_RIGHT"    ; digital, turn wheel right
                                      InputSteering = "JOY1_XAXIS"        ; analog, full steering range
                                      
                                      ; Pedals
                                      InputAccelerator = "KEY_UP,JOY1_UP"
                                      InputBrake = "KEY_DOWN,JOY1_DOWN"
                                      
                                      ; Up/down shifter manual transmission (all racers)
                                      InputGearShiftUp = "KEY_Y"           ; sequential shift up
                                      InputGearShiftDown = "KEY_H"         ; sequential shift down
                                      
                                      ; 4-Speed manual transmission (Daytona 2, Sega Rally 2, Scud Race)
                                      InputGearShift1 = "KEY_Q,JOY1_BUTTON5"
                                      InputGearShift2 = "KEY_W,JOY1_BUTTON6"
                                      InputGearShift3 = "KEY_E,JOY1_BUTTON7"
                                      InputGearShift4 = "KEY_R,JOY1_BUTTON8"
                                      InputGearShiftN = "KEY_T"
                                      
                                      ; VR4 view change buttons (Daytona 2, Le Mans 24, Scud Race)
                                      InputVR1 = "KEY_A,JOY1_BUTTON1"
                                      InputVR2 = "KEY_S,JOY1_BUTTON2"
                                      InputVR3 = "KEY_D,JOY1_BUTTON3"
                                      InputVR4 = "KEY_F,JOY1_BUTTON4"
                                      
                                      ; Single view change button (Dirt Devils, ECA, Harley-Davidson, Sega Rally 2)
                                      InputViewChange = "KEY_A,JOY1_BUTTON1"
                                      
                                      ; Handbrake (Dirt Devils, Sega Rally 2)
                                      InputHandBrake = "KEY_S,JOY1_BUTTON2"
                                      
                                      ; Harley-Davidson controls
                                      InputRearBrake = "KEY_S,JOY1_BUTTON2"
                                      InputMusicSelect = "KEY_D,JOY1_BUTTON3"
                                      
                                      ; Virtual On macros
                                      InputTwinJoyTurnLeft = "KEY_Q,JOY1_RXAXIS_NEG"
                                      InputTwinJoyTurnRight = "KEY_W,JOY1_RXAXIS_POS"
                                      InputTwinJoyForward = "KEY_UP,JOY1_YAXIS_NEG"
                                      InputTwinJoyReverse = "KEY_DOWN,JOY1_YAXIS_POS"
                                      InputTwinJoyStrafeLeft = "KEY_LEFT,JOY1_XAXIS_NEG"
                                      InputTwinJoyStrafeRight = "KEY_RIGHT,JOY1_XAXIS_POS"
                                      InputTwinJoyJump = "KEY_E,JOY1_BUTTON1"
                                      InputTwinJoyCrouch = "KEY_R,JOY1_BUTTON2"
                                      
                                      ; Virtual On individual joystick mapping
                                      InputTwinJoyLeft1 = "NONE"
                                      InputTwinJoyLeft2 = "NONE"
                                      InputTwinJoyRight1 = "NONE"
                                      InputTwinJoyRight2 = "NONE"
                                      InputTwinJoyUp1 = "NONE"
                                      InputTwinJoyUp2 = "NONE"
                                      InputTwinJoyDown1 = "NONE"
                                      InputTwinJoyDown2 = "NONE"
                                      
                                      ; Virtual On buttons
                                      InputTwinJoyShot1 = "KEY_A,JOY1_BUTTON5"
                                      InputTwinJoyShot2 = "KEY_S,JOY1_BUTTON6"
                                      InputTwinJoyTurbo1 = "KEY_Z,JOY1_BUTTON7"
                                      InputTwinJoyTurbo2 = "KEY_X,JOY1_BUTTON8"
                                      
                                      ; Analog joystick (Star Wars Trilogy)
                                      InputAnalogJoyLeft = "KEY_LEFT"             ; digital, move left
                                      InputAnalogJoyRight = "KEY_RIGHT"           ; digital, move right
                                      InputAnalogJoyUp = "KEY_UP"                 ; digital, move up
                                      InputAnalogJoyDown = "KEY_DOWN"             ; digital, move down
                                      InputAnalogJoyX = "JOY_XAXIS,MOUSE_XAXIS"   ; analog, full X axis
                                      InputAnalogJoyY = "JOY_YAXIS,MOUSE_YAXIS"   ; analog, full Y axis
                                      InputAnalogJoyTrigger = "KEY_A,JOY_BUTTON1,MOUSE_LEFT_BUTTON"
                                      InputAnalogJoyEvent = "KEY_S,JOY_BUTTON2,MOUSE_RIGHT_BUTTON"
                                      InputAnalogJoyTrigger2 = "KEY_D,JOY_BUTTON2"
                                      InputAnalogJoyEvent2 = "NONE"
                                      
                                      ; Light guns (Lost World)
                                      InputGunLeft = "KEY_LEFT"               ; digital, move gun left
                                      InputGunRight = "KEY_RIGHT"             ; digital, move gun right
                                      InputGunUp = "KEY_UP"                   ; digital, move gun up
                                      InputGunDown = "KEY_DOWN"               ; digital, move gun down
                                      InputGunX = "MOUSE_XAXIS,JOY1_XAXIS"    ; analog, full X axis
                                      InputGunY = "MOUSE_YAXIS,JOY1_YAXIS"    ; analog, full Y axis
                                      InputTrigger = "KEY_A,JOY1_BUTTON1,MOUSE_LEFT_BUTTON"
                                      InputOffscreen = "KEY_S,JOY1_BUTTON2,MOUSE_RIGHT_BUTTON"    ; point off-screen
                                      InputAutoTrigger = 0                    ; automatic reload when off-screen
                                      InputGunLeft2 = "NONE"
                                      InputGunRight2 = "NONE"
                                      InputGunUp2 = "NONE"
                                      InputGunDown2 = "NONE"
                                      InputGunX2 = "JOY2_XAXIS"
                                      InputGunY2 = "JOY2_YAXIS"
                                      InputTrigger2 = "JOY2_BUTTON1"
                                      InputOffscreen2 = "JOY2_BUTTON2"
                                      InputAutoTrigger2 = 0
                                      
                                      ; Analog guns (Ocean Hunter, LA Machineguns)
                                      InputAnalogGunLeft = "KEY_LEFT"               ; digital, move gun left
                                      InputAnalogGunRight = "KEY_RIGHT"             ; digital, move gun right
                                      InputAnalogGunUp = "KEY_UP"                   ; digital, move gun up
                                      InputAnalogGunDown = "KEY_DOWN"               ; digital, move gun down
                                      InputAnalogGunX = "MOUSE_XAXIS,JOY1_XAXIS"    ; analog, full X axis
                                      InputAnalogGunY = "MOUSE_YAXIS,JOY1_YAXIS"    ; analog, full Y axis
                                      InputAnalogTriggerLeft = "KEY_A,JOY1_BUTTON1,MOUSE_LEFT_BUTTON"
                                      InputAnalogTriggerRight = "KEY_S,JOY1_BUTTON2,MOUSE_RIGHT_BUTTON"
                                      InputAnalogGunLeft2 = "NONE"
                                      InputAnalogGunRight2 = "NONE"
                                      InputAnalogGunUp2 = "NONE"
                                      InputAnalogGunDown2 = "NONE"
                                      InputAnalogGunX2 = "NONE"
                                      InputAnalogGunY2 = "NONE"
                                      InputAnalogTriggerLeft2 = "NONE"
                                      InputAnalogTriggerRight2 = "NONE"
                                      
                                      ; Ski Champ controls
                                      InputSkiLeft = "KEY_LEFT"
                                      InputSkiRight = "KEY_RIGHT"
                                      InputSkiUp = "KEY_UP"
                                      InputSkiDown = "KEY_DOWN"
                                      InputSkiX = "JOY1_XAXIS"
                                      InputSkiY = "JOY1_YAXIS"
                                      InputSkiPollLeft = "KEY_A,JOY1_BUTTON1"
                                      InputSkiPollRight = "KEY_S,JOY1_BUTTON2"
                                      InputSkiSelect1 = "KEY_Q,JOY1_BUTTON3"
                                      InputSkiSelect2 = "KEY_W,JOY1_BUTTON4"
                                      InputSkiSelect3 = "KEY_E,JOY1_BUTTON5"
                                      
                                      ; Magical Truck Adventure controls
                                      InputMagicalLeverUp1 = "KEY_UP"
                                      InputMagicalLeverDown1 = "KEY_DOWN"
                                      InputMagicalLeverUp2 = "NONE"
                                      InputMagicalLeverDown2 = "NONE"
                                      InputMagicalLever1 = "JOY1_YAXIS"
                                      InputMagicalLever2 = "JOY2_YAXIS"
                                      InputMagicalPedal1 = "KEY_A,JOY1_BUTTON1"
                                      InputMagicalPedal2 = "KEY_S,JOY2_BUTTON1"
                                      
                                      ; Sega Bass Fishing / Get Bass controls
                                      InputFishingRodLeft = "KEY_LEFT"
                                      InputFishingRodRight = "KEY_RIGHT"
                                      InputFishingRodUp = "KEY_UP"
                                      InputFishingRodDown = "KEY_DOWN"
                                      InputFishingStickLeft = "KEY_A"
                                      InputFishingStickRight = "KEY_D"
                                      InputFishingStickUp = "KEY_W"
                                      InputFishingStickDown = "KEY_S"
                                      InputFishingRodX = "JOY1_XAXIS"
                                      InputFishingRodY = "JOY1_YAXIS"
                                      InputFishingStickX = "JOY1_RXAXIS"
                                      InputFishingStickY = "JOY1_RYAXIS"
                                      InputFishingReel = "KEY_SPACE,JOY1_ZAXIS_POS"
                                      InputFishingCast = "KEY_Z,JOY1_BUTTON1"
                                      InputFishingSelect = "KEY_X,JOY1_BUTTON2"
                                      InputFishingTension = "KEY_T,JOY1_ZAXIS_NEG"
                                      
                                      DTEAMD 1 Reply Last reply Reply Quote 1
                                      • DTEAMD
                                        DTEAM @mechafatnick
                                        last edited by DTEAM

                                        @mechafatnick
                                        I know, but it’s the same concept for the other games. I showed you an exemple. Also, you can combine analog and input for a game like scud, I can turn right and left with analog stick and right and left buttons.

                                        New edit: like this

                                        ; Steering wheel
                                        InputSteeringLeft = JOY1_BUTTON8,JOY1_ZAXIS_POS      ; digital, turn wheel left
                                        InputSteeringRight = JOY1_BUTTON9,JOY1_ZAXIS_NEG     ; digital, turn wheel right
                                        InputSteering = NONE      ; analog, full steering range
                                        
                                        1 Reply Last reply Reply Quote 1
                                        • F
                                          Folly
                                          last edited by Folly

                                          @DTEAM @mechafatnick

                                          I had the idea of making an emulators.cfg line that could automatically detect the current resolution or the current resolution that is set for the emulator and then run the emulator with that resolution.
                                          @mitu helped me out with how to do this.
                                          We can just add the variables %XRES% and %YRES% in the line.
                                          There should be no need anymore for multiple resolution-lines.

                                          So I removed all earlier lines, and added just one line, which should be enough :
                                          https://github.com/FollyMaddy/RetroPie-Share/commit/cb155d7167b45c1206ae52279c523f0f7db7789d

                                          DTEAMD 1 Reply Last reply Reply Quote 0
                                          • DTEAMD
                                            DTEAM @Folly
                                            last edited by DTEAM

                                            @folly
                                            @mechafatnick

                                            Here's what I found in Supermodel.log . It shows all default settings. Most of the time you can set it in Supermodel.ini. When It's the default values, they doesn't appear in Supermodel.ini. You have to add them to set them. It is essentially the same as what I have already discussed above.

                                            Sensitivity=15 %
                                            Decay Speed=50 %
                                            X-Axis Dead Zone=10 %
                                            RX-Axis Dead Zone=10 %
                                            Y-Axis Dead Zone=10 %
                                            Z-Axis Dead Zone=10 %
                                            
                                            F 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.