diff --git a/plugins/LilyPad/Config.cpp b/plugins/LilyPad/Config.cpp index b6feb94e42..4faac30bdb 100644 --- a/plugins/LilyPad/Config.cpp +++ b/plugins/LilyPad/Config.cpp @@ -321,6 +321,25 @@ void CALLBACK PADsetSettingsDir( const char *dir ) wcscat_s(iniFile, L"/LilyPad.ini"); createIniDir = false; + + FILE *temp = nullptr; + _wfopen_s(&temp, iniFile, L"r"); + if (!temp) { // File not found, possibly. + HRSRC res = FindResource(hInst, MAKEINTRESOURCE(IDR_INI1), RT_RCDATA); + if (!res) return; + HGLOBAL data = LoadResource(hInst, res); + if (!data) return; + size_t size = SizeofResource(hInst, res); + u8 *fdata = (u8*)LockResource(data); + _wfopen_s(&temp, iniFile, L"w"); + if (!temp) return; + fwrite(fdata, 1, size, temp); + fclose(temp); + } + else { + fclose(temp); + } + } int GetBinding(int port, int slot, int index, Device *&dev, Binding *&b, ForceFeedbackBinding *&ffb); diff --git a/plugins/LilyPad/Default.ini b/plugins/LilyPad/Default.ini new file mode 100644 index 0000000000..7082c07cb0 --- /dev/null +++ b/plugins/LilyPad/Default.ini @@ -0,0 +1,120 @@ +[General Settings] +Last Config Path=inis +Last Config Name=LilyPad.lily +Force Cursor Hide=0 +Mouse Unfocus=1 +Background=1 +Multiple Bindings=0 +DirectInput Game Devices=1 +XInput=1 +DualShock 3=0 +Multitap 1=0 +Multitap 2=0 +Escape Fullscreen Hack=0 +Disable Screen Saver=0 +Logging=0 +Save State in Title=0 +GH2=0 +Turbo Key Hack=0 +Vista Volume=1 +Close Hacks=0 +Keyboard Mode=2 +Mouse Mode=0 +Volume=100 +[Pad 0 0] +Mode=1 +Auto Analog=0 +[Pad 0 1] +Mode=1 +Auto Analog=0 +[Pad 0 2] +Mode=1 +Auto Analog=0 +[Pad 0 3] +Mode=1 +Auto Analog=0 +[Pad 1 0] +Mode=1 +Auto Analog=0 +[Pad 1 1] +Mode=1 +Auto Analog=0 +[Pad 1 2] +Mode=1 +Auto Analog=0 +[Pad 1 3] +Mode=1 +Auto Analog=0 +[Device 0] +Display Name=XInput Pad 0 +Instance ID=XInput Pad 0 +API=4 +Type=3 +Binding 0=0x00040000, 0, 20, 65536, 0, 0, 0 +Binding 1=0x00040001, 0, 22, 65536, 0, 0, 0 +Binding 2=0x00040002, 0, 23, 65536, 0, 0, 0 +Binding 3=0x00040003, 0, 21, 65536, 0, 0, 0 +Binding 4=0x00040004, 0, 19, 65536, 0, 0, 0 +Binding 5=0x00040005, 0, 16, 65536, 0, 0, 0 +Binding 6=0x00040006, 0, 17, 65536, 0, 0, 0 +Binding 7=0x00040007, 0, 18, 65536, 0, 0, 0 +Binding 8=0x00040008, 0, 26, 65536, 0, 0, 0 +Binding 9=0x00040009, 0, 27, 65536, 0, 0, 0 +Binding 10=0x0004000C, 0, 30, 65536, 0, 0, 0 +Binding 11=0x0004000D, 0, 29, 65536, 0, 0, 0 +Binding 12=0x0004000E, 0, 31, 65536, 0, 0, 0 +Binding 13=0x0004000F, 0, 28, 65536, 0, 0, 0 +Binding 14=0x00200010, 0, 24, 65536, 0, 0, 1 +Binding 15=0x00200011, 0, 25, 65536, 0, 0, 1 +Binding 16=0x01020012, 0, 33, 87183, 0, 0, 13172 +Binding 17=0x02020012, 0, 35, 87183, 0, 0, 13172 +Binding 18=0x01020013, 0, 32, 87183, 0, 0, 13172 +Binding 19=0x02020013, 0, 34, 87183, 0, 0, 13172 +Binding 20=0x01020014, 0, 37, 87183, 0, 0, 13172 +Binding 21=0x02020014, 0, 39, 87183, 0, 0, 13172 +Binding 22=0x01020015, 0, 36, 87183, 0, 0, 13172 +Binding 23=0x02020015, 0, 38, 87183, 0, 0, 13172 +FF Binding 0=Constant 0, 0, 0, 0, 65536, 1, 0 +FF Binding 1=Constant 0, 1, 0, 0, 0, 1, 65536 +[Device 1] +Display Name=XInput Pad 1 +Instance ID=XInput Pad 1 +API=4 +Type=3 +Binding 0=0x00040000, 1, 20, 65536, 0, 0, 0 +Binding 1=0x00040001, 1, 22, 65536, 0, 0, 0 +Binding 2=0x00040002, 1, 23, 65536, 0, 0, 0 +Binding 3=0x00040003, 1, 21, 65536, 0, 0, 0 +Binding 4=0x00040004, 1, 19, 65536, 0, 0, 0 +Binding 5=0x00040005, 1, 16, 65536, 0, 0, 0 +Binding 6=0x00040006, 1, 17, 65536, 0, 0, 0 +Binding 7=0x00040007, 1, 18, 65536, 0, 0, 0 +Binding 8=0x00040008, 1, 26, 65536, 0, 0, 0 +Binding 9=0x00040009, 1, 27, 65536, 0, 0, 0 +Binding 10=0x0004000C, 1, 30, 65536, 0, 0, 0 +Binding 11=0x0004000D, 1, 29, 65536, 0, 0, 0 +Binding 12=0x0004000E, 1, 31, 65536, 0, 0, 0 +Binding 13=0x0004000F, 1, 28, 65536, 0, 0, 0 +Binding 14=0x00200010, 1, 24, 65536, 0, 0, 1 +Binding 15=0x00200011, 1, 25, 65536, 0, 0, 1 +Binding 16=0x01020012, 1, 33, 87183, 0, 0, 13172 +Binding 17=0x02020012, 1, 35, 87183, 0, 0, 13172 +Binding 18=0x01020013, 1, 32, 87183, 0, 0, 13172 +Binding 19=0x02020013, 1, 34, 87183, 0, 0, 13172 +Binding 20=0x01020014, 1, 37, 87183, 0, 0, 13172 +Binding 21=0x02020014, 1, 39, 87183, 0, 0, 13172 +Binding 22=0x01020015, 1, 36, 87183, 0, 0, 13172 +Binding 23=0x02020015, 1, 38, 87183, 0, 0, 13172 +FF Binding 0=Constant 1, 0, 0, 0, 65536, 1, 0 +FF Binding 1=Constant 1, 1, 0, 0, 0, 1, 65536 +[Device 12] +Display Name=XInput Pad 2 +Instance ID=XInput Pad 2 +API=4 +Type=3 +[Device 13] +Display Name=XInput Pad 3 +Instance ID=XInput Pad 3 +API=4 +Type=3 + diff --git a/plugins/LilyPad/LilyPad.rc b/plugins/LilyPad/LilyPad.rc index 8ae7794a2b..9f3f2c8264 100644 --- a/plugins/LilyPad/LilyPad.rc +++ b/plugins/LilyPad/LilyPad.rc @@ -327,6 +327,12 @@ BEGIN END #endif // APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// DATA +// + +IDR_INI1 RCDATA "Default.ini" ///////////////////////////////////////////////////////////////////////////// // diff --git a/plugins/LilyPad/LilyPad.vcxproj b/plugins/LilyPad/LilyPad.vcxproj index 9128c2121e..94335b1f9a 100644 --- a/plugins/LilyPad/LilyPad.vcxproj +++ b/plugins/LilyPad/LilyPad.vcxproj @@ -483,6 +483,7 @@ + diff --git a/plugins/LilyPad/LilyPad.vcxproj.filters b/plugins/LilyPad/LilyPad.vcxproj.filters index 6494843e18..63abe81d1f 100644 --- a/plugins/LilyPad/LilyPad.vcxproj.filters +++ b/plugins/LilyPad/LilyPad.vcxproj.filters @@ -142,6 +142,9 @@ Resource Files + + Resource Files + diff --git a/plugins/LilyPad/resource.h b/plugins/LilyPad/resource.h index 90e4726263..9892aa8e33 100644 --- a/plugins/LilyPad/resource.h +++ b/plugins/LilyPad/resource.h @@ -11,6 +11,7 @@ #define IDC_CURSOR1 108 #define IDC_ESCAPE_FULLSCREEN_HACK 109 #define IDD_DIAG 110 +#define IDR_INI1 111 #define IDC_CLOSE_HACK1 1099 #define IDC_KB_DISABLE 1100 #define IDC_KB_DI 1101 @@ -142,10 +143,10 @@ #define IDC_FF_AXIS8_SCALE 0x1383 // Next default values for new objects -// +// #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 111 +#define _APS_NEXT_RESOURCE_VALUE 112 #define _APS_NEXT_COMMAND_VALUE 40001 #define _APS_NEXT_CONTROL_VALUE 1133 #define _APS_NEXT_SYMED_VALUE 101