Changing Hotkeys In PCSX2 1.0.0 Emulator
#11
Would it not go in inis folder?
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply

Sponsored links

#12
(11-17-2013, 10:20 AM)nhattansuphu Wrote: just create it into the main folder right?

exactly
@ blyss : nope. It behaves like the portable.ini file.
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply
#13
(11-17-2013, 10:22 AM)jesalvein Wrote: exactly
@ blyss : nope. It behaves like the portable.ini file.

feeling not working, I did exactly like u said but still...
I wonder if my pcsx2_keys.ini is wrong:
States_FreezeCurrentSlot=P
States_DefrostCurrentSlot=\
States_CycleSlotForward=]
States_CycleSlotBackward=[

Framelimiter_TurboToggle=ctrl-alt-TAB
Framelimiter_SlomoToggle=ctrl-alt-F4
Framelimiter_MasterToggle=ctrl-alt-F5

Sys_Suspend=`
Sys_RenderswitchToggle=ctrl-alt-F6

GSwindow_CycleAspectRatio=ctrl-alt-F7
Reply
#14
(11-17-2013, 11:02 AM)nhattansuphu Wrote: feeling not working, I did exactly like u said but still...
I wonder if my pcsx2_keys.ini is wrong:
States_FreezeCurrentSlot=P
...

It _looks_ ok, but you could just try it yourself, check if it behaves as expected, and then share your conclusions on this thread.

Thanks Wink
Reply
#15
<These are for devs>
The following are my guessing. If I'm wrong, never mind.

First of all, the summary of my hypothesis:
A parameter is forgotten from wxFileConfig cfg instance, so remapping function doesn't work.


Code:
<the summary image>

wxConfigBase::wxConfigBase(5 parameters)
     |
wxFileConfig::wxFileConfig(6 parameters)

wxFileConfig cfg(5 parameters);


1. The wxConfigBase (base of wxFileConfig) constructor needs 5 parameters.
Code:
wxConfigBase::wxConfigBase(const wxString& appName,
                           const wxString& vendorName,
                           const wxString& WXUNUSED(localFilename),
                           const wxString& WXUNUSED(globalFilename),
                           long style)
            : m_appName(appName), m_vendorName(vendorName), m_style(style)
{
    m_bExpandEnvVars = true;
    m_bRecordDefaults = false;
}
pcsx2-1.0.0-r5350-sources\3rdparty\wxWidgets\src\common\config.cpp (63)


2. The wxFileConfig constructor needs 6 parameters.
Code:
wxFileConfig::wxFileConfig(const wxString& appName, const wxString& vendorName,
                           const wxString& strLocal, const wxString& strGlobal,
                           long style,
                           const wxMBConv& conv)
            : wxConfigBase(::GetAppName(appName), vendorName,
                           strLocal, strGlobal,
                           style),
              m_strLocalFile(strLocal), m_strGlobalFile(strGlobal),
              m_conv(conv.Clone())
pcsx2-1.0.0-r5350-sources\3rdparty\wxWidgets\src\common\fileconf.cpp (427)


3. The wxFileConfig cfg instance has only 5 parameters, but wxFileConfig constructor needs 6 parameters.
Because of this wxConfigBase constructor would be called.
Is this no problem? I worry about wxConfigBase constructor sets only 2 variables in this context.
Code:
void AcceleratorDictionary::Map( const KeyAcceleratorCode& _acode, const char *searchfor )
{
        // Search override mapping at ini file
        KeyAcceleratorCode acode = _acode;
        wxString overrideStr;
        wxAcceleratorEntry codeParser;    //Provides string parsing capabilities
->      wxFileConfig cfg(L"", L"", L"" , GetUiKeysFilename(), wxCONFIG_USE_GLOBAL_FILE );
        if( cfg.Read( wxString::FromUTF8(searchfor), &overrideStr) )
pcsx2-1.0.0-r5350-sources\pcsx2\gui\GlobalCommands.cpp (533)


Edit: I confirmed that it works.
Reply
#16
(11-17-2013, 11:25 AM)avih Wrote: It _looks_ ok, but you could just try it yourself, check if it behaves as expected, and then share your conclusions on this thread.

Thanks Wink

I tried it. Key remapping doesn't work in r5745. Despite creating the file, keys remain the same.
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply
#17
(11-18-2013, 05:17 PM)tadatada Wrote: First of all, the summary of my hypothesis:
A parameter is forgotten from wxFileConfig cfg instance, so remapping function doesn't work.
...

Typically, some observation is first made, and then a hypotheses tries to explain this observation.

When you start with a hypotheses, it's not clear which observation you're actually trying to explain.

If you're trying to explain an observation where the remapping doesn't work, then it would be useful to first give some details of your case. E.g. what does your file look like, where did you put it, how did you conclude that it doesn't work, etc, and then other people could also come up with suggestions.

Specifically, while I haven't tested remapping recently, I did test it a while ago (in fact, it was me who wrote the remapping code), and it worked just fine (especially after r4918 which fixed "normal" keys as remap targets).

So, if it doesn't work for you, give us the details first, please Wink
Reply
#18
(11-17-2013, 10:22 AM)jesalvein Wrote: exactly
@ blyss : nope. It behaves like the portable.ini file.

Actually, it WORKS if you put the file in the inis folder. Haha. Winning. Tongue2

But the file above conflicts with GSDX shortcut F7, and THAT one doesn't work(CTRL-ALT-F7), also CTRL-ALT-TAB conflicts with Windows shortcut ALT-TAB.

This is in non installed pcsx2(e.g. binary package), and the file above.
[Image: XTe1j6J.png]
Gaming Rig: Intel i7 6700k @ 4.8Ghz | GTX 1070 TI | 32GB RAM | 960GB(480GB+480GB RAID0) SSD | 2x 1TB HDD
Reply
#19
(11-18-2013, 05:43 PM)Blyss Sarania Wrote: Actually, it WORKS if you put the file in the inis folder. Haha. Winning. Tongue2

But the file above conflicts with GSDX shortcut F7, and THAT one doesn't work(CTRL-ALT-F7), also CTRL-ALT-TAB conflicts with Windows shortcut ALT-TAB.

This is in non installed pcsx2(e.g. binary package), and the file above.

True. GSdx handles some keys by itself (F5 change deinterlace mode, F7 change shader, etc), and windows also handles some keys before they get to PCSX2. So those keys will conflict with PCSX2.

I modified the above file as follows (and put at as pcsx2_keys.ini at the inis folder), and it works:

Code:
States_FreezeCurrentSlot=9
States_DefrostCurrentSlot=0
States_CycleSlotForward=]
States_CycleSlotBackward=[

Framelimiter_TurboToggle=ALT-CTRL-F1
Framelimiter_SlomoToggle=ALT-CTRL-F2
Framelimiter_MasterToggle=ALT-CTRL-F3

Sys_Suspend='
Sys_RenderswitchToggle=ALT-CTRL-F9

GSwindow_CycleAspectRatio=ALT-CTRL-F10

Not sure how the '\' key should be put at the file, and also ` didn't work, but ' did work. YMMV, but generally it should work except for keys that conflict with Windows or with GSdx.
Reply
#20
(11-18-2013, 05:43 PM)Blyss Sarania Wrote: Actually, it WORKS if you put the file in the inis folder. Haha. Winning. Tongue2

Good to know Tongue2
I have to admit I hadn't tested it for a while Laugh
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply




Users browsing this thread: 1 Guest(s)