diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4afe7ef
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,10 @@
+<<<<<<< HEAD
+<<<<<<< HEAD
+/cpp/wiipair/.settings
+/cpp/wiipair/Release/src
+=======
+/java/bin
+>>>>>>> c9d82ef8e884d27d6c5215d5b2fb851cf81162f8
+=======
+/cpp/wiiuse/Debug/src
+>>>>>>> develop-wiiuse
diff --git a/cpp/mimis/.settings/org.eclipse.cdt.codan.core.prefs b/cpp/mimis/.settings/org.eclipse.cdt.codan.core.prefs
deleted file mode 100644
index 5d18018..0000000
--- a/cpp/mimis/.settings/org.eclipse.cdt.codan.core.prefs
+++ /dev/null
@@ -1,66 +0,0 @@
-#Wed Sep 28 10:46:29 CEST 2011
-eclipse.preferences.version=1
-org.eclipse.cdt.codan.checkers.errnoreturn=Warning
-org.eclipse.cdt.codan.checkers.errnoreturn.params={implicit\=>false}
-org.eclipse.cdt.codan.checkers.errreturnvalue=Error
-org.eclipse.cdt.codan.checkers.errreturnvalue.params={}
-org.eclipse.cdt.codan.checkers.noreturn=Error
-org.eclipse.cdt.codan.checkers.noreturn.params={implicit\=>false}
-org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error
-org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error
-org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error
-org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={no_break_comment\=>"no break",last_case_param\=>true,empty_case_param\=>false}
-org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning
-org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={unknown\=>false,exceptions\=>()}
-org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error
-org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error
-org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error
-org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error
-org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error
-org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info
-org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
-org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error
-org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error
-org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning
-org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning
-org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={macro\=>true,exceptions\=>()}
-org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={paramNot\=>false}
-org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={else\=>false,afterelse\=>false}
-org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
-org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={}
-org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
-org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={exceptions\=>("@(\#)","$Id")}
-org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
-org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>false,RUN_ON_INC_BUILD\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true}}
diff --git a/cpp/mimis/Debug/copy.bat b/cpp/mimis/Debug/copy.bat
index 6a2bf07..1a0d3a1 100644
--- a/cpp/mimis/Debug/copy.bat
+++ b/cpp/mimis/Debug/copy.bat
@@ -1 +1 @@
-copy mimis.dll ..\..\Mimis\mimis.dll
\ No newline at end of file
+copy mimis.dll ..\..\..\java\mimis.dll
\ No newline at end of file
diff --git a/cpp/mimis/Release/copy.bat b/cpp/mimis/Release/copy.bat
index 6a2bf07..1a0d3a1 100644
--- a/cpp/mimis/Release/copy.bat
+++ b/cpp/mimis/Release/copy.bat
@@ -1 +1 @@
-copy mimis.dll ..\..\Mimis\mimis.dll
\ No newline at end of file
+copy mimis.dll ..\..\..\java\mimis.dll
\ No newline at end of file
diff --git a/cpp/mimis/wiiuse.dll b/cpp/mimis/wiiuse.dll
new file mode 100644
index 0000000..8272fcc
Binary files /dev/null and b/cpp/mimis/wiiuse.dll differ
diff --git a/cpp/Wiipair/.cproject b/cpp/wiipair/.cproject
similarity index 100%
rename from cpp/Wiipair/.cproject
rename to cpp/wiipair/.cproject
diff --git a/cpp/Wiipair/.project b/cpp/wiipair/.project
similarity index 100%
rename from cpp/Wiipair/.project
rename to cpp/wiipair/.project
diff --git a/cpp/mimis/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/cpp/wiipair/.settings/org.eclipse.cdt.managedbuilder.core.prefs
similarity index 54%
rename from cpp/mimis/.settings/org.eclipse.cdt.managedbuilder.core.prefs
rename to cpp/wiipair/.settings/org.eclipse.cdt.managedbuilder.core.prefs
index e5d73c0..31dfb57 100644
--- a/cpp/mimis/.settings/org.eclipse.cdt.managedbuilder.core.prefs
+++ b/cpp/wiipair/.settings/org.eclipse.cdt.managedbuilder.core.prefs
@@ -1,26 +1,25 @@
-#Sun Jul 17 20:05:29 CEST 2011
-eclipse.preferences.version=1
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/CPLUS_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/CPLUS_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/appendContributed=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/CPLUS_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/CPLUS_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.debug.36925639/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.cygwin.so.release.2109617530/appendContributed=true
+eclipse.preferences.version=1
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/CPATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/CPATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/CPLUS_INCLUDE_PATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/CPLUS_INCLUDE_PATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/C_INCLUDE_PATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/C_INCLUDE_PATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/append=true
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/appendContributed=true
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPLUS_INCLUDE_PATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPLUS_INCLUDE_PATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/C_INCLUDE_PATH/delimiter=;
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/C_INCLUDE_PATH/operation=remove
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/append=true
+environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/appendContributed=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/LIBRARY_PATH/delimiter=;
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/LIBRARY_PATH/operation=remove
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/append=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.debug.1313294112/appendContributed=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/LIBRARY_PATH/delimiter=;
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/LIBRARY_PATH/operation=remove
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/append=true
+environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/appendContributed=true
diff --git a/cpp/Wiipair/Debug/wiipair.exe b/cpp/wiipair/Debug/wiipair.exe
similarity index 100%
rename from cpp/Wiipair/Debug/wiipair.exe
rename to cpp/wiipair/Debug/wiipair.exe
diff --git a/cpp/Wiipair/Release/wiipair.exe b/cpp/wiipair/Release/wiipair.exe
similarity index 99%
rename from cpp/Wiipair/Release/wiipair.exe
rename to cpp/wiipair/Release/wiipair.exe
index 2442cc2..3991a44 100644
Binary files a/cpp/Wiipair/Release/wiipair.exe and b/cpp/wiipair/Release/wiipair.exe differ
diff --git a/cpp/Wiipair/include/BluetoothAPIs.h b/cpp/wiipair/include/BluetoothAPIs.h
similarity index 100%
rename from cpp/Wiipair/include/BluetoothAPIs.h
rename to cpp/wiipair/include/BluetoothAPIs.h
diff --git a/cpp/Wiipair/include/bthdef.h b/cpp/wiipair/include/bthdef.h
similarity index 100%
rename from cpp/Wiipair/include/bthdef.h
rename to cpp/wiipair/include/bthdef.h
diff --git a/cpp/Wiipair/include/bthsdpdef.h b/cpp/wiipair/include/bthsdpdef.h
similarity index 100%
rename from cpp/Wiipair/include/bthsdpdef.h
rename to cpp/wiipair/include/bthsdpdef.h
diff --git a/cpp/Wiipair/include/strsafe.h b/cpp/wiipair/include/strsafe.h
similarity index 100%
rename from cpp/Wiipair/include/strsafe.h
rename to cpp/wiipair/include/strsafe.h
diff --git a/cpp/Wiipair/lib/DelcomDLL.lib b/cpp/wiipair/lib/DelcomDLL.lib
similarity index 100%
rename from cpp/Wiipair/lib/DelcomDLL.lib
rename to cpp/wiipair/lib/DelcomDLL.lib
diff --git a/cpp/Wiipair/lib/advapi32.lib b/cpp/wiipair/lib/advapi32.lib
similarity index 100%
rename from cpp/Wiipair/lib/advapi32.lib
rename to cpp/wiipair/lib/advapi32.lib
diff --git a/cpp/Wiipair/lib/comdlg32.lib b/cpp/wiipair/lib/comdlg32.lib
similarity index 100%
rename from cpp/Wiipair/lib/comdlg32.lib
rename to cpp/wiipair/lib/comdlg32.lib
diff --git a/cpp/Wiipair/lib/gdi32.lib b/cpp/wiipair/lib/gdi32.lib
similarity index 100%
rename from cpp/Wiipair/lib/gdi32.lib
rename to cpp/wiipair/lib/gdi32.lib
diff --git a/cpp/Wiipair/lib/irprops.lib b/cpp/wiipair/lib/irprops.lib
similarity index 100%
rename from cpp/Wiipair/lib/irprops.lib
rename to cpp/wiipair/lib/irprops.lib
diff --git a/cpp/Wiipair/lib/kernel32.lib b/cpp/wiipair/lib/kernel32.lib
similarity index 100%
rename from cpp/Wiipair/lib/kernel32.lib
rename to cpp/wiipair/lib/kernel32.lib
diff --git a/cpp/Wiipair/lib/libcpmt.lib b/cpp/wiipair/lib/libcpmt.lib
similarity index 100%
rename from cpp/Wiipair/lib/libcpmt.lib
rename to cpp/wiipair/lib/libcpmt.lib
diff --git a/cpp/Wiipair/lib/odbc32.lib b/cpp/wiipair/lib/odbc32.lib
similarity index 100%
rename from cpp/Wiipair/lib/odbc32.lib
rename to cpp/wiipair/lib/odbc32.lib
diff --git a/cpp/Wiipair/lib/odbccp32.lib b/cpp/wiipair/lib/odbccp32.lib
similarity index 100%
rename from cpp/Wiipair/lib/odbccp32.lib
rename to cpp/wiipair/lib/odbccp32.lib
diff --git a/cpp/Wiipair/lib/ole32.lib b/cpp/wiipair/lib/ole32.lib
similarity index 100%
rename from cpp/Wiipair/lib/ole32.lib
rename to cpp/wiipair/lib/ole32.lib
diff --git a/cpp/Wiipair/lib/oleaut32.lib b/cpp/wiipair/lib/oleaut32.lib
similarity index 100%
rename from cpp/Wiipair/lib/oleaut32.lib
rename to cpp/wiipair/lib/oleaut32.lib
diff --git a/cpp/Wiipair/lib/shell32.lib b/cpp/wiipair/lib/shell32.lib
similarity index 100%
rename from cpp/Wiipair/lib/shell32.lib
rename to cpp/wiipair/lib/shell32.lib
diff --git a/cpp/Wiipair/lib/user32.lib b/cpp/wiipair/lib/user32.lib
similarity index 100%
rename from cpp/Wiipair/lib/user32.lib
rename to cpp/wiipair/lib/user32.lib
diff --git a/cpp/Wiipair/lib/uuid.lib b/cpp/wiipair/lib/uuid.lib
similarity index 100%
rename from cpp/Wiipair/lib/uuid.lib
rename to cpp/wiipair/lib/uuid.lib
diff --git a/cpp/Wiipair/lib/wiiuse.lib b/cpp/wiipair/lib/wiiuse.lib
similarity index 100%
rename from cpp/Wiipair/lib/wiiuse.lib
rename to cpp/wiipair/lib/wiiuse.lib
diff --git a/cpp/Wiipair/lib/winspool.lib b/cpp/wiipair/lib/winspool.lib
similarity index 100%
rename from cpp/Wiipair/lib/winspool.lib
rename to cpp/wiipair/lib/winspool.lib
diff --git a/cpp/Wiipair/src/wiipair.cpp b/cpp/wiipair/src/wiipair.cpp
similarity index 100%
rename from cpp/Wiipair/src/wiipair.cpp
rename to cpp/wiipair/src/wiipair.cpp
diff --git a/cpp/wiiscan/.settings/org.eclipse.cdt.managedbuilder.core.prefs b/cpp/wiiscan/.settings/org.eclipse.cdt.managedbuilder.core.prefs
deleted file mode 100644
index 14ad3ce..0000000
--- a/cpp/wiiscan/.settings/org.eclipse.cdt.managedbuilder.core.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Sat Oct 15 11:50:13 CEST 2011
-eclipse.preferences.version=1
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPLUS_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/CPLUS_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/C_INCLUDE_PATH/delimiter=;
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/C_INCLUDE_PATH/operation=remove
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/append=true
-environment/buildEnvironmentInclude/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/appendContributed=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/LIBRARY_PATH/delimiter=;
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/LIBRARY_PATH/operation=remove
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/append=true
-environment/buildEnvironmentLibrary/cdt.managedbuild.config.gnu.mingw.exe.release.1147005981/appendContributed=true
diff --git a/cpp/wiiscan/lib/wiiuse.lib b/cpp/wiiscan/lib/wiiuse.lib
index 906e164..c510043 100644
Binary files a/cpp/wiiscan/lib/wiiuse.lib and b/cpp/wiiscan/lib/wiiuse.lib differ
diff --git a/cpp/wiiuse/Debug/wiiuse.dll b/cpp/wiiuse/Debug/wiiuse.dll
new file mode 100644
index 0000000..8272fcc
Binary files /dev/null and b/cpp/wiiuse/Debug/wiiuse.dll differ
diff --git a/cpp/wiiuse/Debug/wiiuse.lib b/cpp/wiiuse/Debug/wiiuse.lib
new file mode 100644
index 0000000..c510043
Binary files /dev/null and b/cpp/wiiuse/Debug/wiiuse.lib differ
diff --git a/cpp/wiiusej/.cproject b/cpp/wiiusej/.cproject
index 9f6b0cd..e199e3f 100644
--- a/cpp/wiiusej/.cproject
+++ b/cpp/wiiusej/.cproject
@@ -13,7 +13,7 @@
-
+
@@ -39,6 +39,7 @@
@@ -88,7 +89,7 @@
-
+
@@ -114,6 +115,7 @@
@@ -125,7 +127,7 @@
-
+
@@ -173,4 +175,5 @@
+
diff --git a/cpp/wiiusej/.project b/cpp/wiiusej/.project
index 0b1461f..81a88c3 100644
--- a/cpp/wiiusej/.project
+++ b/cpp/wiiusej/.project
@@ -1,6 +1,6 @@
- WiiuseJ
+ WiiuseJ library
diff --git a/cpp/wiiusej/lib/wiiuse.lib b/cpp/wiiusej/lib/wiiuse.lib
index 0c6fe6e..6425e72 100644
Binary files a/cpp/wiiusej/lib/wiiuse.lib and b/cpp/wiiusej/lib/wiiuse.lib differ
diff --git a/java/.classpath b/java/.classpath
new file mode 100644
index 0000000..2e201e9
--- /dev/null
+++ b/java/.classpath
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/java/.project b/java/.project
new file mode 100644
index 0000000..5605d1a
--- /dev/null
+++ b/java/.project
@@ -0,0 +1,17 @@
+
+
+ Mimis
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/java/WiiPair.exe b/java/WiiPair.exe
new file mode 100644
index 0000000..f16c97d
Binary files /dev/null and b/java/WiiPair.exe differ
diff --git a/java/client.jar b/java/client.jar
new file mode 100644
index 0000000..15b5e21
Binary files /dev/null and b/java/client.jar differ
diff --git a/java/main.jar b/java/main.jar
new file mode 100644
index 0000000..d6166a0
Binary files /dev/null and b/java/main.jar differ
diff --git a/java/mimis.dll b/java/mimis.dll
index 1bfdfea..259eb99 100644
Binary files a/java/mimis.dll and b/java/mimis.dll differ
diff --git a/java/src/mimis/device/wiimote/WiimoteDevice.java b/java/src/mimis/device/wiimote/WiimoteDevice.java
index 77259bf..1d4b04e 100644
--- a/java/src/mimis/device/wiimote/WiimoteDevice.java
+++ b/java/src/mimis/device/wiimote/WiimoteDevice.java
@@ -35,7 +35,6 @@ public class WiimoteDevice extends Component implements Device, GestureListener
protected static WiimoteService wiimoteService;
protected WiimoteTaskMapCycle taskMapCycle;
- protected WiimoteDiscovery wiimoteDiscovery;
protected Wiimote wiimote;
protected boolean connected;
protected GestureDevice gestureDevice;
@@ -52,7 +51,6 @@ public class WiimoteDevice extends Component implements Device, GestureListener
public WiimoteDevice() {
super(TITLE);
taskMapCycle = new WiimoteTaskMapCycle();
- wiimoteDiscovery = new WiimoteDiscovery(this);
gestureDevice = new GestureDevice();
gestureDevice.add(this);
motionDevice = new MotionDevice(this);
@@ -62,14 +60,15 @@ public class WiimoteDevice extends Component implements Device, GestureListener
/* Worker */
protected void activate() throws ActivateException {
- motionDevice.setRouter(router);
- motionDevice.start();
- parser(Action.ADD, taskMapCycle.player);
- wiimote = null;
+ if (wiimote == null) {
+ motionDevice.setRouter(router);
+ motionDevice.start();
+ parser(Action.ADD, taskMapCycle.player);
+ }
try {
connect();
} catch (DeviceNotFoundException e) {
- wiimoteDiscovery.start();
+ log.warn(e);
}
super.activate();
}
@@ -98,13 +97,9 @@ public class WiimoteDevice extends Component implements Device, GestureListener
protected void deactivate() throws DeactivateException {
super.deactivate();
ledWorker.stop();
- wiimoteDiscovery.stop();
motionDevice.stop();
- if (disconnect) {
- if (wiimote != null) {
- wiimote.disconnect();
- }
- wiimoteDiscovery.disconnect();
+ if (disconnect && wiimote != null) {
+ wiimote.disconnect();
disconnect = false;
}
}
@@ -117,7 +112,6 @@ public class WiimoteDevice extends Component implements Device, GestureListener
wiimote = null;
}
wiimoteService.exit();
- wiimoteDiscovery.exit();
motionDevice.exit();
}
@@ -182,22 +176,24 @@ public class WiimoteDevice extends Component implements Device, GestureListener
public void feedback(Feedback feedback) {
if (wiimote != null && active()) {
- //log.debug("Wiimote rumble feedback");
- //wiimote.rumble(RUMBLE);
+ log.debug("Wiimote rumble feedback");
+ wiimote.rumble(RUMBLE);
}
}
/* Connectivity */
public synchronized void connect() throws DeviceNotFoundException {
wiimote = wiimoteService.getDevice(this);
- //wiimote.activateContinuous();
+ wiimote.activateContinuous();
wiimote.activateMotionSensing();
- wiimoteDiscovery.stop();
ledWorker.start();
}
/* Listeners */
public void onButtonsEvent(WiimoteButtonsEvent event) {
+ if (!active) {
+ return;
+ }
int pressed = event.getButtonsJustPressed() - event.getButtonsHeld();
int released = event.getButtonsJustReleased();
try {
@@ -214,6 +210,9 @@ public class WiimoteDevice extends Component implements Device, GestureListener
}
public void onMotionSensingEvent(MotionSensingEvent event) {
+ if (!active) {
+ return;
+ }
gestureDevice.add(event.getGforce());
motionDevice.add(event);
}
diff --git a/java/src/mimis/device/wiimote/WiimoteService.java b/java/src/mimis/device/wiimote/WiimoteService.java
index 6ff2480..2d905be 100644
--- a/java/src/mimis/device/wiimote/WiimoteService.java
+++ b/java/src/mimis/device/wiimote/WiimoteService.java
@@ -30,12 +30,12 @@ import wiiusej.wiiusejevents.wiiuseapievents.StatusEvent;
public class WiimoteService extends WiiUseApiManager implements WiimoteListener {
protected Log log = LogFactory.getLog(getClass());
- public static void main(String[] args) {
+ /*public static void main(String[] args) {
Log log = LogFactory.getLog(WiimoteService.class);
for (Wiimote wm : WiiUseApiManager.getWiimotes(1, false)) {
log.debug(wm);
}
- }
+ }*/
protected final boolean RUMBLE = false;
@@ -81,10 +81,11 @@ public class WiimoteService extends WiiUseApiManager implements WiimoteListener
}
public void onButtonsEvent(WiimoteButtonsEvent event) {
- getWiimoteDevice(event).onButtonsEvent(event);
+ getWiimoteDevice(event).onButtonsEvent(event);
}
public void onMotionSensingEvent(MotionSensingEvent event) {
+
getWiimoteDevice(event).onMotionSensingEvent(event);
}
diff --git a/java/src/mimis/worker/Worker.java b/java/src/mimis/worker/Worker.java
index 2371cb9..7c41120 100644
--- a/java/src/mimis/worker/Worker.java
+++ b/java/src/mimis/worker/Worker.java
@@ -12,24 +12,31 @@ public abstract class Worker implements Runnable {
protected static final boolean THREAD = false;
protected static final int SLEEP = 100;
+ protected boolean thread = true;
protected boolean interrupt;
protected boolean run = false;
protected boolean active = false;
protected boolean activate = false;
protected boolean deactivate = false;
- public final void start(boolean thread) {
+ public Worker() {}
+
+ public Worker(boolean thread) {
+ this.thread = thread;
+ }
+
+ public synchronized final void start(boolean thread) {
if (!active) {
activate = true;
}
if (!run) {
run = true;
if (thread) {
- log.debug("Run directly");
- run();
- } else {
log.debug("Start thread");
new Thread(this, getClass().getName()).start();
+ } else {
+ log.debug("Run directly");
+ run();
}
} else {
notifyAll();
@@ -37,7 +44,7 @@ public abstract class Worker implements Runnable {
}
public synchronized final void start() {
- start(THREAD);
+ start(thread);
}
public synchronized final void stop() {