Name = pjrcUSBCapabilities;
-Version = 0.2;
-Author = "HaaTa (Jacob Alexander) 2014";
-KLL = 0.3;
+Version = 0.7;
+Author = "HaaTa (Jacob Alexander) 2014-2016";
+KLL = 0.3d;
# Modified Date
-Date = 2014-09-20;
+Date = 2016-03-20;
-# Capabilties available to the pjrcUSB output module
+# Output capabilities
consCtrlOut => Output_consCtrlSend_capability( consCode : 2 );
+noneOut => Output_noneSend_capability();
sysCtrlOut => Output_sysCtrlSend_capability( sysCode : 1 );
usbKeyOut => Output_usbCodeSend_capability( usbCode : 1 );
+mouseOut => Output_usbMouse_capability( mouseCode : 2 );
+
+# Configuration capabilities
+kbdProtocolBoot => Output_kbdProtocolBoot_capability();
+kbdProtocolNKRO => Output_kbdProtocolNKRO_capability();
+
+# Locale Settings
+keyboardLocale => KeyboardLocale_define;
+keyboardLocale = 0;
+
+# Default KRO Mode
+# Set to 0 for Boot Mode (6KRO)
+# Set to 1 for NKRO Mode (default)
+usbProtocol => USBProtocol_define;
+usbProtocol = 1;
+
+# Bootloader Mode capability
+# XXX
+# By default this is disabled on purpose
+# It is a large security hazard
+flashModeEnabled => flashModeEnabled_define;
+flashModeEnabled = 0;
+
+flashMode => Output_flashMode_capability();