Results 1 to 3 of 3
  1. #1
    EmuTalk Member
    Join Date
    May 2016
    Posts
    2
    Mentioned
    0 Post(s)

    N64 N64 Controllers & Config File Issue

    Hello,

    I am posting here because I really cannot for the life of me figure this out. I am using a recalbox with mupen64plus. My issue is that both of the config files (InputAutoCfg.ini & mupen64plus.cfg) keep overwriting themselves upon starting mupen64plus. I am using a USB Generic n64 controller and I have checked to see if all of the buttons work correctly using jstest /dev/input/js0 and everything seems to be working fine.

    On every controller I have the Controller configuration mode set to 0.

    I have read the previous issue with Bluerose and countless other threads but cannot find an answer to this overwriting problem.

    I normally dont give up in these situations but I've been scouring the internet for over 4 hours troubleshooting this and I just cannot figure it out. If you have any insight I would be forever grateful.

    Here is my InputAutoCfg.ini
    Code:
    [Generic   USB  Joystick  ]
    plugged = True
    plugin = 2
    mouse = False
    AnalogDeadzone = 4096,4096
    AnalogPeak = 32768,32768
    DPad R = hat(0 Right)
    DPad L = hat(0 Left)
    DPad D = hat(0 Down)
    DPad U = hat(0 Up)
    Start = button(9)
    Z Trig = button(7)
    B Button = button(8)
    A Button = button(6)
    C Button R = button(1)
    C Button L = button(3)
    C Button D = button(2)
    C Button U = button(0)
    R Trig = button(5)
    L Trig = button(4)
    Mempak switch = 
    Rumblepak switch = 
    X Axis = axis(0-,0+)
    Y Axis = axis(1-,1+)
    Here is my InputAutoCfg.ini when it gets overwritten:
    Code:
    [Generic   USB  Joystick  ]
    plugged = True
    plugin = 2
    AnalogDeadzone = 4096,4096
    AnalogPeak = 32768,32768
    Mempak switch = 
    Rumblepak switch = 
    mouse = False
    A Button = button(8)
    B Button = button(2)
    C Button R = button(6)
    C Button U = button(3)
    DPad D = hat(0 Down)
    DPad L = hat(0 Left)
    DPad R = hat(0 Right)
    DPad U = hat(0 Up)
    L Trig = button(4)
    R Trig = button(5)
    Start = button(9)
    X Axis = axis(0-,0+)
    Y Axis = axis(1-,1+)

    Here is my mupen64plus.cfg that gets overwritten everytime
    Code:
    # Mupen64Plus Configuration File
    # This file is automatically read and written by the Mupen64Plus Core library
    
    [Audio-OMX]
    
    # Mupen64Plus OMX Audio Plugin config parameter version number
    Version = 1
    # Frequency which is used if rom doesn't want to change it
    DEFAULT_FREQUENCY = 32000
    # Swaps left and right channels
    SWAP_CHANNELS = False
    # Audio output to go to (0) Analogue jack, (1) HDMI
    OUTPUT_PORT = 1
    # Point OMX to the raw N64 audio data region instead of copying audio int$
    NATIVE_MODE = False
    # Number of output samples per Audio callback. This is for hardware buffe$
    BUFFER_SIZE = 4096
    # Audio Output Frequncy mode (when NATIVE_MODE=false): 0 = Rom Frequency,$
    DEFAULT_MODE = 0
    # Desired Latency in ms
    LATENCY = 300
    # Underrun Mode, 0 = Ignore, 1 = Report, 2 = repeat audio when latency < $
    UNDERRUN_MODE = 0
    
    
    [Audio-SDL]
    
    # Mupen64Plus SDL Audio Plugin config parameter version number
    Version = 1
    # Frequency which is used if rom doesn't want to change it
    DEFAULT_FREQUENCY = 33600
    # Swaps left and right channels
    SWAP_CHANNELS = False
    # Size of primary buffer in output samples. This is where audio is loaded after it's extracted from n64's memory.
    PRIMARY_BUFFER_SIZE = 16384
    # Fullness level target for Primary audio buffer, in equivalent output samples
    PRIMARY_BUFFER_TARGET = 10240
    # Size of secondary buffer in output samples. This is SDL's hardware buffer.
    SECONDARY_BUFFER_SIZE = 2048
    # Audio resampling algorithm. src-sinc-best-quality, src-sinc-medium-quality, src-sinc-fastest, src-zero-order-hold, src-linear, speex-fixed-{10-0}, trivial
    RESAMPLE = "trivial"
    # Volume control type: 1 = SDL (only affects Mupen64Plus output)  2 = OSS mixer (adjusts master PC volume)
    VOLUME_CONTROL_TYPE = 1
    # Percentage change each time the volume is increased or decreased
    VOLUME_ADJUST = 5
    # Default volume when a game is started.  Only used if VOLUME_CONTROL_TYPE is 1
    VOLUME_DEFAULT = 80
    
    
    [Core]
    
    # Mupen64Plus Core config parameter set version number.  Please don't change this version number.
    Version = 1.010000
    # Draw on-screen display if True, otherwise don't draw OSD
    OnScreenDisplay = True
    # Use Pure Interpreter if 0, Cached Interpreter if 1, or Dynamic Recompiler if 2 or more
    R4300Emulator = 2
    # Disable compiled jump commands in dynamic recompiler (should be set to False)
    NoCompiledJump = False
    # Disable 4MB expansion RAM pack. May be necessary for some games
    DisableExtraMem = False
    # Increment the save state slot after each save operation
    AutoStateSlotIncrement = False
    # Activate the R4300 debugger when ROM execution begins, if core was built with Debugger support
    EnableDebugger = False
    # Save state slot (0-9) to use when saving/loading the emulator state
    CurrentStateSlot = 0
    # Path to directory where screenshots are saved. If this is blank, the default value of ${UserConfigPath}/screenshot will be used
    ScreenshotPath = "/recalbox/share/screenshots"
    # Path to directory where emulator save states (snapshots) are saved. If this is blank, the default value of ${UserConfigPath}/save will be used
    SaveStatePath = "/recalbox/share/saves/n64"
    # Path to directory where SRAM/EEPROM data (in-game saves) are stored. If this is blank, the default value of ${UserConfigPath}/save will be used
    SaveSRAMPath = "/recalbox/share/saves/n64"
    # Path to a directory to search when looking for shared data files
    SharedDataPath = "/recalbox/share/system/configs/mupen64/"
    # Delay interrupt after DMA SI read/write
    DelaySI = True
    # Force number of cycles per emulated instruction
    CountPerOp = 0
    
    
    [CoreEvents]
    
    # Mupen64Plus CoreEvents config parameter set version number.  Please don't change this version number.
    Version = 1
    # SDL keysym for stopping the emulator
    Kbd Mapping Stop = 27
    # SDL keysym for switching between fullscreen/windowed modes
    Kbd Mapping Fullscreen = 0
    # SDL keysym for saving the emulator state
    Kbd Mapping Save State = 286
    # SDL keysym for loading the emulator state
    Kbd Mapping Load State = 288
    # SDL keysym for advancing the save state slot
    Kbd Mapping Increment Slot = 0
    # SDL keysym for resetting the emulator
    Kbd Mapping Reset = 290
    # SDL keysym for slowing down the emulator
    Kbd Mapping Speed Down = 291
    # SDL keysym for speeding up the emulator
    Kbd Mapping Speed Up = 292
    # SDL keysym for taking a screenshot
    Kbd Mapping Screenshot = 293
    # SDL keysym for pausing the emulator
    Kbd Mapping Pause = 112
    # SDL keysym for muting/unmuting the sound
    Kbd Mapping Mute = 109
    # SDL keysym for increasing the volume
    Kbd Mapping Increase Volume = 93
    # SDL keysym for decreasing the volume
    Kbd Mapping Decrease Volume = 91
    # SDL keysym for temporarily going really fast
    Kbd Mapping Fast Forward = 102
    # SDL keysym for advancing by one frame when paused
    Kbd Mapping Frame Advance = 47
    # SDL keysym for pressing the game shark button
    Kbd Mapping Gameshark = 103
    # Joystick event string for stopping the emulator
    Joy Mapping Stop = "J0B7/B9"
    # Joystick event string for switching between fullscreen/windowed modes
    Joy Mapping Fullscreen = ""
    # Joystick event string for saving the emulator state
    Joy Mapping Save State = "J0B7/B2"
    # Joystick event string for loading the emulator state
    Joy Mapping Load State = "J0B7/B3"
    # Joystick event string for advancing the save state slot
    Joy Mapping Increment Slot = "J0B7/H0V1"
    # Joystick event string for taking a screenshot
    Joy Mapping Screenshot = "J0B7/B4"
    # Joystick event string for pausing the emulator
    Joy Mapping Pause = ""
    # Joystick event string for muting/unmuting the sound
    Joy Mapping Mute = ""
    # Joystick event string for increasing the volume
    Joy Mapping Increase Volume = ""
    # Joystick event string for decreasing the volume
    Joy Mapping Decrease Volume = ""
    # Joystick event string for fast-forward
    Joy Mapping Fast Forward = "J0B7/H0V2"
    # Joystick event string for pressing the game shark button
    Joy Mapping Gameshark = ""
    
    
    [Input-SDL-Control1]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = 0
    # SDL joystick name (or Keyboard)
    name = "Generic   USB  Joystick  "
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "hat(0 Right)"
    DPad L = "hat(0 Left)"
    DPad D = "hat(0 Down)"
    DPad U = "hat(0 Up)"
    Start = "button(9)"
    Z Trig = "button(7)"
    B Button = "button(8)"
    A Button = "button(6)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(5)"
    L Trig = "button(4)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [Input-SDL-Control2]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = 1
    # SDL joystick name (or Keyboard)
    name = "Generic   USB  Joystick  "
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "hat(0 Right)"
    DPad L = "hat(0 Left)"
    DPad D = "hat(0 Down)"
    DPad U = "hat(0 Up)"
    Start = "button(9)"
    Z Trig = "button(7)"
    B Button = "button(8)"
    A Button = "button(6)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(5)"
    L Trig = "button(4)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [Input-SDL-Control3]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = -1
    # SDL joystick name (or Keyboard)
    name = ""
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = False
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 1
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "hat(0 Right)"
    DPad L = "hat(0 Left)"
    DPad D = "hat(0 Down)"
    DPad U = "hat(0 Up)"
    Start = "button(9)"
    Z Trig = "button(7)"
    B Button = "button(8)"
    A Button = "button(6)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(5)"
    L Trig = "button(4)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [Input-SDL-Control4]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = -1
    # SDL joystick name (or Keyboard)
    name = ""
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = False
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 1
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "hat(0 Right)"
    DPad L = "hat(0 Left)"
    DPad D = "hat(0 Down)"
    DPad U = "hat(0 Up)"
    Start = "button(9)"
    Z Trig = "button(7)"
    B Button = "button(8)"
    A Button = "button(6)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(5)"
    L Trig = "button(4)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [UI-Console]
    
    # Mupen64Plus UI-Console config parameter set version number.  Please don't change this version number.
    Version = 1
    # Directory in which to search for plugins
    PluginDir = "./"
    # Filename of video plugin
    VideoPlugin = "/usr/lib/mupen64plus/mupen64plus-video-gliden64.so"
    # Filename of audio plugin
    AudioPlugin = "mupen64plus-audio-sdl.so"
    # Filename of input plugin
    InputPlugin = "mupen64plus-input-sdl.so"
    # Filename of RSP plugin
    RspPlugin = "mupen64plus-rsp-hle.so"
    
    
    [Video-General]
    
    # Use fullscreen mode if True, or windowed mode if False
    Fullscreen = False
    # Width of output window or fullscreen width
    ScreenWidth = 640
    # Height of output window or fullscreen height
    ScreenHeight = 480
    # If true, use correct aspect ratio, if false, stretch to fullscreen
    AspectRatio = True
    # If true, activate the SDL_GL_SWAP_CONTROL attribute
    VerticalSync = False
    
    
    [Video-GLideN64]
    
    # Settings version. Don't touch it.
    configVersion = 5
    # Enable/Disable MultiSampling (0=off, 2,4,8,16=quality)
    MultiSampling = 0
    # Screen aspect ratio (0=stretch, 1=force 4:3, 2=force 16:9, 3=adjust)
    AspectRatio = 1
    # Bilinear filtering mode (0=N64 3point, 1=standard)
    bilinearMode = True
    # Max level of Anisotropic Filtering, 0 for off
    MaxAnisotropy = False
    # Size of texture cache in megabytes. Good value is VRAM*3/4
    CacheSize = 500
    # Enable fog emulation.
    EnableFog = True
    # Enable color noise emulation.
    EnableNoise = True
    # Enable LOD emulation.
    EnableLOD = True
    # Enable hardware per-pixel lighting.
    EnableHWLighting = False
    # Use persistent storage for compiled shaders.
    EnableShadersStorage = True
    # Enable frame and|or depth buffer emulation.
    EnableFBEmulation = False
    # Enable color buffer copy to RDRAM (0=do not copy, 1=copy in sync mode, 2=copy in async mode)
    EnableCopyColorToRDRAM = 2
    # Enable depth buffer copy to RDRAM.
    EnableCopyDepthToRDRAM = False
    # Enable color buffer copy from RDRAM.
    EnableCopyColorFromRDRAM = False
    # Detect CPU writes to frame buffer.
    EnableDetectCFB = False
    # Enable N64 depth compare instead of OpenGL standard one. Experimental.
    EnableN64DepthCompare = False
    # Texture filter (0=none, 1=Smooth filtering 1, 2=Smooth filtering 2, 3=Smooth filtering 3, 4=Smooth filtering 4, 5=Sharp filtering 1, 6=Sharp filtering 2)
    txFilterMode = 0
    # Texture Enhancement (0=none, 1=store as is, 2=X2, 3=X2SAI, 4=HQ2X, 5=HQ2XS, 6=LQ2X, 7=LQ2XS, 8=HQ4X, 9=2xBRZ, 10=3xBRZ, 11=4xBRZ, 12=5xBRZ), 13=6xBRZ
    txEnhancementMode = 0
    # Don't filter background textures.
    txFilterIgnoreBG = False
    # Size of filtered textures cache in megabytes.
    txCacheSize = 100
    # Use high-resolution texture packs if available.
    txHiresEnable = False
    # Allow to use alpha channel of high-res texture fully.
    txHiresFullAlphaChannel = False
    # Use alternative method of paletted textures CRC calculation.
    txHresAltCRC = False
    # Enable dump of loaded N64 textures.
    txDump = False
    # Zip textures cache.
    txCacheCompression = True
    # Force use 16bit texture formats for HD textures.
    txForce16bpp = False
    # Save texture cache to hard disk.
    txSaveCache = True
    # Path to folder with hi-res texture packs.
    txPath = "/recalbox/share/system/.local/share/mupen64plus/hires_texture"
    # File name of True Type Font for text messages.
    fontName = "FreeSans.ttf"
    # Font size.
    fontSize = 18
    # Font color in RGB format.
    fontColor = "B5E61D"
    # Enable bloom filter
    EnableBloom = 0
    # Brightness threshold level for bloom. Values [2, 6]
    bloomThresholdLevel = 4
    # Bloom blend mode (0=Strong, 1=Mild, 2=Light)
    bloomBlendMode = 0
    # Blur radius. Values [2, 10]
    blurAmount = 10
    # Blur strength. Values [10, 100]
    blurStrength = 20
    
    
    [Video-Rice]
    
    # Control when the screen will be updated (0=ROM default, 1=VI origin update, 2=VI origin change, 3=CI change, 4=first CI change, 5=first primitive draw, 6=before screen clear, 7=after screen drawn)
    ScreenUpdateSetting = 7
    # Frequency to write back the frame buffer (0=every frame, 1=every other frame, etc)
    FrameBufferWriteBackControl = 1
    # If this option is enabled, the plugin will skip every other frame
    SkipFrame = False
    # If this option is enabled, the plugin will only draw every other screen update
    SkipScreenUpdate = False
    # Force to use texture filtering or not (0=auto: n64 choose, 1=force no filtering, 2=force filtering)
    ForceTextureFilter = 2
    # Primary texture enhancement filter (0=None, 1=2X, 2=2XSAI, 3=HQ2X, 4=LQ2X, 5=HQ4X, 6=Sharpen, 7=Sharpen More, 8=External, 9=Mirrored)
    TextureEnhancement = 6
    # Secondary texture enhancement filter (0 = none, 1-4 = filtered)
    TextureEnhancementControl = 0
    # Mupen64Plus Rice Video Plugin config parameter version number
    Version = 1
    # Frame Buffer Emulation (0=ROM default, 1=disable)
    FrameBufferSetting = 0
    # Render-to-texture emulation (0=none, 1=ignore, 2=normal, 3=write back, 4=write back and reload)
    RenderToTexture = 0
    # Force to use normal alpha blender
    NormalAlphaBlender = False
    # Use a faster algorithm to speed up texture loading and CRC computation
    FastTextureLoading = False
    # Use different texture coordinate clamping code
    AccurateTextureMapping = True
    # Force emulated frame buffers to be in N64 native resolution
    InN64Resolution = False
    # Try to reduce Video RAM usage (should never be used)
    SaveVRAM = False
    # Enable this option to have better render-to-texture quality
    DoubleSizeForSmallTxtrBuf = False
    # Force to use normal color combiner
    DefaultCombinerDisable = False
    # Enable game-specific settings from INI file
    EnableHacks = True
    # If enabled, graphics will be drawn in WinFrame mode instead of solid and texture mode
    WinFrameMode = False
    # N64 Texture Memory Full Emulation (may fix some games, may break others)
    FullTMEMEmulation = False
    # Enable vertex clipper for fog operations
    OpenGLVertexClipper = False
    # Enable/Disable SSE optimizations for capable CPUs
    EnableSSE = True
    # If enabled, texture enhancement will be done only for TxtRect ucode
    TexRectOnly = False
    # If enabled, texture enhancement will be done only for textures width+height<=128
    SmallTextureOnly = False
    # Select hi-resolution textures based only on the CRC and ignore format+size information (Glide64 compatibility)
    LoadHiResCRCOnly = True
    # Enable hi-resolution texture file loading
    LoadHiResTextures = False
    # Enable texture dumping
    DumpTexturesToFiles = False
    # Display On-screen FPS
    ShowFPS = False
    # Use Mipmapping? 0=no, 1=nearest, 2=bilinear, 3=trilinear
    Mipmapping = 2
    # Enable, Disable or Force fog generation (0=Disable, 1=Enable n64 choose, 2=Force Fog)
    FogMethod = 1
    # Color bit depth to use for textures (0=default, 1=32 bits, 2=16 bits)
    TextureQuality = 0
    # Z-buffer depth (only 16 or 32)
    OpenGLDepthBufferSetting = 16
    # Enable/Disable MultiSampling (0=off, 2,4,8,16=quality)
    MultiSampling = 0
    # Color bit depth for rendering window (0=32 bits, 1=16 bits)
    ColorQuality = 0
    # OpenGL level to support (0=auto, 1=OGL_1.1, 2=OGL_1.4, 3=OGL_FRAGMENT_PROGRAM)
    OpenGLRenderSetting = 0
    # Enable/Disable Anisotropic Filtering for Mipmapping (0=no filtering, 2-16=quality). This is uneffective if Mipmapping is 0. If the given value is to high to be supported by your graphic card, the value will be the highest value your graphic card can support. Better result with Trilinear filtering
    AnisotropicFiltering = 0
    # If true, use polygon offset values specified below
    ForcePolygonOffset = False
    # Specifies a scale factor that is used to create a variable depth offset for each polygon
    PolygonOffsetFactor = 0
    # Is multiplied by an implementation-specific value to create a constant depth offset
    PolygonOffsetUnits = 0
    # Use GPU vertex shader
    EnableVertexShader = False
    # Widescreen hack
    WideScreenHack = False




  2. #2
    EmuTalk Member
    Join Date
    May 2016
    Posts
    2
    Mentioned
    0 Post(s)

    Talking Solved it!

    Hey guys, I know no one has replied yet, but I have been hard at work getting this working. I have tried a number of things and I believe I finally got it. I think my biggest enemy along the way was patience. When you think you got it, wait a bit to make sure its absolutely loaded onto your pi.

    Since I am using recalbox (a raspberry pi OS) things are a bit different than the norm here. (I am on a raspberry pi 3)

    Step 1: download PuTTY(an SSH Terminal program)

    Step 2: Connect to your Raspberry Pi (Hostname: recalbox | username: root | password: recalboxroot)

    Step 3: Run a test to see what each button does on your controllers one at a time. Do this by entering the command in PuTTy: jstest /dev/input/js0 (this allows you to press buttons and if they switch on in the terminal then you can see how the controller is responding. Take note of what each button does. Lets say when you press B, the 6 goes on... then you know 6 is B... Test all the buttons and take note of each.

    Step 4: After taking note of how the buttons are mapped in your controller now its time to setup the InputAutoCfg.ini for your first and only your first controller. Here is my file:
    Code:
    [Generic   USB  Joystick  ]
    plugged = True
    plugin = 2
    mouse = False
    AnalogDeadzone = 4096,4096
    AnalogPeak = 32768,32768
    DPad R = hat(0 Right)
    DPad L = hat(0 Left)
    DPad D = hat(0 Down)
    DPad U = hat(0 Up)
    Start = button(9)
    Z Trig = button(7)
    B Button = button(8)
    A Button = button(6)
    C Button R = button(1)
    C Button L = button(3)
    C Button D = button(2)
    C Button U = button(0)
    R Trig = button(5)
    L Trig = button(4)
    Mempak switch = 
    Rumblepak switch = 
    X Axis = axis(0-,0+)
    Y Axis = axis(1-,1+)
    If you are mapping your controller and you see that its only coming up as an axis, use the number. The negative and positive just would mean left or right. so above for example X Axis = axis(0-,0+)
    Make sure afterwards you set it to read-only file by right clicking and going into properties.

    Step 5: Now we must edit the mupen64plus.cfg. You can begin this step after you have written down the map for each controller (if using different controller types). Setup the mupen64plus.cfg for all of your controllers and set this to read-only as well. I had 2 different kinds of controllers. You can see in my file that the first controller config is different. (The only thing really different about the way you put things in here is that each button map is in quotes.. I skipped down just to the input controller area to get to the point)
    Code:
    [Input-SDL-Control1]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = 0
    # SDL joystick name (or Keyboard)
    name = "Black"
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "hat(0 Right)"
    DPad L = "hat(0 Left)"
    DPad D = "hat(0 Down)"
    DPad U = "hat(0 Up)"
    Start = "button(9)"
    Z Trig = "button(7)"
    B Button = "button(8)"
    A Button = "button(6)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(5)"
    L Trig = "button(4)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [Input-SDL-Control2]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = 1
    # SDL joystick name (or Keyboard)
    name = "Green"
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "axis(5+)"
    DPad L = "axis(5-)"
    DPad D = "axis(6+)"
    DPad U = "axis(6-)"
    Start = "button(9)"
    Z Trig = "button(8)"
    B Button = "button(4)"
    A Button = "button(5)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(7)"
    L Trig = "button(6)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [Input-SDL-Control3]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = 2
    # SDL joystick name (or Keyboard)
    name = "Yellow"
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "axis(5+)"
    DPad L = "axis(5-)"
    DPad D = "axis(6+)"
    DPad U = "axis(6-)"
    Start = "button(9)"
    Z Trig = "button(8)"
    B Button = "button(4)"
    A Button = "button(5)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(7)"
    L Trig = "button(6)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    
    
    [Input-SDL-Control4]
    
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
    version = 2
    # Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
    mode = 0
    # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
    device = 3
    # SDL joystick name (or Keyboard)
    name = "Generic   USB  Joystick 3 "
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = "axis(5+)"
    DPad L = "axis(5-)"
    DPad D = "axis(6+)"
    DPad U = "axis(6-)"
    Start = "button(9)"
    Z Trig = "button(8)"
    B Button = "button(4)"
    A Button = "button(5)"
    C Button R = "button(1)"
    C Button L = "button(3)"
    C Button D = "button(2)"
    C Button U = "button(0)"
    R Trig = "button(7)"
    L Trig = "button(6)"
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
    I hope this helps people with the recalbox and mupen64plus controller support.
    Last edited by Ulrich453; May 25th, 2016 at 02:05.

  3. #3
    EmuTalk Member
    Join Date
    Jan 2017
    Posts
    1
    Mentioned
    0 Post(s)
    thanks Ulrich453, it works!
    just to confirm each button, intead of jstest i've used the controller config on recalbox just to take note of it.

    Many thanks!!
    Rafael


Posting Permissions

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