Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Hacking my first Keyboard  (Read 6727 times)

0 Members and 1 Guest are viewing this topic.

kgriffin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 65
  • Last login:August 31, 2002, 02:11:24 pm
  • I look nothing like Brad Pitt!
Hacking my first Keyboard
« on: August 09, 2002, 11:59:04 am »
I have acquired a NEO GEO cab and am attempting my first keyboard hack. I am going to use the existing control panel (2 - 8 way joys and 4 player buttons per joy for a total of 8). Since I don't play streetfigher games, that should be plenty of buttons.

I have taken an old HP keyboard and using KeyScan (or one of those programs) I have successfully made 16 simultaneous key strokes with no ghosting or blocking and recorded those keys. Also, none of the keys are "important" to mame (no esc, tab or anything else)

I am in the process of soldering so that I can "find" all of the keys that I recorded.

Is it safe to say that I should be ok as far as ghosting and blocking is concerned and is my math right for 2 joys and 8 buttons?

Thanks in advance for your help,

Kelly

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #1 on: August 09, 2002, 02:40:02 pm »
You could still have ghosting when 2 players are playing.

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Hacking my first Keyboard
« Reply #2 on: August 09, 2002, 02:55:07 pm »

You could still have ghosting when 2 players are playing.


I don't see how,  If keyscan shows 16 simultaneous keys recorded then 16 keys should work.

Regarding the math, you have 8 buttons and 4 switches per joystick, so 16 inputs total.

If you wanted to get fancy, the Joystick 1 Up and Down switches will never be activated at the same time, same for 1 L and R, and 2 Up and Down and 2 L and 2 R and could be intentionally allowed to ghost.  This would allow you to use a SF layout, but you would want to actually map out the matrix to do this.

See my guide at http://www.mameworld.net/emuadvice/keyhack2.html for even more info than you'd ever really want to know.
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

kgriffin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 65
  • Last login:August 31, 2002, 02:11:24 pm
  • I look nothing like Brad Pitt!
Re:Hacking my first Keyboard
« Reply #3 on: August 09, 2002, 03:01:38 pm »
Thanks Tiger-Heli....

I actually have already read your tutorial (several times) and you are the reason I have decided to hack a keyboard instead of going with the IPAC.

I think I will have just as much fun building it as I will using it, which is another reason for the keyboard hack.

I was pretty sure of the answer to my question, but I did want run it by some people in the know first.

Kelly

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Hacking my first Keyboard
« Reply #4 on: August 09, 2002, 03:11:40 pm »

Thanks Tiger-Heli....
I actually have already read your tutorial (several times) and you are the reason I have decided to hack a keyboard instead of going with the IPAC.


I'm flattered.  Did I mention that I will be buying an I-PAC when I get around to building my control panel?   NAH, I don't think we want to go there!!!!

Quote

I think I will have just as much fun building it as I will using it, which is another reason for the keyboard hack.


Sure and it works well enough for a simple controller.

Quote

I was pretty sure of the answer to my question, but I did want run it by some people in the know first.


And you got two opposite answers from people "in the know"  >:( ;)
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #5 on: August 09, 2002, 03:39:25 pm »
What you using for the keyscan?  How did you test that?

Plus your math is off.  8 buttons plus 4 joystick switchs is 12.  12 x 2 is 24, not 16.

You can still get ghosting depending on how you setup the keys.  You know why ghosting occurs?

I've had ghosting happen with just pressing 4 buttons at once before.

Now, I said when 2 players are playing at the same time.  You can get ghosting in that situation depending on the layout fairly easily.

On to quote your guide.
"First, I have not completed this myself, but I have done all everything the soldering so it should work. "  

Where's the merit then?  Especially since the next quote says you could fry the keyboard, why then trust someone who hasn't done it.

"Second, more than one person has fried their motherboard from a bad soldering job on a keyboard hack. If you are not comfortable, soldering on a printed circuit board, find someone who is. Use this procedure at your own risk and preferably test the controller on an older computer before plugging it into your brand new 1.1 GHz Thunderbird PC."

The very reason to not use a keyboard hack.

You also don't say an alternative is a gamepad hack.

"$15.00 for a keyboard, $10.00 for a multimeter, and $10.00 for a soldering iron, the total cost of $35.00 is still less than any other option. "

Well, keyboards are cheaper than that now, BUT with your quoted cost, for only $6 more you get the quality and security of an IPAC and a snap-on or craftsman screwdriver.  No need for a multimeter to test or soldering iron.

"Number of total inputs - As previously stated, a keyboard hack will allow a total of 101 separate inputs, however only probably 16 of these can be pressed simultaneously. This is more than any other option except for one of the Hagstrom controllers in matrix mode (and more than you would ever need). "
Where do you get that number?  You don't explain and you don't explain the limitations of the other products compared to this hack.  I know the IPAC can do at least that if not more.  

IPAC quote "Fast running interrupt-driven software gives much better response than a standard keyboard controller. Key debounce uses a state method for each key, no delays. "
Better response, another good reason for an encoder.

I'm sure other encoders that use scannig are simular.  I haven't done much research outside of the IPAC so I couldn't tell you.

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #6 on: August 09, 2002, 03:43:05 pm »
Tiger-heli, nothing against you.  I can argue both sides of a debate.  Just showing the alternatives facts so people can make an educated decision.  If worse comes to worse a person wouldn't like the performance of the keyboard hack and get a keyboard encoder eventually.

Why you getting the IPAC?  out of curiosity.
« Last Edit: August 09, 2002, 03:44:01 pm by SirPoonga »

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Hacking my first Keyboard
« Reply #7 on: August 09, 2002, 04:10:36 pm »
First off, this wasn't supposed to be an I-PAC vs. Keyhack thread and that's been covered many times before on the board.  I also don't want this to turn into a flame war.


What you using for the keyscan?  How did you test that?


He specifically said the keyscan or keyjammin or ghostkey programs mentioned on this site.  Any of them would do.

Quote

Plus your math is off.  8 buttons plus 4 joystick switchs is 12.  12 x 2 is 24, not 16.


He said 4 buttons per player or 8 total, not 8 buttons per player.  His math was dead on.

Quote

You can still get ghosting depending on how you setup the keys.  You know why ghosting occurs?
I've had ghosting happen with just pressing 4 buttons at once before.
Now, I said when 2 players are playing at the same time.  You can get ghosting in that situation depending on the layout fairly easily.


More likely you'll get blocking than ghosting, but keyscan will show this.  If sixteen keys are showing in keyscan, than you're golden for those keys.

Quote

On to quote your guide.
"First, I have not completed this myself, but I have done all everything the soldering so it should work. "  
Where's the merit then?  Especially since the next quote says you could fry the keyboard, why then trust someone who hasn't done it.
"Second, more than one person has fried their motherboard from a bad soldering job on a keyboard hack. If you are not comfortable, soldering on a printed circuit board, find someone who is. Use this procedure at your own risk and preferably test the controller on an older computer before plugging it into your brand new 1.1 GHz Thunderbird PC."
The very reason to not use a keyboard hack.


Maybe trust someone who hasn't tried it themself b/c I have not heard from anyone that said they tried what I said and it failed miserably, and I'm sure I would have by now.

OTOH, I mention two posts above, that I personally am going with an I-PAC, but it's for programmability and b/c I hate soldering, not b/c the keyboard hack won't work.

Quote

You also don't say an alternative is a gamepad hack.


Fair enough.  Gamepad hacks were less common two years ago when I wrote that.

Quote

"$15.00 for a keyboard, $10.00 for a multimeter, and $10.00 for a soldering iron, the total cost of $35.00 is still less than any other option. "
Well, keyboards are cheaper than that now, BUT with your quoted cost, for only $6 more you get the quality and security of an IPAC and a snap-on or craftsman screwdriver.  No need for a multimeter to test or soldering iron.


I also didn't mention that if you get a discarded keyboard, and already have a multimeter and soldering iron (lots of people building cabs would) the cost is about $10.00 max in wire and solder.

Quote

"Number of total inputs - As previously stated, a keyboard hack will allow a total of 101 separate inputs, however only probably 16 of these can be pressed simultaneously. This is more than any other option except for one of the Hagstrom controllers in matrix mode (and more than you would ever need). "
Where do you get that number?  You don't explain and you don't explain the limitations of the other products compared to this hack.  I know the IPAC can do at least that if not more.  


The standard keyboard has 101 keys which are recognized by MAME.  Later keyboard went to 104 keys with the windows and menu keys and 107 keys with the power, wake and sleep keys, but MAME can't use these.  You don't have 101 keys without ghosting, however, as I mention.  The I-PAC can't do 101 inputs, if not more.  28 inputs with no ghosting.  (Which is more than any keyhack will do!!!).  I tried to point out the pros and cons of each option.

Quote

IPAC quote "Fast running interrupt-driven software gives much better response than a standard keyboard controller. Key debounce uses a state method for each key, no delays. "
Better response, another good reason for an encoder.
I'm sure other encoders that use scannig are simular.  I haven't done much research outside of the IPAC so I couldn't tell you.


The I-PAC doesn't scan a matrix, each key is an individual input.  Matrix based encoders like the KE-72 or the keyboard encoder have to read a matrix to know which key was pressed.  This takes additional time.  I'm not sure it matters though.  Even using the keyboard directly, I've never heard anyone say "Man, I know I pressed the fire button and the enemy tank shot me before my shot went off", we're talking milliseconds and nanoseconds of response time.
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Hacking my first Keyboard
« Reply #8 on: August 09, 2002, 04:20:30 pm »
Tiger-heli, nothing against you.  I can argue both sides of a debate.  Just showing the alternatives facts so people can make an educated decision.  If worse comes to worse a person wouldn't like the performance of the keyboard hack and get a keyboard encoder eventually.

Why you getting the IPAC?  out of curiosity.

See post below, (above now!)

Partly I hate soldering.

Partly, I am making a desktop controller but I'm lazy, so there will be times when I want to just use the keyboard instead of pulling out the arcade controller.  The programability (on the fly from a batch file) of the I-PAC allows me to use the standard keyboard keys for the game and still set up any button on the controller to output those keys.

For example, with my layout, it is most convenient (and most simlar to the arcade) to have FIRE be P1Button 6 for Asteroids.  With the I-PAC, I can still have FIRE set as LCtrl in MAME, set the I-PAC to load P1B6 = LCtrl from a batch file for Asteroids, and have the I-PAC use P1B1 = LCtrl for most other games.

For example: see http://www.fraggersxtreme.com/museum/Hints/asteroid.png
 and http://www.fraggersxtreme.com/museum/Hints/1942.png

You couldn't have both of those work with default keys without a programmable keyboard


« Last Edit: August 09, 2002, 04:28:40 pm by Tiger-Heli »
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

kgriffin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 65
  • Last login:August 31, 2002, 02:11:24 pm
  • I look nothing like Brad Pitt!
Re:Hacking my first Keyboard
« Reply #9 on: August 09, 2002, 04:22:54 pm »
Wow, my first post and look what happened. Glad I could cause some excitement.

What you using for the keyscan?  How did you test that?

I spent about 2 hours using mine and several other peoples hands finding key combinations and watching the output. I actually got more than 16 key presses on several tries, but had some blocking and ghosting with them. The 16 that I decided on did not register any ghost keys, and any keys that were blocked (there were some) are not going to affect the control panel

Plus your math is off.  8 buttons plus 4 joystick switchs is 12.  12 x 2 is 24, not 16.

I have 2 8-way joys and 8 buttons. Are you sure 16 is not right?

You can still get ghosting depending on how you setup the keys.  You know why ghosting occurs?

Yes, I do. But to be honest with you, I'm not really understanding how to "look" at the matrix to eliminate possible ghosting issues, which is why I chose to leave the keyboard in tact to choose what keys I would be using. I am assuming (and we all know what that means) that if I can press EVERY button that will be used during game play at the same time, without any blocking or ghosting, I should be okay. It made sense in my head. Is that wrong? (by the way) I did use extra hands to press key combinations to simulate possible scenarios in 2 player games.

I've had ghosting happen with just pressing 4 buttons at once before.

I did too while I was finding the final keys I was going to use

Now, I said when 2 players are playing at the same time.  You can get ghosting in that situation depending on the layout fairly easily.

I am hoping that I did enough testing to prevent this, but I won't really know until I try it out. But, I do have several of the same keyboards to hack up and several old computers to try it on so I am not really concerned about "frying" anything.

To me, it seemed more of a challenge to hack a keyboard than to buy an I-PAC, and I know I will be proud of the end product because I did it this way. If I wanted to take an easy way out, I would just order an X-Arcade controller and be done with it.

kgriffin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 65
  • Last login:August 31, 2002, 02:11:24 pm
  • I look nothing like Brad Pitt!
Re:Hacking my first Keyboard
« Reply #10 on: August 09, 2002, 04:30:26 pm »
P.S. I am trying to keep the cost of my project below $100 just to see if it can be done. Now granted, I do have a large supply of keyboards and old pc's but so far I am only in the hole $75.00 and I have everything I need to complete the project. The $25 left over will be used for "cosmetic purposes". When I am done, I plan on calling it the $98.42 Mame Machine.

Tiger-Heli

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 5447
  • Last login:January 03, 2018, 02:19:23 pm
  • Ron Howard? . . . er, I mean . . . Run, Coward!!!
    • Tiger-Heli
Re:Hacking my first Keyboard
« Reply #11 on: August 09, 2002, 04:30:54 pm »

I am hoping that I did enough testing to prevent this, but I won't really know until I try it out. But, I do have several of the same keyboards to hack up and several old computers to try it on so I am not really concerned about "frying" anything.


It definitely spiced up the board!!!

One warning, even same model keyboards may use different encoder chips, so if you mess up this one, you will need to start all over in picking out keys to use. :(
It's not what you take when you leave this world behind you, it's what you leave behind you when you go. - R. Travis.
When all is said and done, generally much more is SAID than DONE.

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #12 on: August 09, 2002, 04:31:09 pm »

First off, this wasn't supposed to be an I-PAC vs. Keyhack thread and that's been covered many times before on the board.  I also don't want this to turn into a flame war.

Didn't intend it to be, just responding to what your site said.

Quote

More likely you'll get blocking than ghosting, but keyscan will show this.  If sixteen keys are showing in keyscan, than you're golden for those keys.

well then, wouldn't that be another problem one would face with a  keyboard hack?

kgriffin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 65
  • Last login:August 31, 2002, 02:11:24 pm
  • I look nothing like Brad Pitt!
Re:Hacking my first Keyboard
« Reply #13 on: August 09, 2002, 04:36:43 pm »


I am hoping that I did enough testing to prevent this, but I won't really know until I try it out. But, I do have several of the same keyboards to hack up and several old computers to try it on so I am not really concerned about "frying" anything.


It definitely spiced up the board!!!

One warning, even same model keyboards may use different encoder chips, so if you mess up this one, you will need to start all over in picking out keys to use. :(


Thanks, I will keep that in mind!

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #14 on: August 09, 2002, 04:43:54 pm »
You know you could pick up one roe two $5 gamepad hacks and not worry about ghosting or blocking.  But then you have to run windows for your OS.

kgriffin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 65
  • Last login:August 31, 2002, 02:11:24 pm
  • I look nothing like Brad Pitt!
Re:Hacking my first Keyboard
« Reply #15 on: August 09, 2002, 04:47:38 pm »
I will probably try a gamepad hack on my next project because that sounds like a good time killer as well.

Thanks for all the info guys.

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #16 on: August 09, 2002, 05:06:42 pm »
I plan on doing a USB gamepad hack for my cocktail when I get a change to work on it.  I plan on having a player 1 panel and a player 2 panel.  You could disconnect them fromt he verticle side to the horizontal side.  So in order to make them truely mobile I need a usb gamepad hack.

rampy

  • *shrug*
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2910
  • Last login:March 02, 2007, 11:32:16 am
  • ...as useless as a JPG is to Helen Keller
    • Build Your Own PVR
Re:Hacking my first Keyboard
« Reply #17 on: August 09, 2002, 08:44:02 pm »

You know you could pick up one roe two $5 gamepad hacks and not worry about ghosting or blocking.  But then you have to run windows for your OS.


IS that true? re: needing windows?  Don't most emulators in dos support a microsoft sidewinder gameport gamepad....  ?    OR am I confused,,,

Due to similiar finanical restraint as the original p;oster I snagged a pair of gamepads to hack for my mamecabinet in progress...  I'll eventually get an ipac b  ut in order to get to a "playable beta state" as soon as possible.... with limited fundage going with the 5 dollar gamepad route initially...

*Shrug* so yeah looking for clarification...


rampy

rampy

SirPoonga

  • Puck'em Up
  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 8187
  • Last login:July 04, 2025, 11:34:22 pm
  • The Bears Still Suck!
Re:Hacking my first Keyboard
« Reply #18 on: August 09, 2002, 09:18:18 pm »
I gues I was lapsing while typing.  I meant USB gamepads.

rampy

  • *shrug*
  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2910
  • Last login:March 02, 2007, 11:32:16 am
  • ...as useless as a JPG is to Helen Keller
    • Build Your Own PVR
Re:Hacking my first Keyboard
« Reply #19 on: August 09, 2002, 10:04:59 pm »
*phew* ok cool... I was hoping that was the case... (USB gamepads require window.... gameport ones like the old school sidewinder will still presumably work in DOS)


rampy