diff --git a/pcsx2/PluginManager.cpp b/pcsx2/PluginManager.cpp index 92accb716d..08aa58ea3b 100644 --- a/pcsx2/PluginManager.cpp +++ b/pcsx2/PluginManager.cpp @@ -916,7 +916,8 @@ void PluginManager::Open() const PluginInfo* pi = tbl_PluginInfo; do { Open( pi->id ); // If GS doesn't support GSopen2, need to wait until call to GSopen - // returns to populate pDsp. + // returns to populate pDsp. If it does, can initialize otherp plugins + // at same time as GS, as long as GSopen2 does not subclass its window. if (pi->id == PluginId_GS && !GSopen2) mtgsThread.WaitForOpen(); } while( ++pi, pi->shortname != NULL ); diff --git a/plugins/LilyPad/LilyPad.cpp b/plugins/LilyPad/LilyPad.cpp index 6bda740881..f2caed8327 100644 --- a/plugins/LilyPad/LilyPad.cpp +++ b/plugins/LilyPad/LilyPad.cpp @@ -533,12 +533,12 @@ void Update(unsigned int port, unsigned int slot) { } if (pads[port][slot].mode == 0x41) { - s[port][slot].sticks[0].horiz += - s[port][slot].sticks[1].horiz + - s[port][slot].sticks[2].horiz; - s[port][slot].sticks[0].vert += - s[port][slot].sticks[1].vert + - s[port][slot].sticks[2].vert; + for (int i=1; i<=2; i++) { + if (abs(s[port][slot].sticks[i].horiz) >= 100) + s[port][slot].sticks[0].horiz += s[port][slot].sticks[i].horiz; + if (abs(s[port][slot].sticks[i].vert) >= 100) + s[port][slot].sticks[0].vert += s[port][slot].sticks[i].vert; + } } CapSum(&s[port][slot]);