Any diode will do?
Yes, from few Amp rectifier diodes to small signal diodes, Schottky diodes, etc. I suggest to select by size and cost but not necessarily in this order

What about an LED? Would it illuminate as you pressed the button??
No, it will not - the pulse length through a diode is in the order of few hundreds nanoseconds and it is too short to cause it to light up.
Have you tried this out in a mame control panel setup?
Please PM me with a short instruction and I will test this for you.
You mentioned that the length of wire is important. This would be very important for my cab as all of the buttons and joysticks are modular. Each stick or button cluster plugs into a wall jack via CAT5 cable. The back of the wall jack runs some more CAT5 to my sidewinder joypad hacks. All in all about 3ft of cabling. With your board I could of course mount it closer to the wall jacks (probably on the back of the box) eliminating a lot of cabling.
You should not have any problems with that length. Any wiring is unique but I wouldn't expect any glitches until you reach 10ft or so.
I guess there is no need to remap buttons, etc like a keyboard controller as MAME would see this as a 8-axis, 32 button joystick with hat switch under windows. It would then be a matter of configuring all of the axes, and buttons to the correct item in MAME.
Anybody know what issues we could have with other emulators. I am only familiar (to a small degree) with MAME although I plan on adding Daphne and a ZX Spectrum emu.
Is this a generic chip that you have custom programmed?
Yes, this is a Microchip's PIC18F2550 + 200 hours of my time + hardware errata and a workaround I found for them
http://forum.microchip.com/tm.aspx?m=138617If so all it is missing for the MAME community is the ability to add optical devices such as trackballs and spinners to be a one stop solution. I doubt anybody needs 8 axes for MAME stuff but I stand to be corrected.
If you are talking about optical encoders, I have this code working but it needs a nice configuration utility to be able to set up the controller, specify movement limits, etc. I want simplicity and ease of use so I'm holding this off a bit.
Daisychaining: I take it you mean to daisy chain a complete row or column of 6 inputs?
Yes, what I meant is wire all the buttons between themselves and then bring one wire (6+6=12) altogether to the controller rather than bring 72 wires to the controller board - 2 from each button. It's purely a convenince choice.
If you have any reservations, I have absolutely no problems with returning the board/chip without any explanantions as we are all engineers and we aften fall for stuff we end up not using which is not good to anyone.