Key Assignments

SAMPLE ENCODER KEY ASSIGNMENTS

NEWS

15 Oct 04 - After much consideration, I have decided not to revise this page as part of the general update to my encoder section.   (I did update the introduction).   I think the original issue has merit, but adding sections for the new encoders would not be worth the time involved.  Here is what is missing:
MAMI30 - (IMHO, this encoder does not offer the value (price-wise) of either the I-PAC VE or the KeyWiz)  This encoder would be similar to an X-Arcade PCB with two additional inputs in terms of number of games supported.  Note that the encoder is not programmable and does not support shift functions.
I-PAC VE - Basically, you have the same number of inputs as a KeyWiz and the same limitations as the other I-PAC encoders.   Of note is that 4-player 4-button games cannot be supported because of the way the shift function is implemented.  Otherwise, key assignments would be a mixture of what I recommend for the KeyWiz with the I-PAC/2 recommendations to avoid flashing LED's.
Lupine Systems 64-input Encoder - Despite the name, this is a 60-input encoder (four inputs are duplicated).  Frankly, if you need a chart to tell you how to combine inputs with a 60-input encoder, you have too many inputs. 

INTRODUCTION

This page has three purposes:

Generally, each encoder will have up to three (or more) sample key assignments - a universal assignment (with Start buttons) which should work for all programs, a MAME specific assignment (without Start buttons), and a maximum assignment (with things like shifted coin inputs).

The goal here is not to specify a key assignment that you HAVE to use, but rather to provide suggestions for key assignments that will work well for the majority of encoder users.

NOTE:  I also want to point out that the goal of this page is to point out INPUTS that may be combined to get the maximum utility out of your encoder.  For example, 2B5, 3B3, 4Left, can all be assigned to the same button for a 4-player, 2-button mode encoder setup.  Key points are that I am not telling you what KEY the encoder should send for 2B5, nor which button on your CP should share these inputs, nor (in most cases) which terminal on the encoder should be used for this button (except in specialized cases or to avoid confusion).

CONSIDERATIONS

Also, I have not included extra Shift inputs, because of the possibility of these being activated accidentally.  As always, I still recommend that unused shiftable keys be assigned the same value whether shifted or unshifted, to prevent unexpected results.

I will sometimes specify encoder terminal numbers as these can make a difference on encoder function (flashing LED's on the I-PAC and ButtonBox, for example).

NOTE:  I am only specifying input types.  I am not going to say P4B1 should be "U" or whatever.  And feel free to make any changes to the layouts for your particular preferences.

MECHANICAL ROTARY JOYSTICKS - (Optical rotary joysticks don't require any more inputs than a standard joystick).  These are either Happ mechanical rotaries or SNK LS-30 (Ikari original) joysticks using Druin's rotary interface.  These require two inputs (CW and CCW) per joystick.  Originally I planned to include support for these but it would have gotten too complicated, with all the different choices for connection options.  I did account for them on the MK64 encoder which supports these joysticks without a separate interface board, and I make the following general suggestions here:

HYBRID MODE - I will use the I-PAC/2 as an example.   The I-PAC/2 has four inputs for Start and/or Coin.  Typically I refer to Universal Mode as having both inputs (START1, START2,COIN1,COIN2) and MAME Mode as not using Start Inputs (Coin1, Coin2, Coin3, Coin4) as shown here.   However, it is possible to combine these into a hybrid mode with two inputs doing double duty as: (Coin1, Coin2, Start1/Coin3, Start2/Coin4).  This gives you the flexibility that your encoder can be used with either games, but it is awkward because if you play a 4-player game normally with this method, you will be inserting coins for Player 3 when you press Start1.  For this reason, I have not included it in the examples.

Finally, you might want to compare all the examples.   I have tried to be pretty comprehensive, but I might have a shortcut for one encoder that you want to use for your encoder.

QUICK LINKS

Click any of the following links to jump to the appropriate section: Gamepad Hack, AKI Analog Kontrol Interface, Keyboard Hack, Hagstrom KE18, Hagstrom LP24/KE24, MAMI 24, ButtonBox, I-PAC/2, X-Arcade PCB, KeyWiz, Hagstrom KE-USB36, MAMI 48, I-PAC/4 (52-Input), I-PAC/4 (56-Input), MK64, Hagstrom KE-72, KE-72T.

GAMEPAD HACK/AKI Analog Kontrol Interface

Basically, there aren't many options here.  It is assumed that you will use multiple gamepad hacks, with one gamepad hack per player.   Each pad would then have P1Up, P1Down, P1Left, P1Right, P1 Buttons 1 through 6, Coin, Start, Pause, and Escape.  The controls will automatically shift to Joystick 2 controls if a second one is connected.

KEYBOARD HACK

General

For this example, I stole my DR-104Key matrix from the keyboard hacks page, re-worked it to support 4-player 2-button games and 3-player 3-button games, and included it below.  Hopefully this will ease some confusion.  A few things to note:

I have stated before that most keyboards use a 16x8 matrix.   Some will use less like a 15x9 or 14x10, but these should be avoided.  As you can see below, the DR-104Key uses an 18x8 Key menu, but two of the rows only have the Windows Keys so they can't be used and we end up with a 16x8 matrix, as predicted.

UPDATE:  I just realized that later versions of MAME recognize the Windows keys, so you could gain an additional two non-blocking keys by using rows 17 and 18.  However, I don't recommend this, as older MAME versions and most other programs will not support this.  Also, you can't just use the Windows Key in MAME because if you just set the FIRE button to L WIN (for example), MAME will fire a shot and freeze as the Start menu pops up, fire a shot and continue as the Start menu disappears, fire a shot and freeze . . . etc.  You can avoid this by installing either WinKey Killer 1.7 (homepage/download) or LogoLess.  Here is a comparison of the two programs (either one of which I can recommend):

Digital Research DR-104Key Example Keyboard Matrix

Looking at component side of circuit card, terminals 1-26, 1 is on same side as PC cable connector, moving left to right across the bottom edge of the keyboard encoder circuit card.  Enter is normally a reserved yellow key, but it was a logical choice for the P4 Joystick.

 

Maintenance

P1 Joystick

P1 Button

P2 Joystick

P2 Button

P3 Joystick

P3 Button

Unusable  
  P4 Joystick P4 Button    
 

19

20

21

22

23

24

25

26

 

1

E

F3

D

F4

C

 

F2

3

1

2

W

Caps Lock

S

 

X

 

F1

2

2

3

Q

Tab

A

Esc

Z

 

Tilde

1

3

4

Break

     

R Ctrl

 

L Ctrl

F5

4

5

R

T

F

G

V

B

5

4

5

6

U

Y

J

H

M

N

6

7

6

7

I

]

K

F6

Comma

 

=

8

7

8

O

F7

L

 

Period

Win Menu

F8

9

8

9

P

[

Semicolon

Apostrophe

 

/

-

0

9

10

Scroll Lock

   

L Alt

 

R Alt

 

Print Screen

10

11

 

Backspace

\

F11

Enter

F12

F9

F10

11

12

KP 7

KP 4

KP 1

Space

Num Lock

Down

Delete

 

12

13

KP 8

KP 5

KP 2

KP 0

KP /

Right

Insert

 

13

14

KP 9

KP 6

KP 3

KP Period

KP *

KP -

Page Up

Page Down

14

15

KP +

 

KP Enter

Up

 

Left

Home

End

15

16

 

L Shift

R Shift

         

16

17

 

L Win

           

17

18

   

R Win

         

18

 

19

20

21

22

23

24

25

26

 

 

P1 Up - KP 8 P2 Up - C P3 Up - W P4 Up - Backspace
P1 Down - KP 2 P2 Down - D P3 Down - S P4 Down - Enter
P1 Left - KP 3 P2 Left - F P3 Left - A P4 Left - [
P1 Right - KP 6 P2 Right - G P3 Right - Q P4 Right - 0
P1 B1 - L Ctrl P2 B1 - KP + P3 B1 - R Shift P4 B1 - KP 1
P1 B2 - L Alt P2 B2 - M P3 B2 - Period P4 B2 - I
P1 B3 - Space P2 B3 - ] P3 B3 - -  
P1 B4 - L Shift P2 B4 - L    
P1 B5 - Z P2 B5 - /    
P1 B6 - X P2 B6 - \    

Ghosting and Blocking Explanation and Concerns

Okay, let's look at Rows 6 and 14 above.  Let's say I press the M key (which is an input) and the J key (which we have not assigned as an input since it is in the same row as M).  Now I press the KP_3 key, which is in the same column (column 21) as J.  The keyboard should produce a ghost character of KP_*.   It will work the other way too, press J, M, and then KP_* and you get a ghost KP_3.   And in other rows as well: M, J, and F (row 5) generates a ghost V.

Now, if you are really sharp and up on this, you may be saying "So what?  I get a ghost KP_* input that I don't want, but if my emulator doesn't use the KP_* key, no harm, no foul, correct?"  You would be right except for two things:

Key Masking - This is difficult to explain, Dave Dribin covers it, but basically, in addition to having unwanted keys show up, you also have undetected key releases, resulting in apparent stuck keys, and

Key Blocking - Most keyboards made since 1989 do not exhibit ghost keys at all.  Instead firmware in the microcontroller recognizes the conditions where ghosting could occur and blocks the key from registering.  In this case, if we press J, M, and KP_3 we not only don't get a ghost KP_*, we don't even get the real KP_3.  In fact, any key in columns 21 and 23 will not register with J and M depressed.  This is the actual behavior of the DR-104KEY and is bad for arcade controls, except that we can avoid it by keeping only one input in each row.

HAGSTROM KE18

There is not much you can do with this encoder in direct mode:

Universal Mode - The setup below will allow you to play 1-Player 6 button games, or 2-player 2-button games with Pause and Escape (2 line entries indicate an input is used for both functions)  Pause and Escape could be replaced by P1B3 and P2B3 to support 2-player 3-button games:

1Up 1Down 1Right 1Left 1B1 1B2 1B3
2Up
1B4
2Down
1B5
2Left
1B6
2Right
2B1 2B2 Start 1 Start 2 Coin1 Coin2 Pause Escape

Mame Mode - Since this is for MAME only, we can map Pause and Esc to the P1 Directionals, and eliminate the Start Buttons, so 2-player 4-button games are supported.

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4 1B5
2B3
1B6
2B4
2B1 2B2 2Up 2Down 2Left 2Right Coin1 Coin2

HAGSTROM KE24/LP24

These encoders can be operated in a 23x1, 22x2, 21x3 up to a 12x12 matrix.  They will exhibit ghosting unless diodes are used.  I will cover the 23x1 Direct Mode and 22x2 Matrix mode without diodes.  If you don't mind using diodes, the 21x3 or 20x4 matrix modes provide more than enough inputs.

23x1 Universal Mode - This supports the standard Street Fighter Layout.  Pause and Escape are not included.  A second coin slot is not included, but you could use P2B6 for Coin 2, if any games required this (and weren't 6-button games).  I wouldn't hardwire this to the P2B6 input as it will cause problems in games that actually use Player 2 Button 6.

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4 1B5 1B6 2Up 2Down 2Left 2Right 2B1 2B2 2B3 2B4 2B5 2B6 Start1 Start2 Coin1

23x1 MAME Mode -  Actually, there generally is not much to gain from the MAME shortcuts.  We can map Pause and Esc to the P1 Directionals, and eliminate the Start Buttons, giving us two more inputs, but all this really allows us to do is add support for 3 player, 2-button games, as follows:

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4
3Up
1B5
3Down
1B6
3Right
2Up 2Down 2Left 2Right 2B1 2B2 2B3 2B4
3Left
2B5
3B1
2B6
3B2
Coin1 Coin2 Coin3

22x2 Universal Mode - Actually, I didn't come up with this myself, LuSiD from BYOAC recommended this back before the I-PAC was developed.  Since the UP and Down inputs can't be simultaneously depressed, there are no ghosting worries.  The unused 2nd-row inputs could be used for TAB and other admin functions (with ghosting).  The design supports 2-player 6-button games.  3-player games could be supported but are better done in the example below.

1Up 1Right 1B1 1B2 1B3 1B4 1B5 1B6 2Up 2Left 2B1 2B2 2B3 2B4 2B5 2B6 Start1 Start2 Coin1 Coin2 Pause Escape
1Down 1Left             2Down 2Right                        

22x2 Aggressive Mode - This design supports 3-player 4-button games, 4-player 3-button games, or 5-player 2-button games.  This is not a MAME only shortcut, the setup should work with any emulator.  Pause and Escape are discrete inputs, so no ghosting there.   If diodes are not used, you will have Start and Coin ghost inputs (example, if P4B3, 5Right, and P3B2 are all depressed, a ghost Coin 3 input will be generated).   (NOTE: Ghost inputs have been minimized by allowing Start and Coin buttons to ghost with the same player action buttons.  It would have also been preferable to use possible ghosting inputs on higher numbered inputs only (so 6-button games might be affected, but 2-button games would not); however, I ended up using all the inputs ;-).)

1Up 1Left 1B1 1B2 1B3
5B1
1B4
3B3
5Up
1B5
3Up
1B6
3Left
2Up 2Left 2B1 2B2 2B3
5B2
2B4
4B3
5Left
2B5
3B4
4Up
2B6
4Left
3B1 3B2 4B1 4B2 Pause Escape
1Down 1Right Coin1 Start1 Start5 5Down 3Down 3Right 2Down 2Right Coin2 Start2 Coin5 5Right 4Down 4Right Start3 Coin3 Start4 Coin4    

MAMI 24

Universal Mode - This supports the standard Street Fighter Layout.  Pause and Escape are not included.

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4 1B5 1B6 2Up 2Down 2Left 2Right 2B1 2B2 2B3 2B4 2B5 2B6 Start1 Start2 Coin1 Coin2

MAME Mode -  By mapping Pause and Esc to the P1 Directionals, and eliminating the Start Buttons, we add support for 3 player, 3-button games, as follows:

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4
3Up
1B5
3Down
1B6
3Right
2Up 2Down 2Left 2Right 2B1 2B2 2B3 2B4
3Left
2B5
3B2
2B6
3B3
3B1 Coin1 Coin2 Coin3

BUTTONBOX

The direct mode ButtonBox doesn't gain us anything over the MAMI 24, except that we can add Pause and Escape buttons.

Universal Mode - This supports the standard Street Fighter Layout.  To minimize unwanted LED flashing, I recommend setting the Start1 button to Input B25 (NumLock LED), the Start2 button to  Input B26 (Caps Lock LED), and leaving Input B27 Open (Scroll Lock LED).

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4 1B5 1B6 2Up 2Down 2Left 2Right 2B1 2B2 2B3 2B4 2B5 2B6 Start1 Start2 Coin1 Coin2 Pause Escape Open

MAME Mode - By eliminating the Start Buttons, we add support for 3-player, 3-button games, as follows:   (Again, to minimize unwanted LED flashing, I recommend setting the the Start1 button to Input B25 (NumLock LED), the Start2 button to  Input B26 (Caps Lock LED), and leaving Input B27 Open (Scroll Lock LED).

1Up 1Down 1Right 1Left 1B1 1B2 1B3 1B4
3Up
1B5
3Down
1B6
3Right
2Up 2Down 2Left 2Right 2B1 2B2 2B3 2B4
3Left
2B5
3B2
2B6
3B3
3B1 Coin1 Coin2 Coin3 Pause Escape Open

I-PAC/2, J-PAC, Mini-PAC, X-ARCADE PCB

Since these share the same number of inputs, they are connected in virtually the same way.  Of course, the X-Arcade PCB does not have these terminal numbers and does not need to worry about flashing LED's.  Also the I-PAC/2 can use Shift functions for Pause and Escape, which the X-Arcade cannot.  As always, I recommend that non-shifted inputs be programmed to send the same value when unshifted and shifted to avoid unexpected results in the case of an accidental shifted button press.

Universal Mode - This is the standard Street Fighter set-up with Pause and Escape added.  It is almost too simplistic to show, except that I wanted to show how to place the inputs to avoid flashing the LED's except on Escape.

Terminal Input Terminal Input Terminal Input Terminal Input
Start1 Start1 1 Right 1Right 1 BT7 (NumLock) Open 2 BT2 2B2
Start2 Start2 1 BT1 1B1 1 BT8 (CapsLock) Open 2 BT3 2B3
Coin1 Coin1 1 BT2 1B2 2 Up 2Up 2 BT4 2B4
Coin2 Coin2 1 BT3 1B3 2 Down 2Down 2 BT5 2B5
1 Up 1Up 1 BT4 1B4 2 Left 2Left 2 BT6 2B6
1 Down 1Down 1 BT5 1B5 2 Right 2Right 2 BT7 (ScrLock) Escape
1 Left 1Left 1 BT6 1B6 2 BT1 2B1 2 BT8 Pause

MAME Mode - This mode supports 3-Player 4-button games and 4-player 2-button games.   Start Buttons, Pause and Escape are not available, but for the I-PAC/2, they can be accessed through its Shift Function.  After much thought, I came up with what I consider a simple and elegant solution for the flashing LED's problem.  The way the LED's worked on an actual arcade game was that they would flash above (or inside, Atari Volcano buttons) the appropriate START button when enough credits had been entered to start a game.  Most people mount the LED's above the P1 and P2 Start buttons.  So by mapping the LED drivers to these buttons, for example, the NUMLOCK LED will flash when P1 Start is depressed, but for a game which uses the LED's it will already be flashing anyway.   The way I set this up, the SCRLOCK LED will flash when Coin 2 is pressed, but you may not be using a Coin 2 slot or a SCRLOCK LED, and in any case, this is about the least obtrusive location.

UPDATE:  I remembered later that this setup does not have Start Inputs, but mapping the LED drivers to the Coin inputs is almost as good.

Terminal Input Terminal Input Terminal Input Terminal Input
Start1 3Up 1 Right 1Right 1 BT7 (NumLock) Coin1 2 BT2 2B2
Start2 3Down 1 BT1 1B1 1 BT8 (CapsLock) Coin2 2 BT3 2B3, 4Up
Coin1 Coin3 1 BT2 1B2 2 Up 2Up 2 BT4 2B4, 4Down
Coin2 3Right 1 BT3 1B3, 4B1 2 Down 2Down 2 BT5 2B5, 3B3, 4Left
1 Up 1Up 1 BT4 1B4, 4B2 2 Left 2Left 2 BT6 2B6, 3B4, 4Right
1 Down 1Down 1 BT5 1B5, 3B1 2 Right 2Right 2 BT7 (ScrLock) Coin4
1 Left 1Left 1 BT6 1B6, 3B2 2 BT1 2B1 2 BT8 3Left

KEYWIZ (KeyWiz ECO, KeyWiz STD, KeyWiz MAX, KeyWiz MAX 1.5)

The KeyWiz is handled slightly differently because of it's unique shift key function.  By using shifted keys in Stealth mode, it is possible to have a single button activate a shifted input rather than a standard input.   Because of this, several shift keys can be utilized without having to remember a bunch of different key combinations.  (See this page for a discussion of shift keys and the KeyWiz Stealth Mode).  And the shifted keys are recognized by any program.  So instead of eliminating Start keys to make room for more inputs in a configuration that only works in MAME, the KeyWiz allows the Start Keys to be assigned as shifted inputs in any program, with a few conflicts, as described below.

Special Considerations - The KeyWiz firmware prevents P1 Up and P1 Down from registering at the same time.  Also, none of the directionals can be programmed  to send a shifted input.  The P1 Left and P1 Right inputs by default switch between the standard and custom codesets, but that can be disabled (if desired) as shown here.  However, because of all of the above reasons, I highly recommend that the Joystick Directionals not be mapped to other inputs.  Also, as always, I recommend that non-shifted inputs be programmed to send the same value when unshifted and shifted to avoid unexpected results in the case of an accidental shifted button press.

4-Player 2-Button Mode - This mode supports 4-player 2-button games and 3-player 4-button games.  Basically, this is the same configuration as the I-PAC/2 in MAME mode above, except that it includes all Coin and Start buttons, as well as shifted Pause and Escape inputs, so it works with all programs. Pause and Escape are stealth-shifted Start 4 and Coin 4, but since nothing else is shifted, the only possible problem is in a 4-player game, if someone pauses the game at the same time the P4Start button is pressed, the game ends.  HINT:  If you kick in a bunch of Player 4 credits before starting a 4-player game, there should never be a reason to add another Coin 4 input, and little chance of accidentally ending the game:-).

Terminal Input Shifted Input Terminal Input Shifted Input Terminal Input Shifted Input
U (P1) 1Up N/A 4 1B4, 4B2   G 3Right  
D (P1) 1Down N/A 5 1B5, 3B1   H 3Left  
L (P1) 1Left Default Codeset 6 1B6, 3B2   I Start1  
R (P1) 1Right Custom Codeset 7 3Up   J Start2  
U (P2) 2Up N/A 8 3Down   K Start3  
D (P2) 2Down N/A A 2B1   L Coin1  
L (P2) 2Left N/A B 2B2   M Coin2  
R (P2) 2Right N/A C 2B3, 4Up   N Start4 Pause
1 1B1   D 2B4, 4Down   O Coin3  
2 1B2   E 2B5, 3B3, 4Left   P Coin4 Escape
3 1B3, 4B1   F 2B6, 3B4, 4Right  

4-Player 3-Button Mode - This adds support for 4-player 3-button games, while still supporting 3-Player 4-button games.   This is probably the best trade-off for the KeyWiz as it supports 99% of MAME games. This setup has Coin 1, Coin 2 and Pause and Escape as primary Inputs, with stealth-shifted inputs for Coin 3, Coin 4 and Start 1-4.  The only real conflicts are you could end up with extra credits accidentally.  For example, if any player presses a start button or Player 3 or 4 press a coin button, and Player3 Button 3 is depressed, a Player 3 credit will occur instead of the desired action button, etc.  This should happen infrequently, and therefore is not a major concern.

Terminal Input Shifted Input Terminal Input Shifted Input Terminal Input Shifted Input
U (P1) 1Up N/A 4 1B4, 4B2 Start4 G 3Right  
D (P1) 1Down N/A 5 1B5, 4Up   H 3Left  
L (P1) 1Left Default Codeset 6 1B6, 4Down   I 3B1  
R (P1) 1Right Custom Codeset 7 3Up   J 3B2 Start 3
U (P2) 2Up N/A 8 3Down   K 3B3 Coin 3
D (P2) 2Down N/A A 2B1   L Coin1  
L (P2) 2Left N/A B 2B2   M Coin2  
R (P2) 2Right N/A C 2B3   N 3B4, 4B1  
1 1B1   D 2B4, 4B3 Coin4 O Pause Start1
2 1B2   E 2B5, 4Left   P Escape Start 2
3 1B3   F 2B6, 4Right  

5-Player 2-Button Mode - Here we add support for 5-Player 2-button games in addition to those supported above.  We still keep Pause and Escape as primary Inputs, with stealth-shifted inputs for Coin 1-5 and Start 1-5.  Again, the only real conflicts are you could end up with extra credits accidentally, as mentioned above.

Terminal Input Shifted Input Terminal Input Shifted Input Terminal Input Shifted Input
U (P1) 1Up N/A 4 1B4, 4B2 Start4 G 3Right  
D (P1) 1Down N/A 5 1B5, 4Up   H 3Left  
L (P1) 1Left Default Codeset 6 1B6, 4Down Start1 I 3B1  
R (P1) 1Right Custom Codeset 7 3Up   J 3B2 Start 3
U (P2) 2Up N/A 8 3Down   K 3B3, 5Right Coin 3
D (P2) 2Down N/A A 2B1   L 5B1 Start5
L (P2) 2Left N/A B 2B2   M 5B2 Coin5
R (P2) 2Right N/A C 2B3, 5Down   N 3B4, 4B1  
1 1B1   D 2B4, 4B3, 5Left Coin4 O Pause Coin1
2 1B2   E 2B5, 4Left   P Escape Coin2
3 1B3, 5Up   F 2B6, 4Right Start2

4-Player 4-Button Mode - This is the most aggressive KeyWiz set-up and supports 4-Player 4-Button games, as well as the other setups shown above.  This requires all Coin and Start Inputs and Pause and Escape to be stealth-shifted.  This is bad as Pause and Escape could be accidentally activated, ending a game.  However, Pause and Escape are shifted P3B4 and P4B4 inputs, so only a problem for 4-player 4-button games (or accidental presses).    A workaround is to create a custom codeset identical to the one below, but without Pause and Escape as shifted inputs for Players 3 and 4 Buttons 4, and load this from a batch file before starting a 4-Player 4-Button games.  Then (in MAME, at least), you could define an unlikely key combination to use to Exit or Pause the game.

Terminal Input Shifted Input Terminal Input Shifted Input Terminal Input Shifted Input
U (P1) 1Up N/A 4 1B4 Coin1 G 3Right  
D (P1) 1Down N/A 5 1B5, 4Up   H 3Left  
L (P1) 1Left Default Codeset 6 1B6, 4Down Start1 I 3B1  
R (P1) 1Right Custom Codeset 7 3Up   J 3B2 Start3
U (P2) 2Up N/A 8 3Down   K 3B3, 5Right Coin3
D (P2) 2Down N/A A 2B1   L 5B1, 4B2 Start5
L (P2) 2Left N/A B 2B2   M 5B2, 4B3 Coin5
R (P2) 2Right N/A C 2B3, 5Down   N 4B1 Coin4
1 1B1   D 2B4, 5Left Coin2 O 3B4 Pause
2 1B2   E 2B5, 4Left Start4 P 4B4 Escape
3 1B3, 5Up   F 2B6, 4Right Start2

HAGSTROM KE-USB36

The Hagstrom KE-USB36 charts will bear much similarity to the KeyWiz charts above.  Despite having four additional inputs, the lack of shifted inputs makes this encoder almost (but not quite) as useful as the KeyWiz.

4-Player 2-Button Universal Mode - This mode supports 4-player, 2-button games and 3-player 4-button games with all coin and Start inputs, plus Pause and Escape.

Terminal Input Terminal Input Terminal Input Terminal Input
1 1Up 10 1B6, 4Down 19 2B5, 3B3, 4Left 28 Escape
2 1Down 11 2Up 20 2B6, 3B4, 4Right 29 Start1
3 1Left 12 2Down 21 3Up 30 Start2
4 1Right 13 2Left 22 3Down 30 Start3
5 1B1 14 2Right 23 3Left 32 Start4
6 1B2 15 2B1 24 3Right 33 Coin1
7 1B3 16 2B2 25 3B1 34 Coin2
8 1B4, 4B1 17 2B3 26 3B2 35 Coin3
9 1B5, 4Up 18 2B4, 4B2 27 Pause 36 Coin4

4-Player 3-Button, MAME Mode - This mode supports 4-player, 3-button games and 3-player 4-button games.  There are two different configurations depending on two of the inputs.  The blue inputs allow all coin and start inputs, but no Pause or Escape inputs.  For MAME only, it might be possible to map these inputs to the Joystick directionals, as shown here.  The red inputs allow Start Inputs for Player 1 and 2, all coin inputs, and Pause and Escape inputs.  This is useable for all emulators for 2-player games.  For 3 and 4-player games, in MAME, it is possible to use this configuration and eliminate the Start Inputs as shown here.

Terminal Input Terminal Input Terminal Input Terminal Input
1 1Up 10 1B6, 4Down 19 2B5, 4Left 28 3B4, 4B1
2 1Down 11 2Up 20 2B6, 4Right 29 Start1
3 1Left 12 2Down 21 3Up 30 Start2
4 1Right 13 2Left 22 3Down 30 Start3 or Pause
5 1B1 14 2Right 23 3Left 32 Start4 or Escape
6 1B2 15 2B1 24 3Right 33 Coin1
7 1B3 16 2B2 25 3B1 34 Coin2
8 1B4, 4B2 17 2B3 26 3B2 35 Coin3
9 1B5, 4Up 18 2B4, 4B3 27 3B3 36 Coin4

5-Player 2-Button, MAME Mode - This mode adds support for 5-player, 2-button games.  Escape is available, but Pause is not and Start buttons are not, so you must use the workarounds described here.   (It may be possible to wire a button to the directionals for Pause as shown here.)

Terminal Input Terminal Input Terminal Input Terminal Input
1 1Up 10 1B6, 4Down 19 2B5, 4Left 28 3B4, 4B1
2 1Down 11 2Up 20 2B6, 4Right 29 5B1
3 1Left 12 2Down 21 3Up 30 5B2
4 1Right 13 2Left 22 3Down 30 Coin5
5 1B1 14 2Right 23 3Left 32 Escape
6 1B2 15 2B1 24 3Right 33 Coin1
7 1B3, 5Up 16 2B2 25 3B1 34 Coin2
8 1B4, 4B2 17 2B3, 5Down 26 3B2 35 Coin3
9 1B5, 4Up 18 2B4, 4B3, 5Left 27 3B3, 5Right 36 Coin4

4-Player 4-Button, MAME Mode - This mode adds support for 4-player, 4-button games.  Start buttons are not available, so you must use the workarounds described here.  Pause and Escape are not available, but it may be possible to wire buttons to the directionals for these inputs as shown here.

Terminal Input Terminal Input Terminal Input Terminal Input
1 1Up 10 1B6, 4Down 19 2B5, 4Left 28 3B4
2 1Down 11 2Up 20 2B6, 4Right 29 5B1
3 1Left 12 2Down 21 3Up 30 5B2
4 1Right 13 2Left 22 3Down 30 4B4, Coin5
5 1B1 14 2Right 23 3Left 32 4B1
6 1B2 15 2B1 24 3Right 33 Coin1
7 1B3, 5Up 16 2B2 25 3B1 34 Coin2
8 1B4 17 2B3, 5Down 26 3B2 35 Coin3
9 1B5, 4Up 18 2B4, 5Left 27 3B3, 5Right 36 Coin4

MAMI 48

5-Player 3-Button Universal Mode - The MAMI 48 will support up to 4-Player 4-Button games with no shared inputs and 5-Player 3-Button games with Pause, Escape, and all Start and Coin inputs.

Terminal Input Terminal Input Terminal Input Terminal Input
S1 1Right S13 2Right S25 3Right S37 4B1
S2 1Left S14 2Left S26 3Left S38 4B2
S3 1Up S15 2Up S27 3Up S39 4B3
S4 1Down S16 2Down S28 3Down S40 4B4
S5 1B1 S17 2B1 S29 3B1 S41 Coin1
S6 1B2 S18 2B2 S30 3B2 S42 Coin2
S7 1B3 S19 2B3 S31 3B3 S43 Coin3
S8 1B4, 5B1 S20 2B4, 5B2 S32 3B4, 5B3 S44 Coin4
S9 1B5, 5Up S21 2B5, 5Left S33 4Right S45 Start1
S10 1B6, 5Down S22 2B6, 5Right S34 4Left S46 Start2
S11 Pause S23 Coin 5 S35 4Up S47 Start3
S12 Escape S24 Start 5 S36 4Down S48 Start4

6-Player 2-Button MAME Mode - Adding support for 6-player 2-button games presents two options similar to what we found with the KE-USB36.  The blue inputs allow all coin inputs and Start Inputs but no Pause or Escape inputs.  For MAME, it might be possible to map these inputs to the Joystick directionals, as shown here.   The red inputs allow Start Inputs for Players 1 through 4, all coin inputs, and Pause and Escape inputs.  This is useable for all emulators for 4-player games.  For 5 and 6-player games, in MAME, it is possible to use this configuration and eliminate the Start Inputs as shown here.

Terminal Input Terminal Input Terminal Input Terminal Input
S1 1Right S13 2Right S25 3Right S37 4B1
S2 1Left S14 2Left S26 3Left S38 4B2
S3 1Up S15 2Up S27 3Up S39 4B3, 6Right
S4 1Down S16 2Down S28 3Down S40 4B4, 6B2
S5 1B1 S17 2B1 S29 3B1 S41 Coin1
S6 1B2 S18 2B2 S30 3B2 S42 Coin2
S7 1B3, 6Up S19 2B3, 6Down S31 3B3, 6Left S43 Coin3
S8 1B4, 5B1 S20 2B4, 5B2 S32 3B4, 5B3, 6B1 S44 Coin4
S9 1B5, 5Up S21 2B5, 5Left S33 4Right S45 Start1
S10 1B6, 5Down S22 2B6, 5Right S34 4Left S46 Start2
S11 Pause or Start5 S23 Coin5 S35 4Up S47 Start3
S12 Escape or Start6 S24 Coin6 S36 4Down S48 Start4

6-Player 3-Button MAME Mode - Adding support for 6-player 3-button games the MAMI 48 supports all coin inputs, but no Start buttons, nor Pause and Escape.  For MAME only, it might be possible to map the Pause and Escape inputs to the Joystick directionals, as shown here.   It will also be necessary to eliminate the Start Inputs, as shown here.

Terminal Input Terminal Input Terminal Input Terminal Input
S1 1Right S13 2Right S25 3Right S37 4B1
S2 1Left S14 2Left S26 3Left S38 4B2
S3 1Up S15 2Up S27 3Up S39 4B3
S4 1Down S16 2Down S28 3Down S40 4B4, 6B3
S5 1B1 S17 2B1 S29 3B1 S41 Coin1
S6 1B2 S18 2B2 S30 3B2 S42 Coin2
S7 1B3 S19 2B3 S31 3B3 S43 Coin3
S8 1B4, 5B1 S20 2B4, 5B2 S32 3B4, 5B3 S44 Coin4
S9 1B5, 6Up S21 2B5, 6Left S33 4Right S45 Coin5
S10 1B6, 6Down S22 2B6, 6Right S34 4Left S46 Coin6
S11 5Up S23 5Left S35 4Up S47 6B1
S12 5Down S24 5Right S36 4Down S48 6B2

I-PAC/4 (52-Input)

I decided to do some 52-Input charts for the I-PAC in case users wanted to incorporate Druin's rotary interface with this encoder.  This leaves four inputs available for the interface.  These charts would also work for the MK64 with mechanical rotary joysticks connected.  As explained in the I-PAC/2 Section, I have chosen the inputs to minimize flashing of the LED's.

5-Player 3-Button Universal Mode - This mode supports 5-Player 2-button and 4-Player 4-button games with no shared inputs other than P5 Coin and Start.  All Coin and Start Buttons are supported, as are Pause and Escape.

Terminal Input Terminal Input Terminal Input Terminal Input
Start1 5Up 1 BT7 (NumLock) Start1 Start3 Start3 3 BT7 5B1
Start2 5Down 1 BT8 (CapsLock) Start2 Start4 Start4 3 BT8 5B2
Coin1 Coin1 2 Up 2Up Coin3 Coin3 4 Up 4Up
Coin2 Coin2 2 Down 2Down Coin4 Coin4 4 Down 4Down
1 Up 1Up 2 Left 2Left 3 Up 3Up 4 Left 4Left
1 Down 1Down 2 Right 2Right 3 Down 3Down 4 Right 4Right
1 Left 1Left 2 BT1 2B1 3 Left 3Left 4 BT1 4B1
1 Right 1Right 2 BT2 2B2 3 Right 3Right 4 BT2 4B2
1 BT1 1B1 2 BT3 2B3 3 BT1 3B1 4 BT3 4B3
1 BT2 1B2 2 BT4 2B4 3 BT2 3B2 4 BT4 4B4, Coin5
1 BT3 1B3 2 BT5 2B5 3 BT3 3B3 4 BT5 Open
1 BT4 1B4 2 BT6 2B6, Start5 3 BT4 3B4, 5B3 4 BT6 Open
1 BT5 1B5 2 BT7 (ScrLock) Pause 3 BT5 5Left 4 BT7 Open
1 BT6 1B6 2BT8 Escape 3 BT6 5Right 4 BT8 Open

6-Player 3-Button MAME Mode - Adding support for 6-player 3-button games presents two options similar to what we found with the KE-USB36.  The blue inputs allow all coin inputs and Start Inputs for Players 1 through 4, but no Pause or Escape inputs.   The I-PAC's shift function can be used for Pause and Escape, or for MAME only, it might be possible to map these inputs to the Joystick directionals, as shown here.  The red inputs allow Start Inputs for Players 1 and 2, all coin inputs, and Pause and Escape inputs.  This is useable for all emulators for 2-player games.  For 3 though 6-player games, in MAME, it is possible to use this configuration and eliminate the Start Inputs as shown here.

Terminal Input Terminal Input Terminal Input Terminal Input
Start1 5Up 1 BT7 (NumLock) Start1 Start3 Start3 or Pause 3 BT7 5B1
Start2 5Down 1 BT8 (CapsLock) Start2 Start4 Start4 or Escape 3 BT8 5B2
Coin1 Coin1 2 Up 2Up Coin3 Coin3 4 Up 4Up
Coin2 Coin2 2 Down 2Down Coin4 Coin4 4 Down 4Down
1 Up 1Up 2 Left 2Left 3 Up 3Up 4 Left 4Left
1 Down 1Down 2 Right 2Right 3 Down 3Down 4 Right 4Right
1 Left 1Left 2 BT1 2B1 3 Left 3Left 4 BT1 4B1
1 Right 1Right 2 BT2 2B2 3 Right 3Right 4 BT2 4B2
1 BT1 1B1 2 BT3 2B3 3 BT1 3B1 4 BT3 4B3
1 BT2 1B2 2 BT4 2B4, 6B1 3 BT2 3B2 4 BT4 4B4, 6B3
1 BT3 1B3 2 BT5 2B5, 6Left 3 BT3 3B3 4 BT5 Open
1 BT4 1B4, 5B3 2 BT6 2B6, 6Right 3 BT4 3B4, 6B2 4 BT6 Open
1 BT5 1B5, 6Up 2 BT7 (ScrLock) Coin6 3 BT5 5Left 4 BT7 Open
1 BT6 1B6, 6Down 2BT8 Coin5 3 BT6 5Right 4 BT8 Open

I-PAC/4 (56 Input)

6-Player 3-Button Universal Mode - This supports up to 5-Player 3-button games with no shared inputs and 6-Player 3-button games with all Coin, Start, Pause, and Escape Inputs.  As explained in the I-PAC/2 Section, I have chosen the inputs to minimize flashing of the LED's.

Terminal Input Terminal Input Terminal Input Terminal Input
Start1 5Up 1 BT7 (NumLock) Start1 Start3 Start3 3 BT7 5B1
Start2 5Down 1 BT8 (CapsLock) Start2 Start4 Start4 3 BT8 5B2
Coin1 Coin1 2 Up 2Up Coin3 Coin3 4 Up 4Up
Coin2 Coin2 2 Down 2Down Coin4 Coin4 4 Down 4Down
1 Up 1Up 2 Left 2Left 3 Up 3Up 4 Left 4Left
1 Down 1Down 2 Right 2Right 3 Down 3Down 4 Right 4Right
1 Left 1Left 2 BT1 2B1 3 Left 3Left 4 BT1 4B1
1 Right 1Right 2 BT2 2B2 3 Right 3Right 4 BT2 4B2
1 BT1 1B1 2 BT3 2B3 3 BT1 3B1 4 BT3 4B3
1 BT2 1B2 2 BT4 2B4, 6B2 3 BT2 3B2 4 BT4 4B4, Start6
1 BT3 1B3 2 BT5 2B5, 6Left 3 BT3 3B3 4 BT5 5B3
1 BT4 1B4, 6B1 2 BT6 2B6, 6Right 3 BT4 3B4, 6B3 4 BT6 Start5
1 BT5 1B5, 6Up 2 BT7 (ScrLock) Pause 3 BT5 5Left 4 BT7 Coin5
1 BT6 1B6, 6Down 2BT8 Escape 3 BT6 5Right 4 BT8 Coin6

MK64

6-Player 3-Button Universal Mode - This supports 6-Player 3-button games no shared inputs and with all Coin, Start, Pause, and Escape Inputs.  The input order is arbitrary, except that Input 00 serves as the Shift Key and only Inputs 01 to 07 can be shifted.  NOTE:  For a key mapping to use with the MK64 and mechanical rotary joysticks (using the built-in support), see the I-PAC/2 (52-input) section.

Terminal Input Terminal Input Terminal Input Terminal Input
Input 00 Start1 Input 16 2B1 Input 32 4Left Input 48 6Right
Input 01 Start2 Input 17 2B2 Input 33 4Right Input 49 6B1
Input 02 1B1 Input 18 2B3 Input 34 4B1 Input 50 6B2
Input 03 1B2 Input 19 2B4 Input 35 4B2 Input 51 6B3
Input 04 1B3 Input 20 2B5 Input 36 4B3 Input 52 Start3
Input 05 1B4 Input 21 2B6 Input 37 4B4 Input 53 Start4
Input 06 1B5 Input 22 3Up Input 38 5Up Input 54 Start5
Input 07 1B6 Input 23 3Down Input 39 5Down Input 55 Start6
Input 08 1Up Input 24 3Left Input 40 5Left Input 56 Coin1
Input 09 1Down Input 25 3Right Input 41 5Right Input 57 Coin2
Input 10 1Left Input 26 3B1 Input 42 5B1 Input 58 Coin3
Input 11 1Right Input 27 3B2 Input 43 5B2 Input 59 Coin4
Input 12 2Up Input 28 3B3 Input 44 5B3 Input 60 Coin5
Input 13 2Down Input 29 3B4 Input 45 6Up Input 61 Coin6
Input 14 2Left Input 30 4Up Input 46 6Down Input 62 Pause
Input 15 2Right Input 31 4Down Input 47 6Left Input 63 Escape

Hagstrom KE-72, KE-72T

For these and any other encoders with more inputs, see the MK64 chart, and you will have leftover inputs for TAB, F11, etc.