PS. I've called it 'FamiiDI' (Famicom / Wii / MIDI)!

nickmaynard wrote:

what about batsly's family midi?

I have been working on an Arduino shield for MIDI to NES / Famicom that will work with batsly's family midi ROM - the hardware is ready to go, life has just gotten in the way of finding the time to sit down and write the code:


...the shield has a MIDI IN socket and circuitry (1n914 Diode / 6n138 Optoisolator / 1x220Ω & 1x270Ω resistors) and a DB15 socket for connection to the Famicom expansion port (or for NES, add an expansion port to your NES like so, or make your own DB15 to NES controller cable, or connect through the DB15 plug on an ENIO) - the shield also has a 4021 shift register on board, so the actual code to communicate with the NES would be really simple, there is no need to try and make the Arduino struggle to match the exact timing of the NES controller port, all you have to do is set the eight bits on the shift register after every latch and just let the 4021 do its thing!

So, for compatibility with family midi, just take the standard Arduino MIDI Library, read in each byte of MIDI, and put the eight bits of that byte on to the eight Arduino pins connected to the shift register, then rinse and repeat on every latch!

This shield could just as easily act like a NES controller the way MCTRL does... there are so many possibilities! I've also found room for a Wii Nunchuk connector, so the shield could read in the Nunchuk buttons and then send them out as NES control pad button presses, or read the Nunchuk tilt data and emulate an Arkanoid paddle, or send MIDI continuous controller data, or whatever! With the extra interfacing you get through the NES expansion port as compared to the controller port, there are a lot more possibilities! Because of the potential for so many 'modes' I've also put 3 dip switches on board to allow for code that will read the state of the switches and change mode accordingly (and there is an RGB LED on board wired directly to the dip switches for quick and easy representation of the selected mode by color).

Anyway, the hardware side is done, and I can have these made for something like $8 each, just haven't made myself sit down and write the code yet... any volunteers? Any serious volunteers? smile

maniacfreakquency wrote:

are you planning these one but for de Nes Controller?

kitsch wrote:

hadn't been, but that's a great idea!

will start working on that, won't be too hard

Also, this might save you some work on a NES controller version:

http://meow-snow.blogspot.com.au/2010/0 … t-pcb.html

maniacfreakquency wrote:

smile ...and now I know exactly where to redirect people whenever I get an E-Mail asking for one of these:

133

(19 replies, posted in Commodore Computers)

http://www.go4retro.com/2013/05/22/newi … -vic-midi/

I see your "integrated" screen, and I raise you a NES Control Pad + LCD in the shape of a GameBoy! tongue

135

(33 replies, posted in Nintendo Consoles)

...or you could build your own true 'zero insertion force' connector and slot-loading mechanism like this! big_smile

http://revision3.com/tbhs/slot-loading- … tem-finale

136

(1,206 replies, posted in Nintendo Handhelds)

THIS:

yogi wrote:

Imagine a generic SoC platform that can be re-configured to a host of classic systems, at the gate level.

...somebody already imagined it three years ago:

http://www.mcc-home.com/

uXe wrote:

How about using them for 'latched' button-presses - ie. if you press the Right-Shoulder button once it will simulate the Right D-Pad being held down until you press it again to release? Like so:

X = A (Latched)
Y = B (Latched)
RIGHT SHOULDER = D-PAD RIGHT (Latched)
LEFT SHOULDER = D-PAD LEFT (Latched)

Would probably be a good idea to also have a condition where the Left / Right Shoulder buttons will 'unlatch' if the opposite shoulder button is pressed, or if the opposite direction on the D-Pad is pressed... just so you don't end up with the Left and Right directions both being held down at the same time, although maybe that would make for some nice glitches? smile

kitsch wrote:

mainly i just need to know about peoples preferred button macros for the 4 extra buttons which don't have a direct corresponding DMG button.  either program-specific, or generic macros.

How about using them for 'latched' button-presses - ie. if you press the Right-Shoulder button once it will simulate the Right D-Pad being held down until you press it again to release? Like so:

X = A (Latched)
Y = B (Latched)
RIGHT SHOULDER = D-PAD RIGHT (Latched)
LEFT SHOULDER = D-PAD LEFT (Latched)

OK, you asked for it... if you are already including support for SNES controllers, then that means you will be reading in 16 bits:

  1. B

  2. Y

  3. Select

  4. Start

  5. Up

  6. Down

  7. Left

  8. Right

  9. A

  10. X

  11. L

  12. R

  13. (None)

  14. (None)

  15. (None)

  16. (None)

With the last 4 bits essentially wasted - so why not add in support for an extra four buttons occupying those 4 bits?

A simple implementation of this would be to daisy-chain two NES controllers together (with the data-out of the second controller's shift register tied to the data-in of the first controller's shift register) and now you have 16 buttons to play with! big_smile

141

(8 replies, posted in Sega)

...buy this instead:

http://www.ebay.com/itm/390541900793

RMIT University, Melbourne Australia



http://forums.nesdev.com/viewtopic.php? … p;p=103102

144

(5 replies, posted in Nintendo Handhelds)

There's also:

http://gameboy.grantgalitz.org/