Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #20625
    FJGonzalez
    Guest

    Hi, I have an issue with PiSNES that is not a huge deal but I would like to correct it if possible. In my config file for all of my emulators I have Select + L to save a state and Select + R to load a state. In PiSNES it’s the other way around. I have to push Select + R to save and Select + L to load.

    Is there any way to configure PiSNES to have it behave like all my other emulators?

    #20764
    keninem
    Participant

    I’ve noticed the same thing, thought I was losing my mind. Not sure why it’s reversed. :(

    #21097
    Xboxclassic
    Guest

    Thats not the only problem with this particular emu there are more serious issues such as game freeze , loss of control , graphics issues and exit
    it all seems to be linked somewhere in the RAM coding of the Program itself.
    Its like its using all memory just to load the emu ( game,control,sound and save states not included)
    to see what I mean try
    Super Mario All Stars or
    Super Mario All Stars + World
    Try all games on collection see what happens.
    (Dont worry wont kill Your PI or other software)

    #21488
    bruized
    Participant

    Not sure if there’s a way config wise to fix this. It seems to be hardcoded in the source that L is load and R is save. The offending lines are in pisnes/unix/unix.cpp lines 915-927

            //Check START+R,L for quicksave/quickload. Needs to go here outside of the internal processing
            if (joy_buttons[0][sfc_joy[QLOAD]] || (joy_buttons[0][sfc_joy[SELECT_1]] && joy_buttons[0][sfc_joy[L_1]] )) {
                    char fname[256];
                    strcpy(fname, S9xGetFilename (".000"));
                    S9xLoadSnapshot (fname);
            }
            if (joy_buttons[0][sfc_joy[QSAVE]] || (joy_buttons[0][sfc_joy[SELECT_1]] && joy_buttons[0][sfc_joy[R_1]] )) {
                    char fname[256];
                    strcpy(fname, S9xGetFilename (".000"));
                    S9xFreezeGame (fname);
            }
    
    }

    If you edit those lines to

            //Check START+R,L for quicksave/quickload. Needs to go here outside of the internal processing
            if (joy_buttons[0][sfc_joy[QLOAD]] || (joy_buttons[0][sfc_joy[SELECT_1]] && joy_buttons[0][sfc_joy[R_1]] )) {
                    char fname[256];
                    strcpy(fname, S9xGetFilename (".000"));
                    S9xLoadSnapshot (fname);
            }
            if (joy_buttons[0][sfc_joy[QSAVE]] || (joy_buttons[0][sfc_joy[SELECT_1]] && joy_buttons[0][sfc_joy[L_1]] )) {
                    char fname[256];
                    strcpy(fname, S9xGetFilename (".000"));
                    S9xFreezeGame (fname);
            }
    
    }

    and then recompile (run the make command in the pisnes folder) that should fix it. You’ll need to have installed pisnes from source (either manually or using the retropi installer) for this to work.

Viewing 4 posts - 1 through 4 (of 4 total)
  • The forum ‘Everything else related to the RetroPie Project’ is closed to new topics and replies.