<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Programs</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>Recent changes to Programs</description><atom:link href="https://sourceforge.net/p/ledspicer/wiki/Programs/feed" rel="self"/><language>en</language><lastBuildDate>Mon, 29 Aug 2022 04:04:21 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/ledspicer/wiki/Programs/feed" rel="self" type="application/rss+xml"/><item><title>Programs modified by MeduZaPaT</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v71
+++ v72
@@ -7,7 +7,7 @@
 It's intended to be started when the whole system boots up as a daemon. If not set to run as a daemon, it should be run in the foreground (documented below.)

 **Important**
-The LEDSPicer daemon can be run as a normal user or root, if running under a normal user, be sure that the usb is readable and writable by that user, configuration files only need read access. I added a USB rules file to be used in case of running the program as non root users.
+The LEDSPicer daemon can be run as a normal user or root, if running under a normal user, be sure that the USB is readable and writable by that user, configuration files only need read access. I added a USB rules file to be used in case of running the program as non-root users.

 The first thing the program does is check the command line parameters and load the configuration file.
 *The default location for the configuration file can be changed, (check the help for more information)*
@@ -59,7 +59,7 @@
 ledspicerd -p profile_name
 ledspicerd --profile profile_name
 ```
-This will load the profile and verify that it is compatible with the configuration and then display the settings on screen.
+This will load the profile and verify that it is compatible with the configuration, and then display the settings on screen.

 #### -l --leds (LEDs test)
 This interactive mode will read the user input and turn on LEDs on the board, really useful to map and test your physical setup
@@ -117,7 +117,7 @@
 ```
 ####LoadProfileByEmulator

-This command loads a profile based on information about the ROM and emulator. It takes 2 arguments, rom name and emulator name. For all flavors of MAME just use "arcade" as the emulator name.
+This command loads a profile based on information about the ROM and emulator. It takes 2 arguments, ROM name and emulator name. For all flavors of MAME just use "arcade" as the emulator name.

 ```bash
 emitter LoadProfileByEmulator rom emulator
@@ -132,7 +132,7 @@
 4. Load the default profile

 ##### Rom Profiles
-A rom profile is the most specific profile type. It must be named after the ROM and placed in a folder named after the emulator. For instance: ledspicer/profiles/arcade/galaga.xml
+A ROM profile is the most specific profile type. It must be named after the ROM and placed in a folder named after the emulator. For instance: ledspicer/profiles/arcade/galaga.xml

 ##### Controller Profiles (for MAME ROMs only)
 When the emulator is MAME, LEDSpicer will attempt to load a profile based on the controls listed in MAME, or the controls.ini file (if found in your LEDSpicer directory.) Controller profiles should be named using the following convention: **Tx_By** 
@@ -209,7 +209,7 @@

 ##Input Seeker
 Input seeker simplifies the [_input plugin_](https://sourceforge.net/p/ledspicer/wiki/Mame/) setup. When the user interacts with any control or button, it will display the device name and the code needed to setup the [_input plugin_](https://sourceforge.net/p/ledspicer/wiki/Mame/).
-Note: this program doesn't need configuration and takes no parameters. Call it and it will display input events for any available control or button. 
+Note: this program doesn't need configuration and takes no parameters. Call it, and it will display input events for any available control or button. 
 ```sh
 inputseeker
 ```
@@ -221,7 +221,7 @@
 Where:
 - **some_device_name-event** is the device name
 - **code: 30** is the key code (key 'a' in this case)
--** Type: KEY(On)** is extra info, it means that you pressed a key/button, and when it say Off means you released that key/button.  Normally key on/off events are shown in pairs
+-** Type: KEY(On)** is extra info, it means that you pressed a key/button, and when it says Off means you released that key/button.  Normally, key on/off events are shown in pairs

 This program also detects other types of events including MOVE and others as well as relative and absolute events like mouse, analog joysticks and more.

@@ -254,7 +254,7 @@

 ***name: *** Name can be one of the following: UltraStik360, ServoStik, GPWiz49, GPWiz40RotoX
 *** boardId:***  When  only using one of a specific joystick/encoder, use "1". If you ordered more than one to be used together on the same control panel and had to specify a boardId (usually between 1-4) when ordering, use that number here.
-***joystick:***  When using 1 joystick for a specific player, just use "1". When using more than 1 joystick for a  player, set a unique number for each of that players joysticks. This number is not unique across ALL players, but must be unique for every joystick that a specific player will use. 
+***joystick:***  When using 1 joystick for a specific player, just use "1". When using more than 1 joystick for a  player, set a unique number for each of that player's joysticks. This number is not unique across ALL players, but must be unique for every joystick that a specific player will use. 

 Additional parameters are available and  vary from item to item. Please review the additional parameters and requirements  documented in the following examples.

@@ -318,7 +318,7 @@

 ####Config parameters:
 **ultraStik360:**
-hasRestrictor true|false if you have the restrictor set this to true other case is optional.
+hasRestrictor true|false if you have the restrictor set this to true, other case is optional.
 handleMouse true|false if a game uses a mouse and this is true, the joystick will be set as a mouse.

 **servoStik:**
@@ -333,13 +333,13 @@
 speedOff a number from 1 to 255 for the length of time the button is depressed and released before sending a signal again.

 ### Examples and Modes
-To change player 1 joystick 1 to 4 ways:
+To change player 1 joystick 1 into 4 ways:
 ```sh
 rotator 1 1 4
 ```
-The first number is the player (1, 2, 3, etc)
-The second number is the Joystick number (1, 2, etc) evey player can have multiple joysticks with restrictors
-The last value is the joystick mode (2-way, 4-way, 8-way, etc). It uses the same values as MAME:
+The first number is the player (1, 2, 3, etc.)
+The second number is the Joystick number (1, 2, etc.) every player can have multiple joysticks with restrictors
+The last value is the joystick mode (2-way, 4-way, 8-way, etc.). It uses the same values as MAME:
 &lt;table&gt;
 &lt;tbody&gt;&lt;tr&gt;
 &lt;th&gt;Way
@@ -487,7 +487,7 @@
 &amp;gt; If you are using MiSTer you need to compile this program for mister, and only add  &amp;lt;processlookup runevery="500"&amp;gt; and the program will just work.
 &amp;gt; If you are using retroarch (TODO)

-To activate this program you need to add  into the config (ledspicer.conf) , the section &amp;lt;processlookup&amp;gt; and add some mappings and run the daemon (you can run it at startpup along with ledspicerd).
+To activate this program you need to add  into the config (ledspicer.conf), the section &amp;lt;processlookup&amp;gt; and add some mappings and run the daemon (you can run it at startpup along with ledspicerd).

 The only optional parameter is  runEvery, in here you set the ms the program wait between checks. if not set the default is 1000 (1 second)
 Every map will have a process name (the binary) and two optional parameters position (default to 1) and system (default to arcade)
@@ -508,4 +508,4 @@
        &lt;map&gt;
    &lt;/map&gt;&amp;lt;/processlookup&amp;gt;
 ```
-to find the process command line I suggest checking your UI system rules, in there you will find how the program call the emulators.
+To find the process command line, I suggest checking your UI system rules, in there you will find how the program call the emulators.

&amp;lt;/processlookup&amp;gt;&amp;lt;/processlookup&amp;gt;&lt;/th&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/pre&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MeduZaPaT</dc:creator><pubDate>Mon, 29 Aug 2022 04:04:21 -0000</pubDate><guid>https://sourceforge.net832dcfd91a61b7a1424e65c61ce13bbe12d16f1d</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v70
+++ v71
@@ -479,7 +479,7 @@
 ----------------

 ##processLookup
-Process lookup is a daemon that seeks for processes, when they start, it will read the command line to extrat the ROM information and calls emitter with that information to load the profiles.
+Process lookup is a daemon that seeks for processes, when they start, it will read the command line to extract the ROM information and calls *emitter* with that information to load the profiles.
 Run this command to see the help.
 ```sh
 processLookup -h
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Mon, 19 Oct 2020 05:11:37 -0000</pubDate><guid>https://sourceforge.netfc4b8931fd63ffba25a3d7bf04d96d3b6341d10f</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v69
+++ v70
@@ -4,53 +4,70 @@

 ##LEDSpicer daemon
 The main program, that is the one that will speak directly with the USB interface, in order to control the LEDs on the board, is ledspicerd, this program is capable of handling different boards *(1)* and settings.
-Its intended to be started when the whole system boots up.
+It's intended to be started when the whole system boots up as a daemon. If not set to run as a daemon, it should be run in the foreground (documented below.)

 **Important**
-It can be run as a normal user or root, if running under a normal user, be sure that the usb is readable and writable by that user, configuration files only need read access.
-I added a USB rules file to be used in case of running the program as non root users.
+The LEDSPicer daemon can be run as a normal user or root, if running under a normal user, be sure that the usb is readable and writable by that user, configuration files only need read access. I added a USB rules file to be used in case of running the program as non root users.

 The first thing the program does is check the command line parameters and load the configuration file.
 *The default location for the configuration file can be changed, (check the help for more information)*

-To get help use this command line parameter:
+###Options
+
+#### -f --foreground (run LEDSpicer in foreground)
+
+If not running as a daemon, ledspicerd can be run in the foreground. This is useful for testing, but otherwise should be run when the system launches as a daemon. When the *daemon* is executed, it will run detached and independently, and will log anything important  to the system's log (syslog).
+
+```bash
+ledspicerd -f
+ledspicerd --foreground
+```
+
+#### -h  --help (get help)
+
+To see the help list,  use this command line parameter:
+
 ```bash
 ledspicerd -h
 ledspicerd --help
 ```
-That will return the whole help.
-
-Use an alternative configuration file
+
+#### -c --config (change configurations)
+
+To use an alternative configuration file, use the -c option
+
 ```bash
 ledspicerd -c /path/to/conf/file
 ledspicerd --config /path/to/conf/file
 ```
-When the daemon is executed, it will run detached and independently, and will log anything important  into the system's log (syslog).
-
-The program can display the configuration by doing a dump:
+Changing to an alternative configuration file is only temporary,  and should be paired with a command. 
+
+#### -d --dump (dump configurations)
+
+The program can display the  current configuration by doing a dump:
 ```bash
 ledspicerd -d
 ledspicerd --dump
 ```
-This will display the program internal settings after read the configuration files, this dump is really important when creating and debugging configurations.
+This will display the program's internal settings after read the configuration files. This dump is really important when creating and debugging configurations.
 This dump will also read and display the colors file.

-To debug profiles and animation files use this:
+#### -p --profile (dump profile)
+
+This will display the current profile by doing a dump
 ```bash
 ledspicerd -p profile_name
 ledspicerd --profile profile_name
 ```
-This will load the profile and verify that is compatible with the configuration and then display the settings on screen.
-
-Other two important tools are the hardware test:
-**LEDs test**
-This interactive mode will read the user input and turn on LEDs on the board, really useful to map the whole thing.
+This will load the profile and verify that it is compatible with the configuration and then display the settings on screen.
+
+#### -l --leds (LEDs test)
+This interactive mode will read the user input and turn on LEDs on the board, really useful to map and test your physical setup
 ```bash
 ledspicerd -l
 ledspicerd --leds
 ```
-
-**Elements test**
+#### -e --elements (elements test)
 This interactive mode will use the user's configuration and turn on elements on the layout, useful to test that the LEDs are assigned correctly.
 ```bash
 ledspicerd -e
@@ -273,26 +290,30 @@

 ###Rotator Parameters

-####To get help use this command line parameter:
+#### -h  --help (get help)
+To get help use this command line parameter:
 ```bash
 rotator -h
 rotator --help
 ```
-####Use an alternative configuration file:
+#### -c --config (change configurations)
+
+To use an alternative configuration file, use the -c option
+
 ```bash
 rotator -c /path/to/conf/file
 rotator --config /path/to/conf/file
 ```
-####To get version number:
+#### -v --version (get version number)
 ```bash
 rotator -v
 rotator --version
 ```
-####Reset to Ways:
-Will reset all the restrictors on the config to the desired ways.
-```bash
-rotator -r ways
-rotator --reset ways
+#### -r --reset (reset restrictors)
+The --reset option will reset all the restrictors on the config to the desired ways.
+```bash
+rotator -r ways (the number of ways)
+rotator --reset ways (the number of ways)
 ```

 ####Config parameters:
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Mon, 19 Oct 2020 05:08:26 -0000</pubDate><guid>https://sourceforge.net5bdde253487c1002b0c5512cca179fc75cb41aa7</guid></item><item><title>Programs modified by MeduZaPaT</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v68
+++ v69
@@ -454,3 +454,37 @@
 rotator 1 1 4 2 1 4
 ```
 You can add as many as needed as soon as they are available on the config will be used.
+
+----------------
+
+##processLookup
+Process lookup is a daemon that seeks for processes, when they start, it will read the command line to extrat the ROM information and calls emitter with that information to load the profiles.
+Run this command to see the help.
+```sh
+processLookup -h
+```
+&amp;gt; If you are using MiSTer you need to compile this program for mister, and only add  &amp;lt;processlookup runevery="500"&amp;gt; and the program will just work.
+&amp;gt; If you are using retroarch (TODO)
+
+To activate this program you need to add  into the config (ledspicer.conf) , the section &amp;lt;processlookup&amp;gt; and add some mappings and run the daemon (you can run it at startpup along with ledspicerd).
+
+The only optional parameter is  runEvery, in here you set the ms the program wait between checks. if not set the default is 1000 (1 second)
+Every map will have a process name (the binary) and two optional parameters position (default to 1) and system (default to arcade)
+position is the location where the rom will be find in the command line, lets asume you UI will run mame like this:
+```
+mame -parameter1 -parameter2 ronname
+                     1                          2                            3
+```
+in this case position will be 3
+
+system is the system type, for any arcade type this parameter is not needed, but if you run something like snes emulator you need to set it acordely to your snes profile name.
+
+Example:
+```xml
+   &amp;lt;processlookup runevery="500"&amp;gt;
+       &lt;map&gt;
+       &lt;map&gt;
+       &lt;map&gt;
+   &lt;/map&gt;&lt;/map&gt;&lt;/map&gt;&amp;lt;/processlookup&amp;gt;
+```
+to find the process command line I suggest checking your UI system rules, in there you will find how the program call the emulators.
&amp;lt;/processlookup&amp;gt;&amp;lt;/processlookup&amp;gt;&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MeduZaPaT</dc:creator><pubDate>Tue, 06 Oct 2020 14:57:52 -0000</pubDate><guid>https://sourceforge.net671b1d4644ace9b6549cdc81e9e4e3f62ede1366</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v67
+++ v68
@@ -191,7 +191,7 @@
 ----------------

 ##Input Seeker
-Input seeker simplifies the _input plugin_ setup. When the user interacts with any control or button, it will display the device name and the code needed to setup the _input plugin_.
+Input seeker simplifies the [_input plugin_](https://sourceforge.net/p/ledspicer/wiki/Mame/) setup. When the user interacts with any control or button, it will display the device name and the code needed to setup the [_input plugin_](https://sourceforge.net/p/ledspicer/wiki/Mame/).
 Note: this program doesn't need configuration and takes no parameters. Call it and it will display input events for any available control or button. 
 ```sh
 inputseeker
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Sun, 23 Aug 2020 15:12:53 -0000</pubDate><guid>https://sourceforge.net1f6d15b14461c73d73c858c47095dc2c15ec9a62</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v66
+++ v67
@@ -163,12 +163,12 @@
 emitter SetElement elementName color filter
 ```
 #### ClearElement
-To remove an element's background color.
+To remove an element's changed background color. 
 ```bash
 emitter ClearElement elementName
 ```
 #### ClearAllElements
-To remove all element's background color changes.
+To remove all elements' changed background colors.
 ```bash
 emitter ClearAllElements
 ```
@@ -178,12 +178,12 @@
 emitter SetGroup groupName color filter
 ```
 #### ClearGroup
-To remove a group's background color.
+To remove a group's changed background color.
 ```bash
 emitter ClearGroup groupName
 ```
 #### ClearAllGroups
-To remove all group's background color changes.
+To remove all groups' changed background colors.
 ```bash
 emitter ClearAllGroups
 ```
@@ -191,24 +191,22 @@
 ----------------

 ##Input Seeker
-Input seeker is a small program I wrote to easy the input plugin setup, it will detect all the inputs on the system and waits for the user to interact, then it will display the device name  and the code needed to setup the plugins.
-This program does not need any parameter or config run it by typing:
+Input seeker simplifies the _input plugin_ setup. When the user interacts with any control or button, it will display the device name and the code needed to setup the _input plugin_.
+Note: this program doesn't need configuration and takes no parameters. Call it and it will display input events for any available control or button. 
 ```sh
 inputseeker
 ```
-it will display the devices it detects attached to the system and start displaying events, every row will looks like this:
+Inputseeker will display the devices it detects attached to the system. Upon user interaction it will start displaying events; each row  will look something like this: 
 ```sh
 Listen Event: some_device_name-event code: 30 Type: KEY(On)
 Listen Event: some_device_name-event code: 30 Type: KEY(Off)
 ```
 Where:
-&lt;ul&gt;
-&lt;li&gt;some_device_name-event is the device name.
-&lt;/li&gt;&lt;li&gt;code: 30 is the key code (key 'a' in this case)
-&lt;/li&gt;&lt;li&gt;Type: KEY(On) is extra info, it means that you pressed a KEY, and when it say Off means you released that key, they normaly are in pairs.
-&lt;/li&gt;&lt;li&gt;Other type of event are detected as well, like MOVE and others.
-&lt;/li&gt;&lt;/ul&gt;
-This program also detects relative and absolute events like mouse, analog joysticks and more.
+- **some_device_name-event** is the device name
+- **code: 30** is the key code (key 'a' in this case)
+-** Type: KEY(On)** is extra info, it means that you pressed a key/button, and when it say Off means you released that key/button.  Normally key on/off events are shown in pairs
+
+This program also detects other types of events including MOVE and others as well as relative and absolute events like mouse, analog joysticks and more.

 ----------------

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Sun, 23 Aug 2020 15:08:50 -0000</pubDate><guid>https://sourceforge.netd498df641b58e79dab2146a45d7df0ad65927082</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v65
+++ v66
@@ -100,11 +100,11 @@
 ```
 ####LoadProfileByEmulator

-This command loads a profile based on information about the ROM and emulator. 
-
-```bash
-emitter LoadProfileByEmulator binary rom emulator
-ex: emitter LoadProfileByEmulator mame galaga arcade 
+This command loads a profile based on information about the ROM and emulator. It takes 2 arguments, rom name and emulator name. For all flavors of MAME just use "arcade" as the emulator name.
+
+```bash
+emitter LoadProfileByEmulator rom emulator
+ex: emitter LoadProfileByEmulator galaga arcade 
 ```
 When this command is run, in the following order LEDSpicer will attempt to: 

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Sun, 23 Aug 2020 14:52:12 -0000</pubDate><guid>https://sourceforge.net0331dd49b9d0b5805d2d4aae4d25cf42745d8744</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v64
+++ v65
@@ -376,7 +376,7 @@
 4
 4
 -
-A 4-way joystick with one direction restricted. Like tetris, only use down, left, right.
+Classic 4-way joystick
 
 
 4x
@@ -384,7 +384,7 @@
 4x
 4x
 -
-4-way joystick turned diagonally
+4-way joystick turned diagonally (Q-Bert)
 
 
 5 (half8)
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Sun, 23 Aug 2020 06:23:17 -0000</pubDate><guid>https://sourceforge.netd85f26164367be42a88a152468b30d2af6bad226</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v63
+++ v64
@@ -314,13 +314,13 @@
 speedOff a number from 1 to 255 for the length of time the button is depressed and released before sending a signal again.

 ### Examples and Modes
-Then if you want to change only player 1 joystick 1 to 4 ways do:
+To change player 1 joystick 1 to 4 ways:
 ```sh
 rotator 1 1 4
 ```
 The first number is the player (1, 2, 3, etc)
-The second number is the Joystick number (1, 2, etc) evey playe can have multimple joysticks with restrictors
-And the last value is the desired ways, it uses the same names as MAME:
+The second number is the Joystick number (1, 2, etc) evey player can have multiple joysticks with restrictors
+The last value is the joystick mode (2-way, 4-way, 8-way, etc). It uses the same values as MAME:
 
@@ -368,15 +368,15 @@
 
-
-
+
+
-
-
+
+&lt;table&gt;
 &lt;tbody&gt;&lt;tr&gt;
 &lt;th&gt;Way
@@ -336,7 +336,7 @@
 &lt;/th&gt;&lt;td&gt;2
 &lt;/td&gt;&lt;td&gt;2
 &lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;is like a lever
+&lt;/td&gt;&lt;td&gt;similar to lever or on-off switch
 &lt;/td&gt;&lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;2
@@ -357,8 +357,8 @@
 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;
 &lt;td&gt;vertical2
 &lt;/td&gt;&lt;td&gt;4
-&lt;/td&gt;&lt;td&gt;vertial 2
-&lt;/td&gt;&lt;td&gt;vertial 2
+&lt;/td&gt;&lt;td&gt;vertical 2
+&lt;/td&gt;&lt;td&gt;vertical 2
 &lt;/td&gt;&lt;td&gt;-
 &lt;/td&gt;&lt;td&gt;vertical 2 ways
 &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4
 &lt;/td&gt;&lt;td&gt;4
 &lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;like tetris, only use down left right.
-&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4
-&lt;/td&gt;&lt;td&gt;4
-&lt;/td&gt;&lt;td&gt;4
-&lt;/td&gt;&lt;td&gt;4
-&lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;like tetris, only use down left right.
+&lt;/td&gt;&lt;td&gt;A 4-way joystick with one direction restricted. Like tetris, only use down, left, right.
+&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4
+&lt;/td&gt;&lt;td&gt;4
+&lt;/td&gt;&lt;td&gt;4
+&lt;/td&gt;&lt;td&gt;4
+&lt;/td&gt;&lt;td&gt;-
+&lt;/td&gt;&lt;td&gt;A 4-way joystick with one direction restricted. Like tetris, only use down, left, right.
 &lt;/td&gt;&lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;4x
@@ -384,7 +384,7 @@
 &lt;/td&gt;&lt;td&gt;4x
 &lt;/td&gt;&lt;td&gt;4x
 &lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;4 ways diagonal
+&lt;/td&gt;&lt;td&gt;4-way joystick turned diagonally
 &lt;/td&gt;&lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;5 (half8)
@@ -392,15 +392,15 @@
 &lt;/td&gt;&lt;td&gt;8
 &lt;/td&gt;&lt;td&gt;8
 &lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;half 8 ways 5 directions
-&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;8
-&lt;/td&gt;&lt;td&gt;8
-&lt;/td&gt;&lt;td&gt;8
-&lt;/td&gt;&lt;td&gt;8
-&lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;Classic 8 ways
+&lt;/td&gt;&lt;td&gt;An 8-way joystick with one direction restricted. 
+&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;8
+&lt;/td&gt;&lt;td&gt;8
+&lt;/td&gt;&lt;td&gt;8
+&lt;/td&gt;&lt;td&gt;8
+&lt;/td&gt;&lt;td&gt;-
+&lt;/td&gt;&lt;td&gt;Classic 8-way joystick
 &lt;/td&gt;&lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;16
@@ -416,7 +416,7 @@
 &lt;/td&gt;&lt;td&gt;analog
 &lt;/td&gt;&lt;td&gt;49
 &lt;/td&gt;&lt;td&gt;-
-&lt;/td&gt;&lt;td&gt;Similar to analog
+&lt;/td&gt;&lt;td&gt;Similar to analog, used in Sinistar, Arch Rivals, etc
 &lt;/td&gt;&lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;analog
@@ -440,7 +440,7 @@
 &lt;/td&gt;&lt;td&gt;-
 &lt;/td&gt;&lt;td&gt;-
 &lt;/td&gt;&lt;td&gt;rotary8
-&lt;/td&gt;&lt;td&gt;Rotor 8 ways
+&lt;/td&gt;&lt;td&gt;Rotary 8 ways (Front Line aim-n-fire) 
 &lt;/td&gt;&lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;rotary12
@@ -448,7 +448,7 @@
 &lt;/td&gt;&lt;td&gt;-
 &lt;/td&gt;&lt;td&gt;-
 &lt;/td&gt;&lt;td&gt;rotary12
-&lt;/td&gt;&lt;td&gt;Rotor 12 ways
+&lt;/td&gt;&lt;td&gt;Rotary 12 ways (Ikari Warriors)
 &lt;/td&gt;&lt;/tr&gt;
 &lt;/tbody&gt;&lt;/table&gt;
 If you want to change player 1 and 2 just add them together:
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Sun, 23 Aug 2020 06:21:26 -0000</pubDate><guid>https://sourceforge.netab9417e0a716248a29d49e4390337c97f94843fa</guid></item><item><title>Programs modified by Chris Newton</title><link>https://sourceforge.net/p/ledspicer/wiki/Programs/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v62
+++ v63
@@ -129,7 +129,7 @@
     * LIGHTGUN
     * TRACKBALL
 * _x_ is player number
-* _B_ ... is just the letter B, for "button"
+* _B_ is just the letter B, for "button"
 * _y_ is the number of buttons

 example: to create a profile for games with only one player, that use a joystick and have 2 buttons:  JOYSTICK1_B2.xml
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Chris Newton</dc:creator><pubDate>Sun, 23 Aug 2020 05:35:20 -0000</pubDate><guid>https://sourceforge.net4acab594e7e946e1b1cc29860c37c2b558c8b530</guid></item></channel></rss>